Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 406403 | Differences between
and this patch

Collapse All | Expand All

(-)Makefile.old (-97 / +61 lines)
Lines 9-29 Link Here
9
HTTP_VERSION=v1.0-61-g4898606
9
HTTP_VERSION=v1.0-61-g4898606
10
BUILDDIR=build
10
BUILDDIR=build
11
11
12
PREFIX?=/usr/local
12
# Paths
13
BINDIR?=${DESTDIR}${PREFIX}/bin
13
PREFIX?=/usr
14
INCDIR?=${DESTDIR}${PREFIX}/include/luvit
14
LIBDIR?=lib
15
LIBDIR?=${DESTDIR}${PREFIX}/lib/luvit
15
BINDIR_LUVIT?=${DESTDIR}${PREFIX}/bin
16
INCDIR_LUVIT?=${DESTDIR}${PREFIX}/include/luvit
17
LIBDIR_LUVIT?=${DESTDIR}${PREFIX}/${LIBDIR}/luvit
16
18
17
OS_NAME=$(shell uname -s)
19
OS_NAME=$(shell uname -s)
18
MH_NAME=$(shell uname -m)
20
MH_NAME=$(shell uname -m)
19
ifeq (${OS_NAME},Darwin)
21
ifeq (${OS_NAME},Darwin)
20
ifeq (${MH_NAME},x86_64)
22
ifeq (${MH_NAME},x86_64)
21
LDFLAGS=-framework CoreServices -pagezero_size 10000 -image_base 100000000
23
LDFLAGS+=-framework CoreServices -pagezero_size 10000 -image_base 100000000
22
else
24
else
23
LDFLAGS=-framework CoreServices
25
LDFLAGS+=-framework CoreServices
24
endif
26
endif
25
else ifeq (${OS_NAME},Linux)
27
else ifeq (${OS_NAME},Linux)
26
LDFLAGS=-Wl,-E
28
LDFLAGS+=-Wl,-E
27
endif
29
endif
28
# LUAJIT CONFIGURATION #
30
# LUAJIT CONFIGURATION #
29
#XCFLAGS=-g
31
#XCFLAGS=-g
Lines 35-51 Link Here
35
export Q=
37
export Q=
36
MAKEFLAGS+=-e
38
MAKEFLAGS+=-e
37
39
38
LDFLAGS+=-L${BUILDDIR} -lluvit
40
CC ?= gcc
39
LDFLAGS+=${LUADIR}/src/libluajit.a
41
40
LDFLAGS+=${UVDIR}/uv.a
42
LDFLAGS += \
41
LDFLAGS+=${YAJLDIR}/yajl.a
43
	-L${BUILDDIR} \
42
LDFLAGS+=-Wall -lm -ldl -lpthread
44
	-Wall
45
46
LIBS += \
47
	-lluajit-5.1 \
48
	-luv \
49
	-lyajl \
50
	-lhttp_parser \
51
	-lluvit -lm -ldl -lpthread -lrt
52
53
INCLUDES += \
54
	-I${PREFIX}/include/libuv \
55
	-I${PREFIX}/include/http-parser \
56
	-I${PREFIX}/include/yajl
43
57
44
ifeq (${OS_NAME},Linux)
58
ifeq (${OS_NAME},Linux)
45
LDFLAGS+= -lrt
59
LDFLAGS+= -lrt
46
endif
60
endif
47
61
48
49
LUVLIBS=${BUILDDIR}/utils.o          \
62
LUVLIBS=${BUILDDIR}/utils.o          \
50
        ${BUILDDIR}/luv_fs.o         \
63
        ${BUILDDIR}/luv_fs.o         \
51
        ${BUILDDIR}/luv_dns.o        \
64
        ${BUILDDIR}/luv_dns.o        \
Lines 67-152 Link Here
67
        ${BUILDDIR}/los.o            \
80
        ${BUILDDIR}/los.o            \
68
        ${BUILDDIR}/lhttp_parser.o
81
        ${BUILDDIR}/lhttp_parser.o
69
82
70
DEPS=${LUADIR}/src/libluajit.a \
71
     ${YAJLDIR}/yajl.a         \
72
     ${UVDIR}/uv.a             \
73
     ${HTTPDIR}/http_parser.o
74
75
all: ${BUILDDIR}/luvit
83
all: ${BUILDDIR}/luvit
76
84
77
${LUADIR}/Makefile:
85
${BUILDDIR}/%.o: src/%.c
78
	git submodule update --init ${LUADIR}
