make_linux 87 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893
  1. #!/bin/bash
  2. cd "$( dirname "$0" )"
  3. export VLMCSD_VERSION=$(git describe)
  4. export VERBOSE=3
  5. export DNS_PARSER=internal
  6. MAKEFLAGS="-j200 -B"
  7. REUSEOBJFLAGS="-j200"
  8. SMALLCC="-pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
  9. SMALLLD="-pipe -Wl,--hash-style=sysv -Wl,-z,norelro -Wl,--build-id=none"
  10. SMALL="$SMALLCC $SMALLLD"
  11. rm -f vlmcs vlmcsdmulti vlmcsd 2>/dev/null
  12. rm -fr ../binaries
  13. mkdir -p ../binaries/Linux/intel/glibc
  14. mkdir -p ../binaries/Linux/intel/uclibc
  15. mkdir -p ../binaries/Linux/intel/static
  16. mkdir -p ../binaries/Linux/intel/musl
  17. mkdir -p ../binaries/Linux/sparc/glibc
  18. mkdir -p ../binaries/Linux/s390/glibc
  19. mkdir -p ../binaries/Android/arm/bionic
  20. mkdir -p ../binaries/Android/arm/static
  21. mkdir -p ../binaries/Android/intel/bionic
  22. mkdir -p ../binaries/Android/intel/static
  23. mkdir -p ../binaries/Android/mips/bionic
  24. mkdir -p ../binaries/Android/mips/static
  25. mkdir -p ../binaries/Linux/arm/little-endian/glibc
  26. mkdir -p ../binaries/Linux/arm/little-endian/musl
  27. mkdir -p ../binaries/Linux/arm/little-endian/uclibc
  28. mkdir -p ../binaries/Linux/arm/little-endian/static
  29. mkdir -p ../binaries/Linux/arm/big-endian/uclibc
  30. mkdir -p ../binaries/Linux/arm/big-endian/static
  31. mkdir -p ../binaries/Linux/mips/little-endian/glibc
  32. mkdir -p ../binaries/Linux/mips/little-endian/uclibc
  33. mkdir -p ../binaries/Linux/mips/little-endian/static
  34. mkdir -p ../binaries/Linux/mips/little-endian/musl
  35. mkdir -p ../binaries/Linux/mips/big-endian/uclibc
  36. mkdir -p ../binaries/Linux/mips/big-endian/static
  37. mkdir -p ../binaries/Linux/mips/big-endian/glibc
  38. mkdir -p ../binaries/Linux/mips/big-endian/musl
  39. mkdir -p ../binaries/Linux/ppc/little-endian/glibc
  40. mkdir -p ../binaries/Linux/ppc/big-endian/glibc
  41. mkdir -p ../binaries/Linux/ppc/big-endian/uclibc
  42. mkdir -p ../binaries/Linux/ppc/big-endian/static
  43. mkdir -p ../binaries/MacOSX/intel
  44. mkdir -p ../binaries/MacOSX/ppc
  45. mkdir -p ../binaries/iOS/arm
  46. mkdir -p ../binaries/FreeBSD/intel
  47. mkdir -p ../binaries/NetBSD/intel
  48. mkdir -p ../binaries/OpenBSD/intel
  49. mkdir -p ../binaries/DragonFly/intel
  50. mkdir -p ../binaries/Solaris/intel
  51. mkdir -p ../binaries/Windows/intel
  52. mkdir -p ../binaries/Minix/intel
  53. mkdir -p ../binaries/Hurd/intel
  54. rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  55. export STAGING_DIR=.
  56. cd ../src
  57. pwd
  58. # Windows 32-bit using MingW32-w64 toolchain on Ubuntu Linux
  59. export CLIENT_NAME=../binaries/Windows/intel/vlmcs-Windows-x86-gcc.exe
  60. export PROGRAM_NAME=../binaries/Windows/intel/vlmcsd-Windows-x86-gcc.exe
  61. export MULTI_NAME=../binaries/Windows/intel/vlmcsdmulti-Windows-x86-gcc.exe
  62. export DLL_NAME=../binaries/Windows/intel/libkms32-gcc.dll
  63. export THREADS=1
  64. export CFLAGS="$SMALLCC"
  65. export CC=i686-w64-mingw32-gcc
  66. export PLATFORMFLAGS="-march=i686 -mtune=generic -fwhole-program -pipe"
  67. export LDFLAGS="-Wl,--gc-sections,--force-exe-suffix,--large-address-aware,--nxcompat,--dynamicbase,--tsaware,--no-seh,--disable-long-section-names"
  68. export FEATURES=full
  69. make $MAKEFLAGS CRYPTO=windows CAT=2 all $MULTI_NAME
  70. if [ $? != 0 ]; then
  71. echo Error creating $CLIENT_NAME, $MULTI_NAME and/or $PROGRAM_NAME
  72. exit $?
  73. fi
  74. export CFLAGS="$CFLAGS -flto=16 -fvisibility=hidden -DIS_LIBRARY"
  75. export LDFLAGS="$LDFLAGS -static-libgcc"
  76. #make $MAKEFLAGS CRYPTO=windows FEATURES=minimum $DLL_NAME CAT=2
  77. #
  78. #if [ $? != 0 ]; then
  79. # echo Error creating $DLL_NAME
  80. # exit $?
  81. #fi
  82. # Windows 32-bit using MingW32-w64 toolchain on Ubuntu Linux using MS RPC
  83. export CLIENT_NAME=../binaries/Windows/intel/vlmcs-Windows-msrpc-x86.exe
  84. export PROGRAM_NAME=../binaries/Windows/intel/vlmcsd-Windows-msrpc-x86.exe
  85. export MULTI_NAME=../binaries/Windows/intel/vlmcsdmulti-Windows-msrpc-x86.exe
  86. export THREADS=1
  87. export CFLAGS="-pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fmerge-all-constants -Wno-unused-variable -Wno-missing-braces"
  88. export CC=i686-w64-mingw32-gcc
  89. export PLATFORMFLAGS="-march=i686 -mtune=generic -pipe"
  90. export LDFLAGS="-Wl,--gc-sections,--force-exe-suffix,--large-address-aware,--nxcompat,--dynamicbase,--tsaware,--disable-long-section-names -fwhole-program"
  91. export FEATURES=full
  92. make $MAKEFLAGS MSRPC=1 CRYPTO=windows $CLIENT_NAME
  93. if [ $? != 0 ]; then
  94. echo Error creating $CLIENT_NAME
  95. exit $?
  96. fi
  97. #make $MAKEFLAGS MSRPC=1 CRYPTO=windows $MULTI_NAME CFLAGS="$CFLAGS -fno-lto" PLATFORMFLAGS="$PLATFORMFLAGS -fno-lto"
  98. #
  99. #if [ $? != 0 ]; then
  100. # echo Error creating $MULTI_NAME
  101. # exit $?
  102. #fi
  103. export LDFLAGS="-Wl,--gc-sections,--force-exe-suffix,--large-address-aware,--nxcompat,--dynamicbase,--tsaware,--disable-long-section-names,--no-seh -fwhole-program"
  104. make $REUSEOBJFLAGS CAT=1 MSRPC=1 CRYPTO=windows $PROGRAM_NAME
  105. if [ $? != 0 ]; then
  106. echo Error creating $PROGRAM_NAME
  107. exit $?
  108. fi
  109. # Windows 64-bit using MingW32-w64 toolchain on Ubuntu Linux
  110. export CLIENT_NAME=../binaries/Windows/intel/vlmcs-Windows-x64-gcc.exe
  111. export PROGRAM_NAME=../binaries/Windows/intel/vlmcsd-Windows-x64-gcc.exe
  112. export MULTI_NAME=../binaries/Windows/intel/vlmcsdmulti-Windows-x64-gcc.exe
  113. export DLL_NAME=../binaries/Windows/intel/libkms64-gcc.dll
  114. export THREADS=1
  115. export CFLAGS="$SMALLCC"
  116. export CC=x86_64-w64-mingw32-gcc
  117. export PLATFORMFLAGS="-march=nocona -mtune=generic -fwhole-program -pipe"
  118. export LDFLAGS="-Wl,--gc-sections,--force-exe-suffix,--nxcompat,--dynamicbase,--tsaware,--no-seh,--high-entropy-va,--disable-long-section-names"
  119. make $MAKEFLAGS CAT=2 CRYPTO=windows all $MULTI_NAME
  120. if [ $? != 0 ]; then
  121. echo Error creating $CLIENT_NAME, $MULTI_NAME and/or $PROGRAM_NAME
  122. exit $?
  123. fi
  124. export CFLAGS="$CFLAGS -flto=16 -fvisibility=hidden -DIS_LIBRARY"
  125. export LDFLAGS="$LDFLAGS -static-libgcc"
  126. #make $MAKEFLAGS CRYPTO=windows FEATURES=minimum $DLL_NAME CAT=2
  127. #
  128. #if [ $? != 0 ]; then
  129. # echo Error creating $DLL_NAME
  130. # exit $?
  131. #fi
  132. # Windows 64-bit using MingW32-w64 toolchain on Ubuntu Linux using MS RPC
  133. export CLIENT_NAME=../binaries/Windows/intel/vlmcs-Windows-msrpc-x64.exe
  134. export PROGRAM_NAME=../binaries/Windows/intel/vlmcsd-Windows-msrpc-x64.exe
  135. export MULTI_NAME=../binaries/Windows/intel/vlmcsdmulti-Windows-msrpc-x64.exe
  136. export THREADS=1
  137. export CFLAGS="-pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fmerge-all-constants -Wno-unused-variable -Wno-missing-braces"
  138. export CC=x86_64-w64-mingw32-gcc
  139. export PLATFORMFLAGS="-march=nocona -mtune=generic -pipe"
  140. export LDFLAGS="-Wl,--gc-sections,--force-exe-suffix,--nxcompat,--dynamicbase,--tsaware,--high-entropy-va,--disable-long-section-names -fwhole-program"
  141. make $MAKEFLAGS CRYPTO=windows MSRPC=1 $CLIENT_NAME # $MULTI_NAME
  142. if [ $? != 0 ]; then
  143. echo Error creating $CLIENT_NAME
  144. exit $?
  145. fi
  146. export LDFLAGS="-Wl,--gc-sections,--force-exe-suffix,--nxcompat,--dynamicbase,--tsaware,--no-seh,--high-entropy-va,--disable-long-section-names -fwhole-program"
  147. make $REUSEOBJFLAGS CAT=2 CRYPTO=windows MSRPC=1 $PROGRAM_NAME
  148. if [ $? != 0 ]; then
  149. echo Error creating $PROGRAM_NAME
  150. exit $?
  151. fi
  152. # mips1el uclibc with old tomato toolchain gcc 3.2.3 with Broadcom extensions uClibc 0.9.19
  153. export CLIENT_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcs-mips1el-tomato-uclibc
  154. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcsd-mips1el-tomato-uclibc
  155. export MULTI_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcsdmulti-mips1el-tomato-uclibc
  156. export CC=/opt/brcm/hndtools-mipsel-uclibc/bin/mipsel-uclibc-gcc
  157. export CFLAGS="-DNO_BUILTIN -DNO_LIMIT -pipe -fno-common -fno-exceptions -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
  158. export PLATFORMFLAGS=""
  159. export LDFLAGS="-fwhole-program -Wl,-z,norelro"
  160. export THREADS=0
  161. #export TERMINAL_WIDTH=80
  162. make $MAKEFLAGS GETIFADDRS=musl NO_DNS=1 SAFE_MODE=1 allmulti
  163. if [ $? != 0 ]; then
  164. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  165. exit $?
  166. fi
  167. export CLIENT_NAME=../binaries/Linux/mips/little-endian/static/vlmcs-mips1el-tomato-uclibc-static
  168. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/static/vlmcsd-mips1el-tomato-uclibc-static
  169. export MULTI_NAME=../binaries/Linux/mips/little-endian/static/vlmcsdmulti-mips1el-tomato-uclibc-static
  170. export LDFLAGS="$LDFLAGS -static"
  171. make NO_DNS=1 SAFE_MODE=1 GETIFADDRS=musl $REUSEOBJFLAGS allmulti
  172. if [ $? != 0 ]; then
  173. echo Error creating $MULTI_NAME
  174. exit $?
  175. fi
  176. # Linux mips32el with uClibc 0.9.33.2 using gcc 4.9 from OpenWRT toolchain
  177. export CLIENT_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcs-mips32el-openwrt-uclib
  178. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcsd-mips32el-openwrt-uclibc
  179. export MULTI_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcsdmulti-mips32el-openwrt-uclibc
  180. export CC=/opt/toolchains/mipsel-openwrt-linux-uclibc/toolchain-mipsel_mips32_gcc-4.9-linaro_uClibc-0.9.33.2/bin/mipsel-openwrt-linux-gcc
  181. export CFLAGS="$SMALLCC -DNO_LIMIT"
  182. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  183. export LDFLAGS="-lpthread $SMALLLD"
  184. export THREADS=0
  185. make $MAKEFLAGS allmulti
  186. if [ $? != 0 ]; then
  187. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  188. exit $?
  189. fi
  190. export CLIENT_NAME=../binaries/Linux/mips/little-endian/static/vlmcs-mips32el-openwrt-uclib-static
  191. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/static/vlmcsd-mips32el-openwrt-uclibc-static
  192. export MULTI_NAME=../binaries/Linux/mips/little-endian/static/vlmcsdmulti-mips32el-openwrt-uclibc-static
  193. export LDFLAGS="$LDFLAGS -static"
  194. make $REUSEOBJFLAGS allmulti
  195. if [ $? != 0 ]; then
  196. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  197. exit $?
  198. fi
  199. # Linux mips16el with uClibc 0.9.33.2 using gcc 4.9 from OpenWRT toolchain with statically linked libgcc for Asus routers, e.g. Asus RT-N66U
  200. export CLIENT_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcs-mips16el-asus-rt-n66u-uclibc
  201. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcsd-mips16el-asus-rt-n66u-uclibc
  202. export MULTI_NAME=../binaries/Linux/mips/little-endian/static/vlmcsdmulti-mips16el-asus-rt-n66u-uclibc
  203. export CC=/opt/toolchains/mipsel-openwrt-linux-uclibc/toolchain-mipsel_mips32_gcc-4.9-linaro_uClibc-0.9.33.2/bin/mipsel-openwrt-linux-gcc
  204. export CFLAGS="$SMALLCC -static-libgcc -DNO_LIMIT"
  205. export PLATFORMFLAGS="-mips32 -mips16 -flto=16 -fwhole-program"
  206. export LDFLAGS="-lpthread $SMALLLD"
  207. export THREADS=0
  208. make $MAKEFLAGS allmulti
  209. if [ $? != 0 ]; then
  210. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  211. exit $?
  212. fi
  213. export CLIENT_NAME=../binaries/Linux/mips/little-endian/static/vlmcs-mips16el-asus-rt-n66u-uclibc-static
  214. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/static/vlmcsd-mips16el-asus-rt-n66u-uclibc-static
  215. export MULTI_NAME=../binaries/Linux/mips/little-endian/static/vlmcsdmulti-mips16el-asus-rt-n66u-uclibc-static
  216. export LDFLAGS="$LDFLAGS -static"
  217. make $REUSEOBJFLAGS allmulti
  218. if [ $? != 0 ]; then
  219. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  220. exit $?
  221. fi
  222. # Linux mips16el with uClibc 0.9.33.2 using gcc 4.8 from OpenWRT toolchain
  223. export CLIENT_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcs-mips16el-openwrt-uclibc
  224. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/uclibc/vlmcsd-mips16el-openwrt-uclibc
  225. export MULTI_NAME=../binaries/Linux/mips/little-endian/static/vlmcsdmulti-mips16el-openwrt-uclibc
  226. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  227. export LDFLAGS="-lpthread $SMALLLD"
  228. make $MAKEFLAGS allmulti
  229. if [ $? != 0 ]; then
  230. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  231. exit $?
  232. fi
  233. export CLIENT_NAME=../binaries/Linux/mips/little-endian/static/vlmcs-mips16el-openwrt-uclib-static
  234. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/static/vlmcsd-mips16el-openwrt-uclibc-static
  235. export MULTI_NAME=../binaries/Linux/mips/little-endian/static/vlmcsdmulti-mips16el-openwrt-uclibc-static
  236. export LDFLAGS="$LDFLAGS -static"
  237. make $REUSEOBJFLAGS allmulti
  238. if [ $? != 0 ]; then
  239. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  240. exit $?
  241. fi
  242. # Linux mips16el eglibc 2.19 using gcc 4.8 from OpenWRT toolchain
  243. export CLIENT_NAME=../binaries/Linux/mips/little-endian/glibc/vlmcs-mips16el-openwrt-glibc
  244. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/glibc/vlmcsd-mips16el-openwrt-glibc
  245. export MULTI_NAME=../binaries/Linux/mips/little-endian/glibc/vlmcsdmulti-mips16el-openwrt-glibc
  246. export CC=/opt/toolchains/mipsel_74kc+dsp2_gcc-4.9-linaro_eglibc-2.19-mips16/bin/mipsel-openwrt-linux-gnu-gcc-4.9.2
  247. #export CC=~/openwrt/staging_dir/toolchain-mipsel_mips32_gcc-4.8-linaro_eglibc-2.19/bin/mipsel-openwrt-linux-gcc
  248. export CFLAGS="$SMALLCC"
  249. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=mips32 -mips16"
  250. export LDFLAGS="$SMALLLD"
  251. export THREADS=0
  252. make $MAKEFLAGS allmulti
  253. if [ $? != 0 ]; then
  254. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  255. exit $?
  256. fi
  257. # PowerPC 64-bit big-endian glibc.
  258. export CLIENT_NAME=../binaries/Linux/ppc/big-endian/glibc/vlmcs-ppc64-glibc
  259. export PROGRAM_NAME=../binaries/Linux/ppc/big-endian/glibc/vlmcsd-ppc64-glibc
  260. export MULTI_NAME=../binaries/Linux/ppc/big-endian/glibc/vlmcsdmulti-ppc64-glibc
  261. export CC=/opt/toolchains/ppc64-glibc2.19-gcc-4.9.1/bin/powerpc64-linux-gcc
  262. export CFLAGS="$SMALLCC"
  263. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  264. export LDFLAGS="$SMALLLD"
  265. export THREADS=0
  266. make $MAKEFLAGS allmulti
  267. if [ $? != 0 ]; then
  268. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  269. exit $?
  270. fi
  271. # PowerPC 64-bit little-endian glibc.
  272. export CLIENT_NAME=../binaries/Linux/ppc/little-endian/glibc/vlmcs-ppc64el-glibc
  273. export PROGRAM_NAME=../binaries/Linux/ppc/little-endian/glibc/vlmcsd-ppc64el-glibc
  274. export MULTI_NAME=../binaries/Linux/ppc/little-endian/glibc/vlmcsdmulti-ppc64el-glibc
  275. export CC=/opt/toolchains/ppc64el-glibc2.20-gcc-4.9.1/bin/powerpc64le-linux-gcc
  276. export CFLAGS="$SMALLCC"
  277. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  278. export LDFLAGS="$SMALLLD"
  279. export THREADS=0
  280. make DNS_PARSER=OS $MAKEFLAGS allmulti
  281. if [ $? != 0 ]; then
  282. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  283. exit $?
  284. fi
  285. # PowerPC glibc. Compiles with gcc 4.8 from OpenWRT toolchain but uses libs from an old DM500 toolchain to be compatible with glibc 2.3
  286. export CLIENT_NAME=../binaries/Linux/ppc/big-endian/glibc/vlmcs-ppc-glibc
  287. export PROGRAM_NAME=../binaries/Linux/ppc/big-endian/glibc/vlmcsd-ppc-glibc
  288. export MULTI_NAME=../binaries/Linux/ppc/big-endian/glibc/vlmcsdmulti-ppc-glibc
  289. export CC=/opt/toolchains/ppc-openwrt-eglibc-2.19-gcc-4.8/bin/powerpc-openwrt-linux-gcc
  290. export CFLAGS="$SMALLCC"
  291. export PLATFORMFLAGS="-flto=16 -fwhole-program --sysroot=/opt/simplebuild/toolchains/powerpc -L/opt/simplebuild/toolchains/powerpc/lib -L/opt/simplebuild/toolchains/powerpc/usr/lib"
  292. export LDFLAGS="$SMALLLD"
  293. export THREADS=0
  294. make $MAKEFLAGS allmulti
  295. if [ $? != 0 ]; then
  296. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  297. exit $?
  298. fi
  299. # Mips 32 glibc compiled with gcc 4.9.2 from OpenWRT toolchain
  300. export CLIENT_NAME=../binaries/Linux/mips/big-endian/glibc/vlmcs-mips32-openwrt-glibc
  301. export PROGRAM_NAME=../binaries/Linux/mips/big-endian/glibc/vlmcsd-mips32-openwrt-glibc
  302. export MULTI_NAME=../binaries/Linux/mips/big-endian/glibc/vlmcsdmulti-mips32-openwrt-glibc
  303. export CC=/opt/toolchains/mips_34kc_gcc-4.9-linaro_eglibc-2.19-mips16/bin/mips-openwrt-linux-gcc
  304. #export CC=~/openwrt/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_eglibc-2.19/bin/mips-openwrt-linux-gcc
  305. export CFLAGS="$SMALLCC"
  306. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32"
  307. export LDFLAGS="$SMALLLD"
  308. export THREADS=0
  309. make $MAKEFLAGS allmulti
  310. if [ $? != 0 ]; then
  311. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  312. exit $?
  313. fi
  314. # Mips 32 glibc compiled with gcc 4.9.2 from OpenWRT toolchain
  315. export CLIENT_NAME=../binaries/Linux/mips/big-endian/glibc/vlmcs-mips16-openwrt-glibc
  316. export PROGRAM_NAME=../binaries/Linux/mips/big-endian/glibc/vlmcsd-mips16-openwrt-glibc
  317. export MULTI_NAME=../binaries/Linux/mips/big-endian/glibc/vlmcsdmulti-mips16-openwrt-glibc
  318. export CC=/opt/toolchains/mips_34kc_gcc-4.9-linaro_eglibc-2.19-mips16/bin/mips-openwrt-linux-gcc
  319. #export CC=~/openwrt/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_eglibc-2.19/bin/mips-openwrt-linux-gcc
  320. export CFLAGS="$SMALLCC"
  321. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32 -mips16"
  322. export LDFLAGS="$SMALLLD"
  323. export THREADS=0
  324. make $MAKEFLAGS allmulti
  325. if [ $? != 0 ]; then
  326. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  327. exit $?
  328. fi
  329. # mips32el glibc 2.19 compiled with gcc 4.8 from OpenWRT toolchain
  330. export CLIENT_NAME=../binaries/Linux/mips/little-endian/glibc/vlmcs-mips32el-openwrt-glibc
  331. export PROGRAM_NAME=../binaries/Linux/mips/little-endian/glibc/vlmcsd-mips32el-openwrt-glibc
  332. export MULTI_NAME=../binaries/Linux/mips/little-endian/glibc/vlmcsdmulti-mips32el-openwrt-glibc
  333. export CC=/opt/toolchains/mipsel_74kc+dsp2_gcc-4.9-linaro_eglibc-2.19-mips16/bin/mipsel-openwrt-linux-gnu-gcc-4.9.2
  334. #export CC=~/openwrt/staging_dir/toolchain-mipsel_mips32_gcc-4.8-linaro_eglibc-2.19/bin/mipsel-openwrt-linux-gcc
  335. export CFLAGS="$SMALLCC"
  336. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32"
  337. export LDFLAGS="$SMALLLD"
  338. export THREADS=0
  339. make $MAKEFLAGS allmulti
  340. if [ $? != 0 ]; then
  341. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  342. exit $?
  343. fi
  344. # armv7 glibc 2.22 gcc 5.3 OpenWRT toolchain
  345. export CC=/opt/toolchains/armelv7-OpenWRT-BCM47xx_53xx-gcc-5.3.0-glibc-2.22/bin/arm-openwrt-linux-gcc
  346. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armelv7-bcm47xx_53xx-openwrt-glibc
  347. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armelv7-bcm47xx_53xx-openwrt-glibc
  348. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armelv7-bcm47xx_53xx-openwrt-glibc
  349. export CFLAGS="$SMALLCC"
  350. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7-a -mthumb -mtune=cortex-a9"
  351. export LDFLAGS="$SMALLLD -static-libgcc"
  352. export THREADS=0
  353. export DNS_PARSER=internal
  354. make $MAKEFLAGS allmulti
  355. if [ $? != 0 ]; then
  356. echo Error creating $MULTI_NAME, $CLIENT_NAME and/or $PROGRAM_NAME
  357. exit $?
  358. fi
  359. # armv7 glibc 2.22 gcc 5.3 OpenWRT toolchain
  360. export CC=/opt/toolchains/armelv7-OpenWRT-BCM47xx_53xx-gcc-5.3.0-musl-1.14/bin/arm-openwrt-linux-gcc
  361. export CLIENT_NAME=../binaries/Linux/arm/little-endian/musl/vlmcs-armelv7-bcm47xx_53xx-openwrt-musl
  362. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/musl/vlmcsd-armelv7-bcm47xx_53xx-openwrt-musl
  363. export MULTI_NAME=../binaries/Linux/arm/little-endian/musl/vlmcsdmulti-armelv7-bcm47xx_53xx-openwrt-musl
  364. export CFLAGS="$SMALLCC"
  365. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7-a -mthumb -mtune=cortex-a9"
  366. export LDFLAGS="$SMALLLD -static-libgcc"
  367. export THREADS=0
  368. make DNS_PARSER=OS $MAKEFLAGS allmulti
  369. if [ $? != 0 ]; then
  370. echo Error creating $MULTI_NAME, $CLIENT_NAME and/or $PROGRAM_NAME
  371. exit $?
  372. fi
  373. export CLIENT_NAME=../binaries/Linux/arm/little-endian/static/vlmcs-armelv7-bcm47xx_53xx-openwrt-musl-static
  374. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/static/vlmcsd-armelv7-bcm47xx_53xx-openwrt-musl-static
  375. export MULTI_NAME=../binaries/Linux/arm/little-endian/static/vlmcsdmulti-armelv7-bcm47xx_53xx-openwrt-musl-static
  376. export LDFLAGS="$SMALLLD -static"
  377. make DNS_PARSER=OS $REUSEOBJFLAGS allmulti
  378. if [ $? != 0 ]; then
  379. echo Error creating $MULTI_NAME, $CLIENT_NAME and/or $PROGRAM_NAME
  380. exit $?
  381. fi
  382. #Android gcc 4.8 with API Level 3 (Android 1.5 cupcake) armv7
  383. export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android15-armv7
  384. export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android15-armv7
  385. export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android15-armv7
  386. export CC=/opt/toolchains/armelv7-android-3/bin/arm-linux-androideabi-gcc
  387. export CFLAGS="$SMALLCC"
  388. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb"
  389. export THREADS=0
  390. export LDFLAGS="$SMALLLD"
  391. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  392. if [ $? != 0 ]; then
  393. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  394. exit $?
  395. fi
  396. export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android15-armv7-static
  397. export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android15-armv7-static
  398. export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android15-armv7-static
  399. export LDFLAGS="$LDFLAGS -static"
  400. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $REUSEOBJFLAGS allmulti
  401. if [ $? != 0 ]; then
  402. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  403. exit $?
  404. fi
  405. #Android gcc 4.8 with API Level 3 (Android 1.5 cupcake) armv5
  406. export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android15-armv5
  407. export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android15-armv5
  408. export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android15-armv5
  409. export CC=/opt/toolchains/armelv7-android-3/bin/arm-linux-androideabi-gcc
  410. export CFLAGS="$SMALLCC"
  411. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv5te -mthumb"
  412. export THREADS=0
  413. export LDFLAGS="$SMALLLD"
  414. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  415. if [ $? != 0 ]; then
  416. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  417. exit $?
  418. fi
  419. export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android15-armv5-static
  420. export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android15-armv5-static
  421. export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android15-armv5-static
  422. export LDFLAGS="$LDFLAGS -static"
  423. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $REUSEOBJFLAGS allmulti
  424. if [ $? != 0 ]; then
  425. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  426. exit $?
  427. fi
  428. #Android gcc 4.8 with API Level 16 (Android 4.1 Jelly Bean) armv7
  429. export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android41-armv7
  430. export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android41-armv7
  431. export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android41-armv7
  432. export CC=/opt/toolchains/armelv7-android-16/bin/arm-linux-androideabi-gcc
  433. export CFLAGS="$SMALLCC"
  434. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb -fPIE -pie"
  435. export THREADS=0
  436. export LDFLAGS="$SMALLLD"
  437. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  438. if [ $? != 0 ]; then
  439. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  440. exit $?
  441. fi
  442. ##Android gcc 4.8 with API Level 21 (Android 5.0 Lollipop) armv7
  443. #
  444. #export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android50-armv7
  445. #export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android50-armv7
  446. #export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android50-armv7
  447. #export CC=/opt/toolchains/armelv7-android-21/bin/arm-linux-androideabi-gcc
  448. #export CFLAGS="$SMALLCC"
  449. #export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb -fPIE -pie"
  450. #export THREADS=0
  451. #export LDFLAGS="$SMALLLD"
  452. #
  453. #make NOLPTHREAD=1 $MAKEFLAGS
  454. #
  455. #if [ $? != 0 ]; then
  456. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  457. # exit $?
  458. #fi
  459. #
  460. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  461. #
  462. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  463. #
  464. #if [ $? != 0 ]; then
  465. # echo Error creating $MULTI_NAME
  466. # exit $?
  467. #fi
  468. #
  469. #
  470. #
  471. #
  472. #
  473. #Android gcc 4.9 with API Level 21 (Android 5.0 Lollipop) arm64el
  474. export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android50-arm64v8
  475. export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android50-arm64v8
  476. export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android50-arm64v8
  477. export CC=/opt/toolchains/arm64el-android-21/bin/aarch64-linux-android-gcc
  478. export CFLAGS="$SMALLCC"
  479. export PLATFORMFLAGS="-flto=16 -fwhole-program -mtune=generic -mfix-cortex-a53-835769 -march=armv8-a -fPIE -pie"
  480. export THREADS=0
  481. export LDFLAGS="$SMALLLD"
  482. make NOLPTHREAD=1 NOLRESOLV=1 NO_DNS=0 $MAKEFLAGS allmulti
  483. if [ $? != 0 ]; then
  484. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  485. exit $?
  486. fi
  487. #Android gcc 4.9 with API Level 21 (Android 5.0 Lollipop) arm64el STATIC
  488. export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android50-arm64v8-static
  489. export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android50-arm64v8-static
  490. export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android50-arm64v8-static
  491. export CC=/opt/toolchains/arm64el-android-21/bin/aarch64-linux-android-gcc
  492. export CFLAGS="$SMALLCC"
  493. export PLATFORMFLAGS="-flto=16 -fwhole-program -mtune=generic -mfix-cortex-a53-835769 -march=armv8-a"
  494. export THREADS=0
  495. export LDFLAGS="$SMALLLD -static"
  496. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  497. if [ $? != 0 ]; then
  498. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  499. exit $?
  500. fi
  501. #Android gcc 4.8 with API Level 9 (Android 2.3 Gingerbread) x86
  502. export CLIENT_NAME=../binaries/Android/intel/bionic/vlmcs-android23-x86
  503. export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android23-x86
  504. export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android23-x86
  505. export CC=/opt/toolchains/x86-android-9/bin/i686-linux-android-gcc
  506. export CFLAGS="$SMALLCC"
  507. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m32"
  508. export THREADS=1
  509. export LDFLAGS="$SMALLLD"
  510. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  511. if [ $? != 0 ]; then
  512. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  513. exit $?
  514. fi
  515. export CLIENT_NAME=../binaries/Android/intel/static/vlmcs-android23-x86-static
  516. export PROGRAM_NAME=../binaries/Android/intel/static/vlmcsd-android23-x86-static
  517. export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android23-x86-static
  518. export LDFLAGS="$LDFLAGS -static"
  519. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $REUSEOBJFLAGS allmulti
  520. if [ $? != 0 ]; then
  521. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  522. exit $?
  523. fi
  524. #Android gcc 4.8 with API Level 16 (Android 4.1 Jelly Bean) x86
  525. export CLIENT_NAME=../binaries/Android/intel/bionic/vlmcs-android41-x86
  526. export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android41-x86
  527. export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android41-x86
  528. export CC=/opt/toolchains/x86-android-16/bin/i686-linux-android-gcc
  529. export CFLAGS="$SMALLCC"
  530. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m32 -fPIE -pie"
  531. export THREADS=1
  532. export LDFLAGS="$SMALLLD"
  533. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  534. if [ $? != 0 ]; then
  535. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  536. exit $?
  537. fi
  538. ##Android gcc 4.8 with API Level 21 (Android 5.0 Lollipop) x86
  539. #
  540. #export CLIENT_NAME=../binaries/Android/intel/bionic/vlmcs-android50-x86
  541. #export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android50-x86
  542. #export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android50-x86
  543. #export CC=/opt/toolchains/x86-android-21/bin/i686-linux-android-gcc
  544. #export CFLAGS="$SMALLCC"
  545. #export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m32 -fPIE -pie"
  546. #export THREADS=1
  547. #export LDFLAGS="$SMALLLD"
  548. #
  549. #make NOLPTHREAD=1 $MAKEFLAGS
  550. #
  551. #if [ $? != 0 ]; then
  552. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  553. # exit $?
  554. #fi
  555. #
  556. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  557. #
  558. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  559. #
  560. #if [ $? != 0 ]; then
  561. # echo Error creating $MULTI_NAME
  562. # exit $?
  563. #fi
  564. #Android gcc 4.9 with API Level 21 (Android 5.0 Lollipop) x64
  565. export CLIENT_NAME=../binaries/Android/intel/bionic/vlmcs-android50-x64
  566. export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android50-x64
  567. export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android50-x64
  568. export CC=/opt/toolchains/x86_64-android-21/bin/x86_64-linux-android-gcc
  569. export CFLAGS="$SMALLCC"
  570. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m64 -fPIE -pie"
  571. export THREADS=0
  572. export LDFLAGS="$SMALLLD"
  573. make NOLPTHREAD=1 NOLRESOLV=1 NO_DNS=0 $MAKEFLAGS allmulti
  574. if [ $? != 0 ]; then
  575. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  576. exit $?
  577. fi
  578. #Android gcc 4.9 with API Level 21 (Android 5.0 Lollipop) x64 STATIC
  579. export CLIENT_NAME=../binaries/Android/intel/static/vlmcs-android50-x64-static
  580. export PROGRAM_NAME=../binaries/Android/intel/static/vlmcsd-android50-x64-static
  581. export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android50-x64-static
  582. export CC=/opt/toolchains/x86_64-android-21/bin/x86_64-linux-android-gcc
  583. export CFLAGS="$SMALLCC"
  584. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=nocona -m64"
  585. export THREADS=0
  586. export LDFLAGS="$SMALLLD -static"
  587. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  588. if [ $? != 0 ]; then
  589. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  590. exit $?
  591. fi
  592. #Android gcc 4.8 with API Level 9 (Android 2.3 Gingerbread) mips32el
  593. export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android23-mips32el
  594. export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android23-mips32el
  595. export MULTI_NAME=../binaries/Android/mips/static/vlmcsdmulti-android23-mips32el
  596. export CC=/opt/toolchains/mipsel-android-9/bin/mipsel-linux-android-gcc
  597. export CFLAGS="$SMALLCC"
  598. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  599. export THREADS=1
  600. export LDFLAGS="$SMALLLD"
  601. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  602. if [ $? != 0 ]; then
  603. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  604. exit $?
  605. fi
  606. export CLIENT_NAME=../binaries/Android/mips/static/vlmcs-android23-mips32el-static
  607. export PROGRAM_NAME=../binaries/Android/mips/static/vlmcsd-android23-mips32el-static
  608. export MULTI_NAME=../binaries/Android/mips/static/vlmcsdmulti-android23-mips32el-static
  609. export LDFLAGS="$LDFLAGS -static"
  610. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $REUSEOBJFLAGS allmulti
  611. if [ $? != 0 ]; then
  612. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  613. exit $?
  614. fi
  615. #Android gcc 4.8 with API Level 16 (Android 4.1 Jelly Bean) mips32el
  616. export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android41-mips32el
  617. export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android41-mips32el
  618. export MULTI_NAME=../binaries/Android/mips/bionic/vlmcsdmulti-android41-mips32el
  619. export CC=/opt/toolchains/mipsel-android-16/bin/mipsel-linux-android-gcc
  620. export CFLAGS="$SMALLCC"
  621. export PLATFORMFLAGS="-flto=16 -fwhole-program -fPIE -pie"
  622. export THREADS=1
  623. export LDFLAGS="$SMALLLD"
  624. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  625. if [ $? != 0 ]; then
  626. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  627. exit $?
  628. fi
  629. ##Android gcc 4.8 with API Level 21 (Android 5.0 Lollipop) mips32el
  630. #
  631. #export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android50-mips32el
  632. #export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android50-mips32el
  633. #export MULTI_NAME=../binaries/Android/mips/bionic/vlmcsdmulti-android50-mips32el
  634. #export CC=/opt/toolchains/mipsel-android-21/bin/mipsel-linux-android-gcc
  635. #export CFLAGS="$SMALLCC"
  636. #export PLATFORMFLAGS="-flto=16 -fwhole-program -fPIE -pie"
  637. #export THREADS=1
  638. #export LDFLAGS="$SMALLLD"
  639. #
  640. #make NOLPTHREAD=1 $MAKEFLAGS
  641. #
  642. #if [ $? != 0 ]; then
  643. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  644. # exit $?
  645. #fi
  646. #
  647. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  648. #
  649. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  650. #
  651. #if [ $? != 0 ]; then
  652. # echo Error creating $MULTI_NAME
  653. # exit $?
  654. #fi
  655. ##Android gcc 4.8 with API Level 9 (Android 2.3 Gingerbread) mips16el
  656. #
  657. #export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android23-mips16el
  658. #export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android23-mips16el
  659. #export CC=/opt/toolchains/mipsel-android-9/bin/mipsel-linux-android-gcc
  660. #export CFLAGS="$SMALLCC"
  661. #export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  662. #export THREADS=1
  663. #export LDFLAGS="$SMALLLD"
  664. #
  665. #make NOLPTHREAD=1 $MAKEFLAGS
  666. #
  667. #if [ $? != 0 ]; then
  668. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  669. # exit $?
  670. #fi
  671. #
  672. #export CLIENT_NAME=../binaries/Android/mips/static/vlmcs-android23-mips16el-static
  673. #export PROGRAM_NAME=../binaries/Android/mips/static/vlmcsd-android23-mips16el-static
  674. #export MULTI_NAME=../binaries/Android/mips/static/vlmcsdmulti-android23-mips16el-static
  675. #export LDFLAGS="$LDFLAGS -static"
  676. #
  677. #make NOLPTHREAD=1 $REUSEOBJFLAGS
  678. #
  679. #if [ $? != 0 ]; then
  680. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  681. # exit $?
  682. #fi
  683. #
  684. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  685. #
  686. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  687. #
  688. #if [ $? != 0 ]; then
  689. # echo Error creating $MULTI_NAME
  690. # exit $?
  691. #fi
  692. #
  693. #export LDFLAGS="$SMALLLD"
  694. #export MULTI_NAME=../binaries/Android/mips/bionic/vlmcsdmulti-android23-mips16el
  695. #
  696. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  697. #
  698. #if [ $? != 0 ]; then
  699. # echo Error creating $MULTI_NAME
  700. # exit $?
  701. #fi
  702. #
  703. #
  704. #
  705. #
  706. #
  707. ##Android gcc 4.8 with API Level 16 (Android 4.1 Jelly Bean) mips16el
  708. #
  709. #export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android41-mips16el
  710. #export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android41-mips16el
  711. #export MULTI_NAME=../binaries/Android/mips/bionic/vlmcsdmulti-android41-mips16el
  712. #export CC=/opt/toolchains/mipsel-android-16/bin/mipsel-linux-android-gcc
  713. #export CFLAGS="$SMALLCC"
  714. #export PLATFORMFLAGS="-flto=16 -fwhole-program -fPIE -pie -mips16"
  715. #export THREADS=1
  716. #export LDFLAGS="$SMALLLD"
  717. #
  718. #make NOLPTHREAD=1 $MAKEFLAGS
  719. #
  720. #if [ $? != 0 ]; then
  721. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  722. # exit $?
  723. #fi
  724. #
  725. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  726. #
  727. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  728. #
  729. #if [ $? != 0 ]; then
  730. # echo Error creating $MULTI_NAME
  731. # exit $?
  732. #fi
  733. #
  734. #
  735. #
  736. #
  737. #
  738. #Android gcc 4.8 with API Level 21 (Android 5.0 Lollipop) mips16el
  739. #
  740. #export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android50-mips16el
  741. #export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android50-mips16el
  742. #export MULTI_NAME=../binaries/Android/mips/bionic/vlmcsdmulti-android50-mips16el
  743. #export CC=/opt/toolchains/mipsel-android-21/bin/mipsel-linux-android-gcc
  744. #export CFLAGS="$SMALLCC"
  745. #export PLATFORMFLAGS="-flto=16 -fwhole-program -fPIE -pie -mips16"
  746. #export THREADS=1
  747. #export LDFLAGS="$SMALLLD"
  748. #
  749. #make NOLPTHREAD=1 $MAKEFLAGS
  750. #
  751. #if [ $? != 0 ]; then
  752. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  753. # exit $?
  754. #fi
  755. #
  756. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  757. #
  758. #make NOLPTHREAD=1 $REUSEOBJFLAGS $MULTI_NAME
  759. #
  760. #if [ $? != 0 ]; then
  761. # echo Error creating $MULTI_NAME
  762. # exit $?
  763. #fi
  764. #Android gcc 4.9 with API Level 21 (Android 5.0 Lollipop) mips64el
  765. export CLIENT_NAME=../binaries/Android/mips/bionic/vlmcs-android50-mips64el
  766. export PROGRAM_NAME=../binaries/Android/mips/bionic/vlmcsd-android50-mips64el
  767. export MULTI_NAME=../binaries/Android/mips/bionic/vlmcsdmulti-android50-mips64el
  768. export CC=/opt/toolchains/mips64el-android-21/bin/mips64el-linux-android-gcc
  769. export CFLAGS="$SMALLCC"
  770. export PLATFORMFLAGS="-flto=16 -fwhole-program -fPIE -pie"
  771. export THREADS=0
  772. export LDFLAGS="$SMALLLD"
  773. make NOLPTHREAD=1 NOLRESOLV=1 NO_DNS=0 $MAKEFLAGS allmulti
  774. if [ $? != 0 ]; then
  775. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  776. exit $?
  777. fi
  778. #Android gcc 4.9 with API Level 21 (Android 5.0 Lollipop) mips64el STATIC
  779. export CLIENT_NAME=../binaries/Android/mips/static/vlmcs-android50-mips64el-static
  780. export PROGRAM_NAME=../binaries/Android/mips/static/vlmcsd-android50-mips64el-static
  781. export MULTI_NAME=../binaries/Android/mips/static/vlmcsdmulti-android50-mips64el-static
  782. export CC=/opt/toolchains/mips64el-android-21/bin/mips64el-linux-android-gcc
  783. export CFLAGS="$SMALLCC"
  784. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  785. export THREADS=0
  786. export LDFLAGS="$SMALLLD -static"
  787. make NOLPTHREAD=1 NOLRESOLV=1 DNS_PARSER=OS $MAKEFLAGS allmulti
  788. if [ $? != 0 ]; then
  789. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  790. exit $?
  791. fi
  792. ## Android 5.0+ with Ubuntu toolchain
  793. #export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android5
  794. #export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android5
  795. #export CC=arm-linux-androideabi-gcc
  796. #export CFLAGS="$SMALLCC"
  797. #export PLATFORMFLAGS="-flto=16 -fwhole-program"
  798. #export LDFLAGS="$SMALLLD -pie -fpie"
  799. #export THREADS=0
  800. #
  801. #make $MAKEFLAGS
  802. #
  803. #if [ $? != 0 ]; then
  804. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  805. # exit $?
  806. #fi
  807. #
  808. #
  809. # Android 5.0+ with Ubuntu toolchain STATIC
  810. #export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android5-static
  811. #export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android5-static
  812. #export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android5-static
  813. #export LDFLAGS="$LDFLAGS -static"
  814. #
  815. #make $REUSEOBJFLAGS
  816. #
  817. #if [ $? != 0 ]; then
  818. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  819. # exit $?
  820. #fi
  821. #
  822. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  823. #
  824. #make $REUSEOBJFLAGS $MULTI_NAME
  825. #
  826. #if [ $? != 0 ]; then
  827. # echo Error creating $MULTI_NAME
  828. # exit $?
  829. #fi
  830. #
  831. #export LDFLAGS="$SMALLLD -pie -fpie"
  832. #export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android5
  833. #
  834. #make $REUSEOBJFLAGS $MULTI_NAME
  835. #
  836. #if [ $? != 0 ]; then
  837. # echo Error creating $MULTI_NAME
  838. # exit $?
  839. #fi
  840. #
  841. #
  842. #
  843. #
  844. ## Android 5.0+ with Ubuntu toolchain for ARMv7 CPU with thumb2 instruction set
  845. #export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android5-armv7
  846. #export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android5-armv7
  847. #export CC=arm-linux-androideabi-gcc
  848. #export CFLAGS="$SMALLCC"
  849. #export PLATFORMFLAGS="-flto=16 -fwhole-program -mthumb -march=armv7 -mtune=cortex-a9"
  850. #export LDFLAGS="$SMALLLD -pie -fpie"
  851. #export THREADS=0
  852. #
  853. #make $MAKEFLAGS
  854. #
  855. #if [ $? != 0 ]; then
  856. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  857. # exit $?
  858. #fi
  859. #
  860. #export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android5-armv7-static
  861. #export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android5-armv7-static
  862. #export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android5-armv7-static
  863. #export LDFLAGS="$LDFLAGS -static"
  864. #
  865. #make $REUSEOBJFLAGS
  866. #
  867. #if [ $? != 0 ]; then
  868. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  869. # exit $?
  870. #fi
  871. #
  872. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  873. #
  874. #make $REUSEOBJFLAGS $MULTI_NAME
  875. #
  876. #if [ $? != 0 ]; then
  877. # echo Error creating $MULTI_NAME
  878. # exit $?
  879. #fi
  880. #
  881. #export LDFLAGS="$SMALLLD -pie -fpie"
  882. #export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android5-armv7
  883. #
  884. #make $REUSEOBJFLAGS $MULTI_NAME
  885. #
  886. #if [ $? != 0 ]; then
  887. # echo Error creating $MULTI_NAME
  888. # exit $?
  889. #fi
  890. #
  891. ##unset TERMINAL_WIDTH
  892. #
  893. #
  894. #
  895. #
  896. #
  897. ## Android with Ubuntu toolchain
  898. #export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android
  899. #export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android
  900. #export CC=arm-linux-androideabi-gcc
  901. #export CFLAGS="$SMALLCC"
  902. #export PLATFORMFLAGS="-flto=16 -fwhole-program"
  903. #export LDFLAGS="$SMALLLD"
  904. #export THREADS=0
  905. #
  906. #make $MAKEFLAGS
  907. #
  908. #if [ $? != 0 ]; then
  909. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  910. # exit $?
  911. #fi
  912. #
  913. #
  914. ## Android with Ubuntu toolchain STATIC
  915. #export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android-static
  916. #export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android-static
  917. #export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android-static
  918. #export LDFLAGS="$LDFLAGS -static"
  919. #
  920. #make $REUSEOBJFLAGS
  921. #
  922. #if [ $? != 0 ]; then
  923. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  924. # exit $?
  925. #fi
  926. #
  927. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  928. #
  929. #make $REUSEOBJFLAGS $MULTI_NAME
  930. #
  931. #if [ $? != 0 ]; then
  932. # echo Error creating $MULTI_NAME
  933. # exit $?
  934. #fi
  935. #
  936. #export LDFLAGS="$SMALLLD"
  937. #export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android
  938. #
  939. #make $REUSEOBJFLAGS $MULTI_NAME
  940. #
  941. #if [ $? != 0 ]; then
  942. # echo Error creating $MULTI_NAME
  943. # exit $?
  944. #fi
  945. # Android with Ubuntu toolchain for ARMv7 CPU with thumb2 instruction set
  946. #export CLIENT_NAME=../binaries/Android/arm/bionic/vlmcs-android-armv7
  947. #export PROGRAM_NAME=../binaries/Android/arm/bionic/vlmcsd-android-armv7
  948. #export CC=arm-linux-androideabi-gcc
  949. #export CFLAGS="$SMALLCC"
  950. #export PLATFORMFLAGS="-flto=16 -fwhole-program -mthumb -march=armv7 -mtune=cortex-a9"
  951. #export LDFLAGS="$SMALLLD"
  952. #export THREADS=0
  953. #
  954. #make $MAKEFLAGS
  955. #
  956. #if [ $? != 0 ]; then
  957. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  958. # exit $?
  959. #fi
  960. #
  961. #export CLIENT_NAME=../binaries/Android/arm/static/vlmcs-android-armv7-static
  962. #export PROGRAM_NAME=../binaries/Android/arm/static/vlmcsd-android-armv7-static
  963. #export MULTI_NAME=../binaries/Android/arm/static/vlmcsdmulti-android-armv7-static
  964. #export LDFLAGS="$LDFLAGS -static"
  965. #
  966. #make $REUSEOBJFLAGS
  967. #
  968. #if [ $? != 0 ]; then
  969. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  970. # exit $?
  971. #fi
  972. #
  973. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  974. #
  975. #make $REUSEOBJFLAGS $MULTI_NAME
  976. #
  977. #if [ $? != 0 ]; then
  978. # echo Error creating $MULTI_NAME
  979. # exit $?
  980. #fi
  981. #
  982. #export LDFLAGS="$SMALLLD"
  983. #export MULTI_NAME=../binaries/Android/arm/bionic/vlmcsdmulti-android-armv7
  984. #
  985. #make $REUSEOBJFLAGS $MULTI_NAME
  986. #
  987. #if [ $? != 0 ]; then
  988. # echo Error creating $MULTI_NAME
  989. # exit $?
  990. #fi
  991. # Linux x86 glibc
  992. export MULTI_NAME=../binaries/Linux/intel/glibc/vlmcsdmulti-x86-glibc
  993. export CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x86-glibc
  994. export PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x86-glibc
  995. export CC=/opt/toolchains/toolchain-i386_i486_gcc-4.8-linaro_eglibc-2.19/bin/i486-openwrt-linux-gcc
  996. export CFLAGS="$SMALLCC"
  997. export PLATFORMFLAGS="-flto=16 -fwhole-program -m32 -march=i686 -mtune=generic"
  998. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  999. export THREADS=0
  1000. make $MAKEFLAGS allmulti
  1001. if [ $? != 0 ]; then
  1002. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1003. exit $?
  1004. fi
  1005. # Linux x86 glibc minimum standalone version
  1006. export PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x86-glibc-minimum
  1007. export CC=/opt/toolchains/toolchain-i386_i486_gcc-4.8-linaro_eglibc-2.19/bin/i486-openwrt-linux-gcc
  1008. export CFLAGS="$SMALLCC"
  1009. export PLATFORMFLAGS="-flto=16 -fwhole-program -m32 -march=i686 -mtune=generic"
  1010. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1011. export THREADS=0
  1012. export FEATURES=minimum
  1013. make NO_DNS=1 $MAKEFLAGS $PROGRAM_NAME
  1014. if [ $? != 0 ]; then
  1015. echo Error creating $PROGRAM_NAME
  1016. exit $?
  1017. fi
  1018. # Linux x86 glibc minimum inetd version
  1019. export PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x86-glibc-minimum-inetd
  1020. export CFLAGS="$CFLAGS -DNO_SOCKETS"
  1021. make NO_DNS=1 $MAKEFLAGS $PROGRAM_NAME
  1022. if [ $? != 0 ]; then
  1023. echo Error creating $PROGRAM_NAME
  1024. exit $?
  1025. fi
  1026. # Linux x86 glibc threads
  1027. export FEATURES=full
  1028. export THREADS=1
  1029. export PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x86-glibc-threads
  1030. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -lpthread"
  1031. export CFLAGS="$SMALLCC"
  1032. make $MAKEFLAGS $PROGRAM_NAME
  1033. if [ $? != 0 ]; then
  1034. echo Error creating $PROGRAM_NAME
  1035. exit $?
  1036. fi
  1037. # Linux x86 musl
  1038. export FEATURES=full
  1039. export MULTI_NAME=../binaries/Linux/intel/static/vlmcsdmulti-x86-musl-static
  1040. export CLIENT_NAME=../binaries/Linux/intel/static/vlmcs-x86-musl-static
  1041. export PROGRAM_NAME=../binaries/Linux/intel/static/vlmcsd-x86-musl-static
  1042. #export CC=/opt/toolchains/i386_i486_gcc-4.9-linaro_musl-1.1.6/bin/i486-openwrt-linux-musl-gcc-4.9.2
  1043. export CC=/opt/toolchains/i486-musl-gcc-5.3.0-binutils-2.25.1/bin/i486-Hotbird-linux-musl-gcc.br_real
  1044. export CFLAGS="$SMALLCC"
  1045. export PLATFORMFLAGS="-flto=16 -fwhole-program -m32 -march=i486 -mtune=generic"
  1046. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -static"
  1047. export THREADS=0
  1048. export NOPROCFS=0
  1049. export AUXV=1
  1050. make $MAKEFLAGS allmulti
  1051. if [ $? != 0 ]; then
  1052. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1053. exit $?
  1054. fi
  1055. export CLIENT_NAME=../binaries/Linux/intel/musl/vlmcs-x86-musl
  1056. export PROGRAM_NAME=../binaries/Linux/intel/musl/vlmcsd-x86-musl
  1057. export MULTI_NAME=../binaries/Linux/intel/musl/vlmcsdmulti-x86-musl
  1058. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1059. make $REUSEOBJFLAGS allmulti
  1060. if [ $? != 0 ]; then
  1061. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1062. exit $?
  1063. fi
  1064. # Linux x86 musl static threads
  1065. export FEATURES=full
  1066. export PROGRAM_NAME=../binaries/Linux/intel/static/vlmcsd-x86-musl-static-threads
  1067. export MULTI_NAME=../binaries/Linux/intel/static/vlmcsdmulti-x86-musl-static-threads
  1068. export CC=/opt/toolchains/i486-musl-gcc-5.3.0-binutils-2.25.1/bin/i486-Hotbird-linux-musl-gcc.br_real
  1069. export CFLAGS="$SMALLCC"
  1070. export PLATFORMFLAGS="-flto=16 -fwhole-program -m32 -march=i486 -mtune=generic"
  1071. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -static"
  1072. export THREADS=1
  1073. export NOPROCFS=0
  1074. export AUXV=1
  1075. make $MAKEFLAGS $PROGRAM_NAME $MULTI_NAME
  1076. if [ $? != 0 ]; then
  1077. echo Error creating $PROGRAM_NAME
  1078. exit $?
  1079. fi
  1080. # Linux x32 glibc
  1081. export FEATURES=full
  1082. export MULTI_NAME=../binaries/Linux/intel/glibc/vlmcsdmulti-x32-glibc
  1083. export CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x32-glibc
  1084. export PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x32-glibc
  1085. export CC=gcc
  1086. export CFLAGS="$SMALLCC"
  1087. export PLATFORMFLAGS="-flto=16 -fwhole-program -mx32 -march=nocona -mtune=generic"
  1088. export LDFLAGS="-fuse-ld=gold $SMALLLD -Wl,--hash-style=gnu"
  1089. export THREADS=0
  1090. export NOPROCFS=0
  1091. export AUXV=1
  1092. make DNS_PARSER=OS $MAKEFLAGS allmulti
  1093. if [ $? != 0 ]; then
  1094. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1095. exit $?
  1096. fi
  1097. # Linux x32 glibc threads
  1098. export FEATURES=full
  1099. export PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x32-glibc-threads
  1100. export CC=gcc
  1101. export CFLAGS="$SMALLCC"
  1102. export PLATFORMFLAGS="-flto=16 -fwhole-program -mx32 -march=nocona -mtune=generic"
  1103. export LDFLAGS="-fuse-ld=gold $SMALLLD -Wl,--hash-style=gnu -lpthread"
  1104. export THREADS=1
  1105. export NOPROCFS=0
  1106. export AUXV=1
  1107. make DNS_PARSER=OS $MAKEFLAGS $PROGRAM_NAME
  1108. if [ $? != 0 ]; then
  1109. echo Error creating $PROGRAM_NAME
  1110. exit $?
  1111. fi
  1112. # Linux armv4 little-endian glibc
  1113. export FEATURES=full
  1114. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armv4el-glibc
  1115. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armv4el-glibc
  1116. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armv4el-glibc
  1117. export CC=/opt/toolchains/armelv5t-glibc-2.23-gcc-6.1.0-binutils-2.26/usr/bin/arm-Hotbird-linux-gnueabi-gcc
  1118. export CFLAGS="$SMALLCC"
  1119. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv4 -marm"
  1120. export LDFLAGS="$SMALLLD -static-libgcc"
  1121. export THREADS=0
  1122. export NOPROCFS=0
  1123. export AUXV=0
  1124. make $MAKEFLAGS DNS_PARSER=internal allmulti
  1125. if [ $? != 0 ]; then
  1126. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1127. exit $?
  1128. fi
  1129. # Linux armv4 little-endian glibc thumb instruction set
  1130. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armv4el-glibc-thumb
  1131. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armv4el-glibc-thumb
  1132. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armv4el-glibc-thumb
  1133. export CC=/opt/toolchains/armelv5t-glibc-2.23-gcc-6.1.0-binutils-2.26/usr/bin/arm-Hotbird-linux-gnueabi-gcc
  1134. export FEATURES=full
  1135. export CFLAGS="$SMALLCC"
  1136. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv4t -mthumb"
  1137. export LDFLAGS="$SMALLLD -static-libgcc"
  1138. export THREADS=0
  1139. make $MAKEFLAGS DNS_PARSER=internal allmulti
  1140. if [ $? != 0 ]; then
  1141. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1142. exit $?
  1143. fi
  1144. # Linux armv5 little-endian glibc thumb instruction set
  1145. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armv5el-glibc-thumb
  1146. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armv5el-glibc-thumb
  1147. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armv5el-glibc-thumb
  1148. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv5t -mthumb"
  1149. make $MAKEFLAGS DNS_PARSER=internal allmulti
  1150. if [ $? != 0 ]; then
  1151. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1152. exit $?
  1153. fi
  1154. # Linux armv5 little-endian glibc
  1155. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armv5el-glibc
  1156. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armv5el-glibc
  1157. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armv5el-glibc
  1158. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv5 -marm"
  1159. make $MAKEFLAGS DNS_PARSER=internal allmulti
  1160. if [ $? != 0 ]; then
  1161. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1162. exit $?
  1163. fi
  1164. # Linux armv7 little-endian glibc thumb2 instruction set
  1165. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armv7el-glibc
  1166. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armv7el-glibc
  1167. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armv7el-glibc
  1168. export CC=/opt/toolchains/armelv7-cortex-a8-glibc-2.18/usr/bin/arm-linux-gcc
  1169. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb"
  1170. export FEATURES=full
  1171. export CFLAGS="$SMALLCC"
  1172. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1173. export THREADS=0
  1174. make $MAKEFLAGS allmulti
  1175. if [ $? != 0 ]; then
  1176. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1177. exit $?
  1178. fi
  1179. # Linux armv4 little-endian openwrt toolchain
  1180. export PROGRAM_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsd-armv4el-openwrt-glibc
  1181. export CLIENT_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcs-armv4el-openwrt-glibc
  1182. export MULTI_NAME=../binaries/Linux/arm/little-endian/glibc/vlmcsdmulti-armv4el-openwrt-glibc
  1183. export CC=/opt/toolchains/toolchain-arm_mpcore+vfp_gcc-4.8-linaro_eglibc-2.19_eabi/bin/arm-openwrt-linux-gcc
  1184. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv4"
  1185. export FEATURES=full
  1186. export CFLAGS="$SMALLCC"
  1187. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1188. export THREADS=0
  1189. make $MAKEFLAGS allmulti
  1190. if [ $? != 0 ]; then
  1191. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1192. exit $?
  1193. fi
  1194. # Linux armv7 little-endian openwrt toolchain thumb 2 instruction set
  1195. INSTALLDIR=../binaries/Linux/arm/little-endian/glibc/
  1196. SUFFIX=-armv7el-openwrt-glibc
  1197. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1198. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1199. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1200. export CC=/opt/toolchains/toolchain-arm_mpcore+vfp_gcc-4.8-linaro_eglibc-2.19_eabi/bin/arm-openwrt-linux-gcc
  1201. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb"
  1202. export FEATURES=full
  1203. export CFLAGS="$SMALLCC"
  1204. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1205. export THREADS=0
  1206. make $MAKEFLAGS allmulti
  1207. if [ $? != 0 ]; then
  1208. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1209. exit $?
  1210. fi
  1211. rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  1212. # Linux armv5 little endian thumb instruction set
  1213. INSTALLDIR=../binaries/Linux/arm/little-endian/static/
  1214. SUFFIX=-armv5el-musl-thumb
  1215. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}-static
  1216. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}-static
  1217. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}-static
  1218. export CC=/opt/toolchains/armelv5t-musl-gcc6.1.0-binutils-2.26/usr/bin/arm-Hotbird-linux-musleabi-gcc
  1219. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  1220. export FEATURES=full
  1221. export CFLAGS="$SMALLCC"
  1222. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -static"
  1223. export THREADS=0
  1224. export NOPROCFS=0
  1225. export AUXV=1
  1226. make $MAKEFLAGS DNS_PARSER=internal allmulti
  1227. if [ $? != 0 ]; then
  1228. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1229. exit $?
  1230. fi
  1231. rm -f ../build/dns_srv.o
  1232. INSTALLDIR=../binaries/Linux/arm/little-endian/musl/
  1233. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1234. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1235. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1236. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1237. make $REUSEOBJFLAGS DNS_PARSER=OS allmulti
  1238. if [ $? != 0 ]; then
  1239. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1240. exit $?
  1241. fi
  1242. # Linux armv5 little-endian uclibc thumb instruction set
  1243. INSTALLDIR=../binaries/Linux/arm/little-endian/uclibc/
  1244. SUFFIX=-armv5el-uclibc-thumb
  1245. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1246. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1247. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1248. export CC=/opt/toolchains/armelv5t-uclibc-0.9.33/usr/bin/arm-linux-gcc
  1249. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv5t -mthumb"
  1250. export FEATURES=full
  1251. export CFLAGS="$SMALLCC"
  1252. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1253. export THREADS=0
  1254. export NOPROCFS=0
  1255. export AUXV=0
  1256. make $MAKEFLAGS allmulti
  1257. if [ $? != 0 ]; then
  1258. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1259. exit $?
  1260. fi
  1261. # Linux armv7 little-endian uclibc thumb 2 instruction set
  1262. INSTALLDIR=../binaries/Linux/arm/little-endian/
  1263. SUFFIX=-armv7el-uclibc
  1264. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1265. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1266. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1267. export CC=/opt/toolchains/armelv7-cortex-a8-uclibc-0.9.33/usr/bin/arm-linux-gcc
  1268. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb"
  1269. export FEATURES=full
  1270. export CFLAGS="$SMALLCC"
  1271. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1272. export THREADS=0
  1273. make $MAKEFLAGS allmulti
  1274. if [ $? != 0 ]; then
  1275. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1276. exit $?
  1277. fi
  1278. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1279. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1280. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1281. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -static"
  1282. make $REUSEOBJFLAGS allmulti
  1283. if [ $? != 0 ]; then
  1284. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1285. exit $?
  1286. fi
  1287. # Linux armv4 little-endian uclibc openwrt toolchain
  1288. INSTALLDIR=../binaries/Linux/arm/little-endian/uclibc/
  1289. SUFFIX=-armv4el-openwrt-uclibc
  1290. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1291. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1292. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1293. export CC=/opt/toolchains/toolchain-arm_mpcore+vfp_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/bin/arm-openwrt-linux-gcc
  1294. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv4 -marm"
  1295. export FEATURES=full
  1296. export CFLAGS="$SMALLCC"
  1297. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1298. export THREADS=0
  1299. make $MAKEFLAGS allmulti
  1300. if [ $? != 0 ]; then
  1301. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1302. exit $?
  1303. fi
  1304. ## Linux armv4 little-endian uclibc openwrt toolchain thumb instruction set
  1305. #INSTALLDIR=../binaries/Linux/arm/little-endian/uclibc/
  1306. #SUFFIX=-armv4el-openwrt-uclibc-thumb
  1307. #export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1308. #export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1309. #export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1310. #export CC=~/openwrt/staging_dir/toolchain-arm_mpcore+vfp_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/bin/arm-openwrt-linux-gcc
  1311. #export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv4t -mthumb"
  1312. #export FEATURES=full
  1313. #export CFLAGS="$SMALLCC"
  1314. #export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1315. #export THREADS=0
  1316. #
  1317. #make $MAKEFLAGS
  1318. #
  1319. #if [ $? != 0 ]; then
  1320. # echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1321. # exit $?
  1322. #fi
  1323. #
  1324. #rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  1325. #
  1326. #make $REUSEOBJFLAGS $MULTI_NAME
  1327. #
  1328. #if [ $? != 0 ]; then
  1329. # echo Error creating $MULTI_NAME
  1330. # exit $?
  1331. #fi
  1332. # Linux armv7 little-endian uclibc openwrt toolchain thumb 2 instruction set
  1333. INSTALLDIR=../binaries/Linux/arm/little-endian/uclibc/
  1334. SUFFIX=-armv7el-openwrt-uclibc
  1335. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1336. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1337. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1338. export CC=/opt/toolchains/toolchain-arm_mpcore+vfp_gcc-4.8-linaro_uClibc-0.9.33.2_eabi/bin/arm-openwrt-linux-gcc
  1339. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv7 -mthumb"
  1340. export FEATURES=full
  1341. export CFLAGS="$SMALLCC"
  1342. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1343. export THREADS=0
  1344. make $MAKEFLAGS allmulti
  1345. if [ $? != 0 ]; then
  1346. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1347. exit $?
  1348. fi
  1349. #Linux armv4 little-endian uclibc
  1350. INSTALLDIR=../binaries/Linux/arm/little-endian/
  1351. SUFFIX=-armv4el-uclibc
  1352. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1353. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1354. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1355. export CC=/root/cross-compiler-armv4l/bin/armv4l-gcc
  1356. export PLATFORMFLAGS="-pipe"
  1357. export FEATURES=full
  1358. export CFLAGS="$SMALLCC"
  1359. export LDFLAGS="-Wl,-z,norelro -fwhole-program"
  1360. export THREADS=0
  1361. export NOPROCFS=1
  1362. make $MAKEFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti
  1363. if [ $? != 0 ]; then
  1364. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1365. exit $?
  1366. fi
  1367. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1368. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1369. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1370. export LDFLAGS="-Wl,-z,norelro -fwhole-program -static"
  1371. make $REUSEOBJFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti
  1372. if [ $? != 0 ]; then
  1373. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1374. exit $?
  1375. fi
  1376. # mips1 little-endian with openssl 0.9.8 support dreambox toolchain
  1377. INSTALLDIR=../binaries/Linux/mips/little-endian/glibc/
  1378. SUFFIX=-mips1el-glibc-openssl0.9.8-soft-EXPERIMENTAL
  1379. export CRYPTO=openssl_with_aes_soft
  1380. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1381. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1382. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1383. export CC=/opt/simplebuild/toolchains/mipsoe20/bin/mipsel-unknown-linux-gnu-gcc
  1384. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  1385. export FEATURES=full
  1386. export CFLAGS="$SMALLCC"
  1387. export LDFLAGS="$SMALLLD"
  1388. export THREADS=0
  1389. export NOPROCFS=0
  1390. make $MAKEFLAGS allmulti
  1391. if [ $? != 0 ]; then
  1392. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1393. exit $?
  1394. fi
  1395. # mips1 little-endian dreambox toolchain
  1396. INSTALLDIR=../binaries/Linux/mips/little-endian/glibc/
  1397. SUFFIX=-mips1el-glibc
  1398. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1399. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1400. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1401. export CC=/opt/simplebuild/toolchains/mipsoe20/bin/mipsel-unknown-linux-gnu-gcc
  1402. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  1403. export FEATURES=full
  1404. export CFLAGS="$SMALLCC"
  1405. export LDFLAGS="$SMALLLD"
  1406. export THREADS=0
  1407. export CRYPTO=internal
  1408. make $MAKEFLAGS allmulti
  1409. if [ $? != 0 ]; then
  1410. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1411. exit $?
  1412. fi
  1413. # Linux mips1 little-endian uclibc
  1414. INSTALLDIR=../binaries/Linux/mips/little-endian/
  1415. SUFFIX=-mips1el-uclibc
  1416. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1417. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1418. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1419. export CC=/root/cross-compiler-mipsel/bin/mipsel-gcc
  1420. export PLATFORMFLAGS="-pipe"
  1421. export FEATURES=full
  1422. export CFLAGS="$SMALLCC"
  1423. export LDFLAGS="-Wl,-z,norelro -fwhole-program"
  1424. export THREADS=0
  1425. export CRYPTO=internal
  1426. export NOPROCFS=1
  1427. make $MAKEFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti
  1428. if [ $? != 0 ]; then
  1429. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1430. exit $?
  1431. fi
  1432. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1433. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1434. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1435. export LDFLAGS="-Wl,-z,norelro -fwhole-program -static"
  1436. make $REUSEOBJFLAGS GETIFADDRS=musl SAFE_MODE=1 allmulti
  1437. if [ $? != 0 ]; then
  1438. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1439. exit $?
  1440. fi
  1441. # Linux mips16 little endian glibc
  1442. INSTALLDIR=../binaries/Linux/mips/little-endian/glibc/
  1443. SUFFIX=-mips16el-glibc
  1444. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1445. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1446. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1447. export CC=/opt/toolchains/mips32el-mips16-glibc-2.18/usr/bin/mipsel-linux-gcc
  1448. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32 -mips16"
  1449. export FEATURES=full
  1450. export CFLAGS="$SMALLCC"
  1451. export LDFLAGS="$SMALLLD"
  1452. export THREADS=0
  1453. export CRYPTO=internal
  1454. export NOPROCFS=0
  1455. make $MAKEFLAGS allmulti
  1456. if [ $? != 0 ]; then
  1457. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1458. exit $?
  1459. fi
  1460. # Linux mips16 little-endian uclibc
  1461. INSTALLDIR=../binaries/Linux/mips/little-endian/uclibc/
  1462. SUFFIX=-mips16el-uclibc
  1463. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1464. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1465. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1466. export CC=/opt/toolchains/mips32el-mips16-uclibc-0.9.33/bin/mipsel-linux-gcc
  1467. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32 -mips16"
  1468. export FEATURES=full
  1469. export CFLAGS="$SMALLCC"
  1470. export LDFLAGS="$SMALLLD"
  1471. export THREADS=0
  1472. export CRYPTO=internal
  1473. make $MAKEFLAGS allmulti
  1474. if [ $? != 0 ]; then
  1475. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1476. exit $?
  1477. fi
  1478. #Linux PowerPC uclibc OpenWRT toolchain
  1479. INSTALLDIR=../binaries/Linux/ppc/big-endian/
  1480. SUFFIX=-ppc-uclibc
  1481. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1482. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1483. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1484. #export CC=~/openwrt/staging_dir/toolchain-powerpc_405_gcc-4.8-linaro_uClibc-0.9.33.2/bin/powerpc-openwrt-linux-gcc
  1485. export CC=/opt/toolchains/ppc-uclibc0.9.33.2-gcc-4.9.1-binutils2.24/bin/powerpc-linux-gcc
  1486. export PLATFORMFLAGS="-flto=16 -fwhole-program -L/root/cross-compiler-powerpc/lib -L/root/cross-compiler-powerpc/usr/lib"
  1487. export FEATURES=full
  1488. export CFLAGS="$SMALLCC"
  1489. export LDFLAGS="$SMALLLD"
  1490. export THREADS=0
  1491. export CRYPTO=internal
  1492. make $MAKEFLAGS GETIFADDRS=musl allmulti
  1493. if [ $? != 0 ]; then
  1494. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1495. exit $?
  1496. fi
  1497. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1498. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1499. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1500. export LDFLAGS="$SMALLLD -static"
  1501. make $REUSEOBJFLAGS GETIFADDRS=musl allmulti
  1502. if [ $? != 0 ]; then
  1503. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1504. exit $?
  1505. fi
  1506. #Fritzbox 7170 (mips32r2 little-endian) device specific, May or may not run on other devices
  1507. INSTALLDIR=../binaries/Linux/mips/little-endian/
  1508. SUFFIX=-mips32r2el-Fritzbox-71xx-72xx-uclibc
  1509. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1510. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1511. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1512. export CC=/opt/simplebuild/toolchains/fritz71xx/bin/mipsel-linux-uclibc-gcc
  1513. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=4kec -mtune=4kec"
  1514. export FEATURES=full
  1515. export CFLAGS="$SMALLCC"
  1516. export LDFLAGS="$SMALLLD"
  1517. export THREADS=0
  1518. export CRYPTO=internal
  1519. make NOLRESOLV=1 GETIFADDRS=musl $MAKEFLAGS allmulti
  1520. if [ $? != 0 ]; then
  1521. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1522. exit $?
  1523. fi
  1524. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1525. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1526. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1527. export LDFLAGS="$SMALLLD -static"
  1528. make NOLRESOLV=1 GETIFADDRS=musl $REUSEOBJFLAGS allmulti
  1529. if [ $? != 0 ]; then
  1530. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1531. exit $?
  1532. fi
  1533. #Fritzbox 7370 (mips32r2 big-endian) device specific, May or may not run on other devices
  1534. INSTALLDIR=../binaries/Linux/mips/big-endian/
  1535. SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc
  1536. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1537. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1538. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1539. export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc
  1540. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp"
  1541. export FEATURES=full
  1542. export CFLAGS="$SMALLCC"
  1543. export LDFLAGS="$SMALLLD"
  1544. export THREADS=0
  1545. export CRYPTO=internal
  1546. make NOLRESOLV=1 $MAKEFLAGS allmulti
  1547. if [ $? != 0 ]; then
  1548. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1549. exit $?
  1550. fi
  1551. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1552. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1553. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1554. export LDFLAGS="$SMALLLD -static"
  1555. make NOLRESOLV=1 $REUSEOBJFLAGS allmulti
  1556. if [ $? != 0 ]; then
  1557. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1558. exit $?
  1559. fi
  1560. #Fritzbox 7370 (mips32r2 big-endian) device specific with _PEDANTIC, May or may not run on other devices
  1561. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1562. SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-pedantic
  1563. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1564. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1565. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1566. export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc
  1567. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp"
  1568. export FEATURES=full
  1569. export CFLAGS="$SMALLCC -D_PEDANTIC"
  1570. export LDFLAGS="$SMALLLD"
  1571. export THREADS=0
  1572. export CRYPTO=internal
  1573. make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME
  1574. if [ $? != 0 ]; then
  1575. echo Error creating $PROGRAM_NAME
  1576. exit $?
  1577. fi
  1578. #Fritzbox 7370 (mips32r2 big-endian) device specific with simple sockets and some features disabled, May or may not run on other devices
  1579. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1580. SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-simple
  1581. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1582. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1583. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1584. export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc
  1585. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp"
  1586. export FEATURES=full
  1587. export CFLAGS="$SMALLCC -DNO_USER_SWITCH -DSIMPLE_SOCKETS -DNO_PID_FILE -DNO_USER_SWITCH -DNO_USER_SWITCH"
  1588. export LDFLAGS="$SMALLLD"
  1589. export THREADS=0
  1590. export CRYPTO=internal
  1591. make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME
  1592. if [ $? != 0 ]; then
  1593. echo Error creating $PROGRAM_NAME
  1594. exit $?
  1595. fi
  1596. #Fritzbox 7370 (mips32r2 big-endian) device specific inetd start only, May or may not run on other devices
  1597. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1598. SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-inetd
  1599. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1600. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1601. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1602. export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc
  1603. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp"
  1604. export FEATURES=inetd
  1605. export CFLAGS="$SMALLCC"
  1606. export LDFLAGS="$SMALLLD"
  1607. export THREADS=0
  1608. export CRYPTO=internal
  1609. make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME
  1610. if [ $? != 0 ]; then
  1611. echo Error creating $PROGRAM_NAME
  1612. exit $?
  1613. fi
  1614. #Fritzbox 7370 (mips32r2 big-endian) device specific with pthreads, May or may not run on other devices
  1615. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1616. SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-threads
  1617. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1618. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1619. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1620. export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc
  1621. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp"
  1622. export FEATURES=full
  1623. export CFLAGS="$SMALLCC"
  1624. export LDFLAGS="$SMALLLD -lpthread"
  1625. export THREADS=1
  1626. make NOLRESOLV=1 $MAKEFLAGS $PROGRAM_NAME
  1627. if [ $? != 0 ]; then
  1628. echo Error creating $PROGRAM_NAME
  1629. exit $?
  1630. fi
  1631. #Fritzbox 7370 (mips32r2 big-endian) device specific with OpenSSL support, May or may not run on other devices
  1632. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1633. SUFFIX=-mips16-Fritzbox-33xx-73xx-74xx-63xx-64xx-uclibc-openssl0.9.8-soft-EXPERIMENTAL
  1634. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1635. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1636. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1637. export CC=/opt/simplebuild/toolchains/fritz73xxOS62/bin/mips-linux-cc
  1638. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mtune=24kc -mips16 -mdsp"
  1639. export FEATURES=full
  1640. export CFLAGS="$SMALLCC"
  1641. export LDFLAGS="$SMALLLD"
  1642. export THREADS=0
  1643. export CRYPTO=openssl_with_aes_soft
  1644. export OPENSSL_HMAC=0
  1645. make NOLRESOLV=1 $MAKEFLAGS allmulti
  1646. if [ $? != 0 ]; then
  1647. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1648. exit $?
  1649. fi
  1650. unset OPENSSL_HMAC
  1651. #make $MAKEFLAGS CLIENT_NAME=../binaries/Linux/mips/big-endian/uclibc/vlmcs-mips32-uclibc CFLAGS="$SMALL -pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/mips/big-endian/uclibc/vlmcsd-mips32-uclibc CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc && \
  1652. # Linux mips32 big-endian uclibc
  1653. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1654. SUFFIX=-mips32-uclibc
  1655. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1656. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1657. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1658. export CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc
  1659. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32"
  1660. export FEATURES=full
  1661. export CFLAGS="$SMALLCC"
  1662. export LDFLAGS="$SMALLLD"
  1663. export THREADS=0
  1664. export CRYPTO=internal
  1665. make $MAKEFLAGS allmulti
  1666. if [ $? != 0 ]; then
  1667. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1668. exit $?
  1669. fi
  1670. # Linux mips16 big-endian uclibc
  1671. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1672. SUFFIX=-mips16-uclibc
  1673. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1674. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1675. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1676. export CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc
  1677. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  1678. export FEATURES=full
  1679. export CFLAGS="$SMALLCC"
  1680. export LDFLAGS="$SMALLLD"
  1681. export THREADS=0
  1682. export CRYPTO=internal
  1683. make $MAKEFLAGS allmulti
  1684. if [ $? != 0 ]; then
  1685. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1686. exit $?
  1687. fi
  1688. #Atheros ar7xxx/ar9xxx chips with OpenWRT toolchain (mips16 big-endian) device specific, May or may not run on other devices
  1689. INSTALLDIR=../binaries/Linux/mips/big-endian/
  1690. SUFFIX=-mips16-openwrt-atheros-ar7xxx-ar9xxx-uclibc
  1691. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1692. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1693. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1694. export CC=/opt/toolchains/mips-openwrt-linux-uclibc/bin/mips-openwrt-linux-gcc
  1695. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mips16"
  1696. export FEATURES=full
  1697. export CFLAGS="$SMALLCC -DNO_LIMIT"
  1698. export LDFLAGS="-ldl -lpthread $SMALLLD"
  1699. export THREADS=0
  1700. export CRYPTO=internal
  1701. make $MAKEFLAGS allmulti
  1702. if [ $? != 0 ]; then
  1703. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1704. exit $?
  1705. fi
  1706. #Atheros ar7xxx/ar9xxx chips with OpenWRT toolchain (mips16 big-endian) device specific, May or may not run on other devices
  1707. INSTALLDIR=../binaries/Linux/mips/big-endian/
  1708. SUFFIX=-mips16-openwrt-atheros-ar7xxx-ar9xxx-musl
  1709. export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX}
  1710. export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX}
  1711. export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX}
  1712. export CC=/opt/toolchains/mips_34kc_gcc-4.9-linaro_musl-1.1.6-mips16/bin/mips-openwrt-linux-musl-gcc-4.9.2
  1713. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc -mips16"
  1714. export FEATURES=full
  1715. export CFLAGS="$SMALLCC"
  1716. export LDFLAGS="$SMALLLD"
  1717. export THREADS=0
  1718. export CRYPTO=internal
  1719. make $MAKEFLAGS allmulti
  1720. if [ $? != 0 ]; then
  1721. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1722. exit $?
  1723. fi
  1724. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1725. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1726. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1727. export LDFLAGS="$LDFLAGS -static"
  1728. make $REUSEOBJFLAGS allmulti
  1729. if [ $? != 0 ]; then
  1730. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1731. exit $?
  1732. fi
  1733. #Atheros ar7xxx/ar9xxx chips with OpenWRT toolchain (mips32r2 big-endian) device specific, May or may not run on other devices
  1734. INSTALLDIR=../binaries/Linux/mips/big-endian/
  1735. SUFFIX=-mips32r2-openwrt-atheros-ar7xxx-ar9xxx-uclibc
  1736. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  1737. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  1738. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  1739. export CC=/opt/toolchains/mips-openwrt-linux-uclibc/bin/mips-openwrt-linux-gcc
  1740. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=24kc"
  1741. export FEATURES=full
  1742. export CFLAGS="$SMALLCC -DNO_LIMIT"
  1743. export LDFLAGS="-ldl -lpthread $SMALLLD"
  1744. export THREADS=0
  1745. export CRYPTO=internal
  1746. make $MAKEFLAGS allmulti
  1747. if [ $? != 0 ]; then
  1748. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1749. exit $?
  1750. fi
  1751. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1752. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1753. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1754. export LDFLAGS="$LDFLAGS -static"
  1755. make $REUSEOBJFLAGS allmulti
  1756. if [ $? != 0 ]; then
  1757. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1758. exit $?
  1759. fi
  1760. # Linux mips16 big-endian uclibc threads
  1761. INSTALLDIR=../binaries/Linux/mips/big-endian/uclibc/
  1762. SUFFIX=-mips16-uclibc-threads
  1763. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1764. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1765. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1766. export CC=/opt/toolchains/mips32eb-uclibc-0.9.33/usr/bin/mips-linux-cc
  1767. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  1768. export FEATURES=full
  1769. export CFLAGS="$SMALLCC"
  1770. export LDFLAGS="$SMALLLD -lpthread"
  1771. export THREADS=1
  1772. export CRYPTO=internal
  1773. make $MAKEFLAGS $PROGRAM_NAME
  1774. if [ $? != 0 ]; then
  1775. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1776. exit $?
  1777. fi
  1778. # Linux mips32 big-endian glibc
  1779. INSTALLDIR=../binaries/Linux/mips/big-endian/glibc/
  1780. SUFFIX=-mips32-glibc
  1781. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1782. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1783. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1784. export CC=/opt/toolchains/mips32eb-glibc-2.19/usr/bin/mips-linux-cc
  1785. export PLATFORMFLAGS="-flto=16 -fwhole-program"
  1786. export FEATURES=full
  1787. export CFLAGS="$SMALLCC"
  1788. export LDFLAGS="$SMALLLD"
  1789. export THREADS=0
  1790. export CRYPTO=internal
  1791. make $MAKEFLAGS allmulti
  1792. if [ $? != 0 ]; then
  1793. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1794. exit $?
  1795. fi
  1796. # Linux mips16 big-endian glibc
  1797. INSTALLDIR=../binaries/Linux/mips/big-endian/glibc/
  1798. SUFFIX=-mips16-glibc
  1799. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1800. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1801. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1802. export CC=/opt/toolchains/mips32eb-glibc-2.19/usr/bin/mips-linux-cc
  1803. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  1804. export FEATURES=full
  1805. export CFLAGS="$SMALLCC"
  1806. export LDFLAGS="$SMALLLD"
  1807. export THREADS=0
  1808. export CRYPTO=internal
  1809. make $MAKEFLAGS allmulti
  1810. if [ $? != 0 ]; then
  1811. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1812. exit $?
  1813. fi
  1814. #Linux mips32 big-endian musl
  1815. INSTALLDIR=../binaries/Linux/mips/big-endian/
  1816. SUFFIX=-mips32-musl
  1817. export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX}
  1818. export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX}
  1819. export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX}
  1820. export CC=/opt/toolchains/mips32eb-musl/usr/bin/mips-linux-cc
  1821. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32"
  1822. export FEATURES=full
  1823. export CFLAGS="$SMALLCC"
  1824. export LDFLAGS="$SMALLLD"
  1825. export THREADS=0
  1826. export CRYPTO=internal
  1827. export NOPROCFS=0
  1828. export AUXV=1
  1829. make $MAKEFLAGS allmulti
  1830. if [ $? != 0 ]; then
  1831. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1832. exit $?
  1833. fi
  1834. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1835. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1836. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1837. export LDFLAGS="$SMALLLD -static"
  1838. make $REUSEOBJFLAGS allmulti
  1839. if [ $? != 0 ]; then
  1840. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1841. exit $?
  1842. fi
  1843. rm -f *_all.c vlmcsd.o vlmcs.o vlmcsdmulti.o 2> /dev/null
  1844. #Linux mips16 little-endian musl soft-float
  1845. INSTALLDIR=../binaries/Linux/mips/little-endian/
  1846. SUFFIX=-mips16el-musl
  1847. export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX}
  1848. export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX}
  1849. export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX}
  1850. export CC=/opt/toolchains/mips32el-mips16-musl/usr/bin/mipsel-linux-cc
  1851. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  1852. export FEATURES=full
  1853. export CFLAGS="$SMALLCC"
  1854. export LDFLAGS="$SMALLLD"
  1855. export THREADS=0
  1856. export CRYPTO=internal
  1857. export NOPROCFS=0
  1858. export AUXV=1
  1859. make $MAKEFLAGS allmulti
  1860. if [ $? != 0 ]; then
  1861. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1862. exit $?
  1863. fi
  1864. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1865. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1866. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1867. export LDFLAGS="$SMALLLD -static"
  1868. make $REUSEOBJFLAGS allmulti
  1869. if [ $? != 0 ]; then
  1870. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1871. exit $?
  1872. fi
  1873. #Linux mips16 little-endian musl fpu
  1874. INSTALLDIR=../binaries/Linux/mips/little-endian/
  1875. SUFFIX=-mips16el-musl-fpu
  1876. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  1877. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  1878. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  1879. export CC=/opt/toolchains/mips32el-mips16-musl-fpu/usr/bin/mipsel-linux-cc
  1880. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips16"
  1881. export FEATURES=full
  1882. export CFLAGS="$SMALLCC"
  1883. export LDFLAGS="$SMALLLD -static"
  1884. export THREADS=0
  1885. export CRYPTO=internal
  1886. export NOPROCFS=0
  1887. export AUXV=1
  1888. make $MAKEFLAGS allmulti
  1889. if [ $? != 0 ]; then
  1890. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1891. exit $?
  1892. fi
  1893. # Linux x86 uclibc
  1894. INSTALLDIR=../binaries/Linux/intel/uclibc/
  1895. SUFFIX=-x86-uclibc
  1896. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1897. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1898. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1899. export CC=/opt/toolchains/i486-uclibc-0.9.33/bin/i486-linux-gcc
  1900. export PLATFORMFLAGS="-flto=16 -fwhole-program -m32 -march=i486 -mtune=generic"
  1901. export FEATURES=full
  1902. export CFLAGS="$SMALLCC"
  1903. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1904. export THREADS=0
  1905. export CRYPTO=internal
  1906. export NOPROCFS=0
  1907. export AUXV=0
  1908. make $MAKEFLAGS allmulti
  1909. if [ $? != 0 ]; then
  1910. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1911. exit $?
  1912. fi
  1913. #make $MAKEFLAGS CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x64-glibc LDFLAGS="-Wl,--hash-style=gnu" CFLAGS="$SMALL -pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x64-glibc CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc PLATFORMFLAGS="-m64 -mtune=generic"&& \
  1914. # Linux x64 glibc
  1915. INSTALLDIR=../binaries/Linux/intel/glibc/
  1916. SUFFIX=-x64-glibc
  1917. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1918. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1919. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1920. export CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc
  1921. export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic"
  1922. export FEATURES=full
  1923. export CFLAGS="$SMALLCC"
  1924. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1925. export THREADS=0
  1926. export CRYPTO=internal
  1927. make $MAKEFLAGS allmulti
  1928. if [ $? != 0 ]; then
  1929. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1930. exit $?
  1931. fi
  1932. #Linux Sparc32v7 glibc
  1933. INSTALLDIR=../binaries/Linux/sparc/glibc/
  1934. SUFFIX=-sparc32v7-glibc
  1935. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1936. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1937. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1938. export CC=/opt/toolchains/sparc32-glibc-gcc-4.7.4/bin/sparc-buildroot-linux-gnu-gcc
  1939. export PLATFORMFLAGS="-flto=16 -fwhole-program -mcpu=v7"
  1940. export FEATURES=full
  1941. export CFLAGS="$SMALLCC"
  1942. export LDFLAGS="$SMALLLD"
  1943. export THREADS=0
  1944. export CRYPTO=internal
  1945. make $MAKEFLAGS allmulti
  1946. if [ $? != 0 ]; then
  1947. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1948. exit $?
  1949. fi
  1950. #make $MAKEFLAGS ../binaries/Linux/intel/glibc/vlmcsd-x64-glibc-threads CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x64-glibc-threads THREADS=1 LDFLAGS="-Wl,--hash-style=gnu -lpthread" CFLAGS="-pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x64-glibc-threads CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc PLATFORMFLAGS="-m64 -mtune=generic"&& \
  1951. # Linux x64 glibc with threads
  1952. INSTALLDIR=../binaries/Linux/intel/glibc/
  1953. SUFFIX=-x64-glibc-threads
  1954. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1955. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1956. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1957. export CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc
  1958. export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic"
  1959. export FEATURES=full
  1960. export CFLAGS="$SMALLCC"
  1961. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -lpthread"
  1962. export THREADS=1
  1963. export CRYPTO=internal
  1964. make $MAKEFLAGS $PROGRAM_NAME
  1965. if [ $? != 0 ]; then
  1966. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1967. exit $?
  1968. fi
  1969. #make $MAKEFLAGS LDFLAGS="-Wl,--hash-style=gnu" CLIENT_NAME=../binaries/Linux/intel/glibc/vlmcs-x64-glibc-openssl1.0.0-hard-EXPERIMENTAL CRYPTO=openssl_with_aes CFLAGS="$SMALL -pipe -flto=16 -fwhole-program" PROGRAM_NAME=../binaries/Linux/intel/glibc/vlmcsd-x64-glibc-openssl1.0.0-hard-EXPERIMENTAL CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc PLATFORMFLAGS="-m64 -mtune=generic" && \
  1970. # Linux x64 glibc with OpenSSL 1.0.x support
  1971. INSTALLDIR=../binaries/Linux/intel/glibc/
  1972. SUFFIX=-x64-glibc-openssl1.0.0-hard-EXPERIMENTAL
  1973. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  1974. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  1975. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  1976. export CC=/opt/toolchains/x86_64-glibc-2.19/usr/bin/x86_64-linux-gcc
  1977. export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic"
  1978. export FEATURES=full
  1979. export CFLAGS="$SMALLCC"
  1980. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  1981. export THREADS=0
  1982. export CRYPTO=openssl_with_aes
  1983. make $MAKEFLAGS allmulti
  1984. if [ $? != 0 ]; then
  1985. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  1986. exit $?
  1987. fi
  1988. # Linux x64 musl
  1989. INSTALLDIR=../binaries/Linux/intel/
  1990. SUFFIX=-x64-musl
  1991. export PROGRAM_NAME=${INSTALLDIR}musl/vlmcsd${SUFFIX}
  1992. export CLIENT_NAME=${INSTALLDIR}musl/vlmcs${SUFFIX}
  1993. export MULTI_NAME=${INSTALLDIR}musl/vlmcsdmulti${SUFFIX}
  1994. #export CC=/opt/toolchains/x86_64_gcc-4.9-linaro_musl-1.1.6/bin/x86_64-openwrt-linux-musl-gcc-4.9.2
  1995. export CC=/opt/toolchains/x86_64-musl-gcc-5.3.0-binutils-2.25.1/bin/x86_64-Hotbird-linux-musl-gcc.br_real
  1996. export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic"
  1997. export FEATURES=full
  1998. export CFLAGS="$SMALLCC"
  1999. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  2000. export THREADS=0
  2001. export CRYPTO=internal
  2002. export NOPROCFS=0
  2003. export AUXV=1
  2004. make $MAKEFLAGS allmulti
  2005. if [ $? != 0 ]; then
  2006. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  2007. exit $?
  2008. fi
  2009. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  2010. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  2011. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  2012. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu -static"
  2013. make $REUSEOBJFLAGS allmulti
  2014. if [ $? != 0 ]; then
  2015. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  2016. exit $?
  2017. fi
  2018. #make $MAKEFLAGS CC=/opt/toolchains/x86_64-uclibc-0.9.33/bin/x86_64-linux-gcc LDFLAGS="-Wl,--hash-style=gnu" CLIENT_NAME=../binaries/Linux/intel/uclibc/vlmcs-x64-uclibc PROGRAM_NAME=../binaries/Linux/intel/uclibc/vlmcsd-x64-uclibc CFLAGS="$SMALL -flto=16 -fwhole-program -pipe -fno-stack-protector" && \
  2019. # Linux x64 uclibc
  2020. INSTALLDIR=../binaries/Linux/intel/uclibc/
  2021. SUFFIX=-x64-uclibc
  2022. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  2023. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  2024. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  2025. export CC=/opt/toolchains/x86_64-uclibc-0.9.33/bin/x86_64-linux-gcc
  2026. export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -mtune=generic"
  2027. export FEATURES=full
  2028. export CFLAGS="$SMALLCC"
  2029. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  2030. export THREADS=0
  2031. export CRYPTO=internal
  2032. export NOPROCFS=0
  2033. export AUXV=0
  2034. make $MAKEFLAGS allmulti
  2035. if [ $? != 0 ]; then
  2036. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  2037. exit $?
  2038. fi
  2039. # mips32 little-endian DD-WRT toolchain with gcc 4.1.0
  2040. export CC=/opt/simplebuild/toolchains/ddwrt410/bin/mipsel-linux-gcc
  2041. INSTALLDIR=../binaries/Linux/mips/little-endian/
  2042. SUFFIX=-mips32el-ddwrt-gcc$($CC -dumpversion)-uclibc
  2043. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  2044. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  2045. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  2046. export PLATFORMFLAGS="-pipe -mips32"
  2047. export FEATURES=full
  2048. export CFLAGS="$SMALLCC"
  2049. export LDFLAGS="-fwhole-program"
  2050. export THREADS=0
  2051. export CRYPTO=internal
  2052. make $MAKEFLAGS GETIFADDRS=musl CAT=2 SAFE_MODE=1 $PROGRAM_NAME $MULTI_NAME $CLIENT_NAME
  2053. if [ $? != 0 ]; then
  2054. echo Error creating $PROGRAM_NAME, $MULTI_NAME and/or $CLIENT_NAME
  2055. exit $?
  2056. fi
  2057. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  2058. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  2059. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  2060. export LDFLAGS="-fwhole-program -static"
  2061. make $REUSEOBJFLAGS GETIFADDRS=musl CAT=2 SAFE_MODE=1 $PROGRAM_NAME $MULTI_NAME $CLIENT_NAME
  2062. if [ $? != 0 ]; then
  2063. echo Error creating $PROGRAM_NAME, $MULTI_NAME and/or $CLIENT_NAME
  2064. exit $?
  2065. fi
  2066. #Linux mips32 little-endian uclibc
  2067. INSTALLDIR=../binaries/Linux/mips/little-endian/
  2068. SUFFIX=-mips32el-uclibc
  2069. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  2070. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  2071. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  2072. export CC=/opt/toolchains/mips32el-uclibc-0.9.33/bin/mipsel-linux-gcc
  2073. export PLATFORMFLAGS="-flto=16 -fwhole-program -mips32"
  2074. export FEATURES=full
  2075. export CFLAGS="$SMALLCC"
  2076. export LDFLAGS="$SMALLLD"
  2077. export THREADS=0
  2078. export CRYPTO=internal
  2079. make $MAKEFLAGS allmulti
  2080. if [ $? != 0 ]; then
  2081. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  2082. exit $?
  2083. fi
  2084. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  2085. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  2086. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  2087. export LDFLAGS="$SMALLLD -static"
  2088. make $REUSEOBJFLAGS allmulti
  2089. if [ $? != 0 ]; then
  2090. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  2091. exit $?
  2092. fi
  2093. #Linux armv6 hard-float little-endian. Used on Raspberry Pi with Raspbian.
  2094. #The hard-float ABI cannot be combined with thumb.
  2095. #You may wish to use armv5el-thumb instead because the binary is smaller
  2096. INSTALLDIR=../binaries/Linux/arm/little-endian/glibc/
  2097. SUFFIX=-armv6hf-Raspberry-glibc
  2098. export PROGRAM_NAME=${INSTALLDIR}vlmcsd${SUFFIX}
  2099. export CLIENT_NAME=${INSTALLDIR}vlmcs${SUFFIX}
  2100. export MULTI_NAME=${INSTALLDIR}vlmcsdmulti${SUFFIX}
  2101. export CC=/opt/toolchains/armhfv6-glibc-2.19/bin/arm-linux-gcc
  2102. export PLATFORMFLAGS="-flto=16 -fwhole-program -march=armv6zk -mfpu=vfp -mfloat-abi=hard -mtune=arm1176jzf-s"
  2103. export FEATURES=full
  2104. export CFLAGS="$SMALLCC"
  2105. export LDFLAGS="$SMALLLD -Wl,--hash-style=gnu"
  2106. export THREADS=0
  2107. export CRYPTO=internal
  2108. make $MAKEFLAGS allmulti
  2109. if [ $? != 0 ]; then
  2110. echo Error creating $CLIENT_NAME and/or $PROGRAM_NAME
  2111. exit $?
  2112. fi
  2113. # Linux arm big-endian uclibc
  2114. INSTALLDIR=../binaries/Linux/arm/big-endian/
  2115. SUFFIX=-armeb-nslu2-uclibc
  2116. export PROGRAM_NAME=${INSTALLDIR}uclibc/vlmcsd${SUFFIX}
  2117. export CLIENT_NAME=${INSTALLDIR}uclibc/vlmcs${SUFFIX}
  2118. export MULTI_NAME=${INSTALLDIR}uclibc/vlmcsdmulti${SUFFIX}
  2119. export CC=/opt/simplebuild/toolchains/nslu2open/bin/armeb-linux-uclibc-gcc
  2120. export PLATFORMFLAGS="-pipe"
  2121. export FEATURES=full
  2122. export CFLAGS="$SMALLCC"
  2123. export LDFLAGS="-Wl,-z,norelo"
  2124. export THREADS=0
  2125. make $MAKEFLAGS GETIFADDRS=musl SAFE_MODE=1 CAT=2 $CLIENT_NAME $PROGRAM_NAME $MULTI_NAME
  2126. if [ $? != 0 ]; then
  2127. echo Error creating $CLIENT_NAME, $MULTI_NAME and/or $PROGRAM_NAME
  2128. exit $?
  2129. fi
  2130. export PROGRAM_NAME=${INSTALLDIR}static/vlmcsd${SUFFIX}-static
  2131. export CLIENT_NAME=${INSTALLDIR}static/vlmcs${SUFFIX}-static
  2132. export MULTI_NAME=${INSTALLDIR}static/vlmcsdmulti${SUFFIX}-static
  2133. export LDFLAGS="-Wl,-z,norelo -static"
  2134. make $REUSEOBJFLAGS GETIFADDRS=musl SAFE_MODE=1 CAT=2 $CLIENT_NAME $PROGRAM_NAME $MULTI_NAME
  2135. if [ $? != 0 ]; then
  2136. echo Error creating $CLIENT_NAME, $MULTI_NAME and/or $PROGRAM_NAME
  2137. exit $?
  2138. fi
  2139. # Strip off unnecessary stuff from ../binaries
  2140. #find ../binaries -xdev -name 'vlmcs*' -exec /opt/toolchains/mips32el-mips16-glibc-2.18/usr/bin/mipsel-linux-strip -s --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag {} \; 2>/dev/null
  2141. #find ../binaries -xdev -name 'vlmcs*' -exec strip -s --strip-unneeded --remove-section=.note.gnu.gold-version --remove-section=.comment --remove-section=.note --remove-section=.note.gnu.build-id --remove-section=.note.ABI-tag {} \; 2>/dev/null
  2142. find ../binaries -xdev -name 'vlmcs*' ! -name '*-NetBSD-*' ! -name '*-Windows-*' ! -name '*-cygwin-*' ! -name '*-MacOSX-*' ! -name '*-iOS-*' -exec sstrip -z {} \;
  2143. cd ..
  2144. make alldocs
  2145. rm build/*.o
  2146. #cp -p ../binaries/Linux/intel/glibc/vlmcs-x32-glibc /usr/local/bin/vlmcs
  2147. if [ `lsb_release -is` == "Debian" ]; then
  2148. cp -pf binaries/Linux/intel/glibc/vlmcsdmulti-x86-glibc /usr/local/sbin/vlmcsdmulti
  2149. else
  2150. cp -pf binaries/Linux/intel/glibc/vlmcsdmulti-x32-glibc /usr/local/sbin/vlmcsdmulti
  2151. fi
  2152. ln -s vlmcsdmulti /usr/local/sbin/vlmcsd 2>/dev/null
  2153. ln -s ../sbin/vlmcsdmulti /usr/local/bin/vlmcs 2>/dev/null
  2154. mkdir -p /usr/local/man/man1 2>/dev/null
  2155. mkdir -p /usr/local/man/man5 2>/dev/null
  2156. mkdir -p /usr/local/man/man8 2>/dev/null
  2157. mkdir -p /usr/local/man/man7 2>/dev/null
  2158. cp -a man/vlmcs.1 man/vlmcsdmulti.1 /usr/local/man/man1/
  2159. cp -a man/vlmcsd-floppy.7 man/vlmcsd.7 /usr/local/man/man7/
  2160. cp -a man/vlmcsd.8 /usr/local/man/man8/
  2161. cp -a man/vlmcsd.ini.5 /usr/local/man/man5/
  2162. pbzip2 -f -9 /usr/local/man/man7/vlmcsd-floppy.7 /usr/local/man/man5/vlmcsd.ini.5 /usr/local/man/man1/vlmcs.1 /usr/local/man/man1/vlmcsdmulti.1 /usr/local/man/man7/vlmcsd.7 /usr/local/man/man8/vlmcsd.8
  2163. #pbzip2 -f /usr/local/man/man7/vlmcsd.7
  2164. #pbzip2 -f /usr/local/man/man8/vlmcsd.8
  2165. mandb >/dev/null 2>&1