@@ -5,6 +5,7 @@ cc_mips24kc_be=/toolchains/lede-sdk-17.01.2-ar71xx-generic_gcc-5.4.0_musl-1.1.16
5
5
cc_mips24kc_le =/toolchains/lede-sdk-17.01.2-ramips-mt7621_gcc-5.4.0_musl-1.1.16.Linux-x86_64/staging_dir/toolchain-mipsel_24kc_gcc-5.4.0_musl-1.1.16/bin/mipsel-openwrt-linux-musl-g++
6
6
# cc_arm= /toolchains/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabi/bin/arm-linux-gnueabi-g++ -march=armv6 -marm
7
7
cc_arm = /toolchains/arm-2014.05/bin/arm-none-linux-gnueabi-g++
8
+ cc_mingw_cross =x86_64-w64-mingw32-g++-posix
8
9
# cc_bcm2708=/home/wangyu/raspberry/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/arm-linux-gnueabihf-g++
9
10
10
11
FLAGS = -std=c++11 -Wall -Wextra -Wno-unused-variable -Wno-unused-parameter -Wno-missing-field-initializers
@@ -17,6 +18,7 @@ TARGETS=amd64 arm mips24kc_be x86 mips24kc_le
17
18
18
19
TAR =${NAME}_binaries.tar.gz ` echo ${TARGETS} | sed -r ' s/([^ ]+)/tinymapper_\1/g' ` version.txt
19
20
21
+ # targets for nativei (non-cross) compile
20
22
all :git_version
21
23
rm -f ${NAME}
22
24
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -ggdb -static -O2
@@ -40,6 +42,19 @@ mac:git_version
40
42
cygwin :git_version
41
43
rm -f ${NAME}
42
44
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -ggdb -static -O2 -D_GNU_SOURCE
45
+
46
+ # targes for general cross compile
47
+
48
+ cross :git_version
49
+ ${cc_cross} -o ${NAME} _cross -I. ${SOURCES} ${FLAGS} -lrt -O2
50
+
51
+ cross2 :git_version
52
+ ${cc_cross} -o ${NAME} _cross -I. ${SOURCES} ${FLAGS} -lrt -static -lgcc_eh -O2
53
+
54
+ cross3 :git_version
55
+ ${cc_cross} -o ${NAME} _cross -I. ${SOURCES} ${FLAGS} -lrt -static -O2
56
+
57
+ # targets only for debug purpose
43
58
fast : git_version
44
59
rm -f ${NAME}
45
60
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -ggdb
@@ -50,6 +65,18 @@ debug2: git_version
50
65
rm -f ${NAME}
51
66
${cc_local} -o ${NAME} -I. ${SOURCES} ${FLAGS} -lrt -Wformat-nonliteral -ggdb
52
67
68
+ # targets only for cross compile windows targets on linux
69
+
70
+ mingw_cross :git_version # to build this and the below one you need 'mingw-w64' installed (the cross compile version on linux)
71
+ rm -f ${NAME}
72
+ ${cc_mingw_cross} -o ${NAME} .exe -I. ${SOURCES} ${FLAGS} -ggdb -static -O2 -lws2_32
73
+
74
+ mingw_cross_wepoll :git_version # to compile you need a pacthed version of libev with wepoll backend
75
+ rm -f ${NAME}
76
+ ${cc_mingw_cross} -o ${NAME} _wepoll.exe -I. main.cpp log.cpp common.cpp fd_manager.cpp ${FLAGS} -ggdb -static -O2 -DNO_LIBEV_EMBED -D_WIN32 -lev -lws2_32
77
+
78
+ # targets only for 'make release'
79
+
53
80
mips24kc_be : git_version
54
81
${cc_mips24kc_be} -o ${NAME} _$@ -I. ${SOURCES} ${FLAGS} -lrt -lgcc_eh -static -O2
55
82
@@ -58,21 +85,14 @@ mips24kc_le: git_version
58
85
59
86
amd64 :git_version
60
87
${cc_local} -o ${NAME} _$@ -I. ${SOURCES} ${FLAGS} -lrt -static -O2
61
- x86 :git_version
88
+
89
+ x86 :git_version # to build this you need 'g++-multilib' installed
62
90
${cc_local} -o ${NAME} _$@ -I. ${SOURCES} ${FLAGS} -lrt -static -O2 -m32
63
91
arm :git_version
64
92
${cc_arm} -o ${NAME} _$@ -I. ${SOURCES} ${FLAGS} -lrt -static -O2 -ggdb
65
93
66
- cross :git_version
67
- ${cc_cross} -o ${NAME} _cross -I. ${SOURCES} ${FLAGS} -lrt -O2
68
-
69
- cross2 :git_version
70
- ${cc_cross} -o ${NAME} _cross -I. ${SOURCES} ${FLAGS} -lrt -static -lgcc_eh -O2
71
-
72
- cross3 :git_version
73
- ${cc_cross} -o ${NAME} _cross -I. ${SOURCES} ${FLAGS} -lrt -static -O2
74
94
75
- release : ${TARGETS}
95
+ release : ${TARGETS}
76
96
cp git_version.h version.txt
77
97
tar -zcvf ${TAR}
78
98
@@ -83,4 +103,3 @@ clean:
83
103
84
104
git_version :
85
105
echo " const char *gitversion = \" $( shell git rev-parse HEAD) \" ;" > git_version.h
86
-
0 commit comments