79
80
${LUADIR}/src/libluajit.a: ${LUADIR}/Makefile
81
	touch -c ${LUADIR}/src/*.h
82
	$(MAKE) -C ${LUADIR}
83
84
${YAJLDIR}/CMakeLists.txt:
85
	git submodule update --init ${YAJLDIR}
86
87
${YAJLDIR}/Makefile: deps/Makefile.yajl ${YAJLDIR}/CMakeLists.txt
88
	cp deps/Makefile.yajl ${YAJLDIR}/Makefile
89
90
${YAJLDIR}/yajl.a: ${YAJLDIR}/Makefile
91
	rm -rf ${YAJLDIR}/src/yajl
92
	cp -r ${YAJLDIR}/src/api ${YAJLDIR}/src/yajl
93
	$(MAKE) -C ${YAJLDIR}
94
95
${UVDIR}/Makefile:
96
	git submodule update --init ${UVDIR}
97
98
${UVDIR}/uv.a: ${UVDIR}/Makefile
99
	$(MAKE) -C ${UVDIR} uv.a
100
101
${HTTPDIR}/Makefile:
102
	git submodule update --init ${HTTPDIR}
103
104
${HTTPDIR}/http_parser.o: ${HTTPDIR}/Makefile
105
	${MAKE} -C ${HTTPDIR} http_parser.o
106
107
${BUILDDIR}/%.o: src/%.c ${DEPS}
108
	mkdir -p ${BUILDDIR}
86
	mkdir -p ${BUILDDIR}
109
	$(CC) --std=c89 -D_GNU_SOURCE -g -Wall -Werror -c $< -o $@ -I${HTTPDIR} -I${UVDIR}/include -I${LUADIR}/src -I${YAJLDIR}/src/api -I${YAJLDIR}/src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHTTP_VERSION=\"${HTTP_VERSION}\" -DUV_VERSION=\"${UV_VERSION}\" -DYAJL_VERSIONISH=\"${YAJL_VERSION}\" -DLUVIT_VERSION=\"${VERSION}\" -DLUAJIT_VERSION=\"${LUAJIT_VERSION}\"
87
	$(CC) $(CFLAGS) --std=c89 -D_GNU_SOURCE -Wall -Werror -c $< -o $@ ${INCLUDES} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHTTP_VERSION=\"${HTTP_VERSION}\" -DUV_VERSION=\"${UV_VERSION}\" -DYAJL_VERSIONISH=\"${YAJL_VERSION}\" -DLUVIT_VERSION=\"${VERSION}\" -DLUAJIT_VERSION=\"${LUAJIT_VERSION}\"
110
88
111
${BUILDDIR}/libluvit.a: ${LUVLIBS} ${DEPS}
89
${BUILDDIR}/libluvit.a: ${LUVLIBS}
112
	$(AR) rvs ${BUILDDIR}/libluvit.a ${LUVLIBS} ${DEPS}
90
	$(AR) rvs ${BUILDDIR}/libluvit.a ${LUVLIBS}
113
91
114
${BUILDDIR}/luvit: ${BUILDDIR}/libluvit.a ${BUILDDIR}/luvit_main.o
92
${BUILDDIR}/luvit: ${BUILDDIR}/libluvit.a ${BUILDDIR}/luvit_main.o
115
	$(CC) -g -o ${BUILDDIR}/luvit ${BUILDDIR}/luvit_main.o ${BUILDDIR}/libluvit.a ${LDFLAGS}
93
	$(CC) $(CFLAGS) ${LDFLAGS} -o ${BUILDDIR}/luvit ${BUILDDIR}/luvit_main.o ${BUILDDIR}/libluvit.a ${LIBS}
116
94
117
clean:
95
clean:
118
	${MAKE} -C ${LUADIR} clean
119
	${MAKE} -C ${HTTPDIR} clean
120
	${MAKE} -C ${YAJLDIR} clean
121
	${MAKE} -C ${UVDIR} distclean
122
	${MAKE} -C examples/native clean
96
	${MAKE} -C examples/native clean
123
	rm -rf build bundle
97
	rm -rf build bundle
124
98
125
install: all
99
install: all
126
	mkdir -p ${BINDIR}
100
	mkdir -p ${BINDIR_LUVIT}
127
	install ${BUILDDIR}/luvit ${BINDIR}/luvit
101
	install -Dm755 ${BUILDDIR}/luvit ${BINDIR_LUVIT}/luvit
128
	cp bin/luvit-config.lua ${BINDIR}/luvit-config
102
	install -Dm755 bin/luvit-config.lua ${BINDIR_LUVIT}/luvit-config
129
	chmod +x ${BINDIR}/luvit-config
103
	for i in `ls lib/luvit`; do \
130
	mkdir -p ${LIBDIR}
104
		install -Dm644 lib/luvit/$$i ${LIBDIR_LUVIT}/$$i; done
131
	cp lib/luvit/*.lua ${LIBDIR}
105
	for i in `ls src/*.h`; do \
132
	mkdir -p ${INCDIR}/luajit
106
		install -Dm644 $$i ${INCDIR_LUVIT}/$$(basename $$i); done
133
	cp ${LUADIR}/src/lua.h ${INCDIR}/luajit/
107
134
	cp ${LUADIR}/src/lauxlib.h ${INCDIR}/luajit/
108
#bundle: build/luvit-1 ${BUILDDIR}/libluvit.a
135
	cp ${LUADIR}/src/luaconf.h ${INCDIR}/luajit/
109
#	build/luvit tools/bundler.lua
136
	cp ${LUADIR}/src/luajit.h ${INCDIR}/luajit/
110
#	$(CC) --std=c89 -D_GNU_SOURCE -Wall -Werror -DBUNDLE -c src/luvit_exports.c -o bundle/luvit_exports.o -I${HTTPDIR} -I${UVDIR}/include -I${LUADIR}/src -I${YAJLDIR}/src/api -I${YAJLDIR}/src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHTTP_VERSION=\"${HTTP_VERSION}\" -DUV_VERSION=\"${UV_VERSION}\" -DYAJL_VERSIONISH=\"${YAJL_VERSION}\" -DLUVIT_VERSION=\"${VERSION}\" -DLUAJIT_VERSION=\"${LUAJIT_VERSION}\"
137
	cp ${LUADIR}/src/lualib.h ${INCDIR}/luajit/
111
#	$(CC) --std=c89 -D_GNU_SOURCE -Wall -Werror -DBUNDLE -c src/luvit_main.c -o bundle/luvit_main.o -I${HTTPDIR} -I${UVDIR}/include -I${LUADIR}/src -I${YAJLDIR}/src/api -I${YAJLDIR}/src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHTTP_VERSION=\"${HTTP_VERSION}\" -DUV_VERSION=\"${UV_VERSION}\" -DYAJL_VERSIONISH=\"${YAJL_VERSION}\" -DLUVIT_VERSION=\"${VERSION}\" -DLUAJIT_VERSION=\"${LUAJIT_VERSION}\"
138
	mkdir -p ${INCDIR}/http_parser
112
#	$(CC) -o bundle/luvit-1 ${BUILDDIR}/libluvit.a `ls bundle/*.o` ${LDFLAGS}
139
	cp ${HTTPDIR}/http_parser.h ${INCDIR}/http_parser/
113
140
	mkdir -p ${INCDIR}/uv
141
	cp ${UVDIR}/include/uv.h ${INCDIR}/uv/
142
	cp src/*.h ${INCDIR}/
143
144
145
bundle: build/luvit ${BUILDDIR}/libluvit.a
146
	build/luvit tools/bundler.lua
147
	$(CC) --std=c89 -D_GNU_SOURCE -g -Wall -Werror -DBUNDLE -c src/luvit_exports.c -o bundle/luvit_exports.o -I${HTTPDIR} -I${UVDIR}/include -I${LUADIR}/src -I${YAJLDIR}/src/api -I${YAJLDIR}/src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHTTP_VERSION=\"${HTTP_VERSION}\" -DUV_VERSION=\"${UV_VERSION}\" -DYAJL_VERSIONISH=\"${YAJL_VERSION}\" -DLUVIT_VERSION=\"${VERSION}\" -DLUAJIT_VERSION=\"${LUAJIT_VERSION}\"
148
	$(CC) --std=c89 -D_GNU_SOURCE -g -Wall -Werror -DBUNDLE -c src/luvit_main.c -o bundle/luvit_main.o -I${HTTPDIR} -I${UVDIR}/include -I${LUADIR}/src -I${YAJLDIR}/src/api -I${YAJLDIR}/src -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHTTP_VERSION=\"${HTTP_VERSION}\" -DUV_VERSION=\"${UV_VERSION}\" -DYAJL_VERSIONISH=\"${YAJL_VERSION}\" -DLUVIT_VERSION=\"${VERSION}\" -DLUAJIT_VERSION=\"${LUAJIT_VERSION}\"
149
	$(CC) -g -o bundle/luvit ${BUILDDIR}/libluvit.a `ls bundle/*.o` ${LDFLAGS}
150
114
151
test: ${BUILDDIR}/luvit
115
test: ${BUILDDIR}/luvit
152
	cd tests && ../${BUILDDIR}/luvit runner.lua
116
	cd tests && ../${BUILDDIR}/luvit runner.lua
Lines 156-181 Link Here
156
api.markdown: $(wildcard lib/*.lua)
120
api.markdown: $(wildcard lib/*.lua)
157
	find lib -name "*.lua" | grep -v "luvit.lua" | sort | xargs -l luvit tools/doc-parser.lua > $@
121
	find lib -name "*.lua" | grep -v "luvit.lua" | sort | xargs -l luvit tools/doc-parser.lua > $@
158
122
159
DIST_DIR?=${HOME}/luvit.io/dist
123
#DIST_DIR?=${HOME}/luvit.io/dist
160
DIST_NAME=luvit-${VERSION}
124
#DIST_NAME=luvit-${VERSION}
161
DIST_FOLDER=${DIST_DIR}/${VERSION}/${DIST_NAME}
125
#DIST_FOLDER=${DIST_DIR}/${VERSION}/${DIST_NAME}
162
DIST_FILE=${DIST_FOLDER}.tar.gz
126
#DIST_FILE=${DIST_FOLDER}.tar.gz
163
tarball:
127
#tarball:
164
	rm -rf ${DIST_FOLDER} ${DIST_FILE}
128
#	rm -rf ${DIST_FOLDER} ${DIST_FILE}
165
	mkdir -p ${DIST_DIR}
129
#	mkdir -p ${DIST_DIR}
166
	git clone . ${DIST_FOLDER}
130
#	git clone . ${DIST_FOLDER}
167
	cp deps/gitmodules.local ${DIST_FOLDER}/.gitmodules
131
#	cp deps/gitmodules.local ${DIST_FOLDER}/.gitmodules
168
	cd ${DIST_FOLDER} ; git submodule update --init
132
#	cd ${DIST_FOLDER} ; git submodule update --init
169
	find ${DIST_FOLDER} -name ".git*" | xargs rm -r
133
#	find ${DIST_FOLDER} -name ".git*" | xargs rm -r
170
	rm -rf ${DIST_FOLDER}/deps/zlib
134
#	rm -rf ${DIST_FOLDER}/deps/zlib
171
	sed -e 's/^VERSION=.*/VERSION=${VERSION}/' \
135
#	sed -e 's/^VERSION=.*/VERSION=${VERSION}/' \
172
            -e 's/^LUAJIT_VERSION=.*/LUAJIT_VERSION=${LUAJIT_VERSION}/' \
136
            -e 's/^LUAJIT_VERSION=.*/LUAJIT_VERSION=${LUAJIT_VERSION}/' \
173
            -e 's/^UV_VERSION=.*/UV_VERSION=${UV_VERSION}/' \
137
            -e 's/^UV_VERSION=.*/UV_VERSION=${UV_VERSION}/' \
174
            -e 's/^HTTP_VERSION=.*/HTTP_VERSION=${HTTP_VERSION}/' \
138
            -e 's/^HTTP_VERSION=.*/HTTP_VERSION=${HTTP_VERSION}/' \
175
            -e 's/^YAJL_VERSION=.*/YAJL_VERSION=${YAJL_VERSION}/' < ${DIST_FOLDER}/Makefile > ${DIST_FOLDER}/Makefile.patched
139
            -e 's/^YAJL_VERSION=.*/YAJL_VERSION=${YAJL_VERSION}/' < ${DIST_FOLDER}/Makefile > ${DIST_FOLDER}/Makefile.patched
176
	mv ${DIST_FOLDER}/Makefile.patched ${DIST_FOLDER}/Makefile
140
#	mv ${DIST_FOLDER}/Makefile.patched ${DIST_FOLDER}/Makefile
177
	tar -czf ${DIST_FILE} -C ${DIST_DIR}/${VERSION} ${DIST_NAME}
141
#	tar -czf ${DIST_FILE} -C ${DIST_DIR}/${VERSION} ${DIST_NAME}
178
	rm -rf ${DIST_FOLDER}
142
#	rm -rf ${DIST_FOLDER}
179
143
180
.PHONY: test install all api.markdown bundle tarball
144
.PHONY: test install all api.markdown bundle tarball
181
145

Return to bug 406403