Advertisement
Guest User

Untitled

a guest
Jan 31st, 2015
216
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.72 KB | None | 0 0
  1. #
  2. # contrib.mk
  3. #
  4. # Copyright (C) 2010 - 2012 Creytiv.com
  5. #
  6.  
  7.  
  8. #
  9. # path to external source code
  10. #
  11.  
  12. SOURCE_PATH := $(shell pwd)
  13.  
  14. LIBRE_PATH := $(SOURCE_PATH)/re
  15. LIBREM_PATH := $(SOURCE_PATH)/rem
  16. BARESIP_PATH := $(SOURCE_PATH)/baresip
  17.  
  18.  
  19. #
  20. # tools and SDK
  21. #
  22.  
  23. # Auto-detect the latest SDK
  24. ifeq ($(SDK_VER),)
  25. SDK_VER := $(shell xcrun -find -sdk iphoneos --show-sdk-version)
  26. endif
  27. ifeq ($(SDK_VER),)
  28. $(warning no iPhone SDK detected)
  29. endif
  30.  
  31. SDK_MAJOR := $(shell echo $(SDK_VER) | cut -d'.' -f 1)
  32. SDK_MINOR := $(shell echo $(SDK_VER) | cut -d'.' -f 2)
  33. SDK_ARM := $(shell xcrun -find -sdk iphoneos --show-sdk-path)
  34. SDK_SIM := $(shell xcrun -find -sdk iphonesimulator --show-sdk-path)
  35. CC_ARM := $(shell xcrun -find -sdk iphoneos gcc)
  36. CC_SIM := $(shell xcrun -find -sdk iphonesimulator gcc)
  37.  
  38. CONTRIB_DIR := $(PWD)/contrib
  39. CONTRIB_AARCH64 := $(CONTRIB_DIR)/aarch64
  40. CONTRIB_AMD64 := $(CONTRIB_DIR)/x86_64
  41. CONTRIB_ARMV7 := $(CONTRIB_DIR)/armv7
  42. CONTRIB_ARMV7S := $(CONTRIB_DIR)/armv7s
  43. CONTRIB_I386 := $(CONTRIB_DIR)/i386
  44. CONTRIB_FAT := $(CONTRIB_DIR)/fat
  45.  
  46. BUILD_DIR := $(PWD)/build
  47. BUILD_AARCH64 := $(BUILD_DIR)/aarch64
  48. BUILD_AMD64 := $(BUILD_DIR)/x86_64
  49. BUILD_ARMV7 := $(BUILD_DIR)/armv7
  50. BUILD_ARMV7S := $(BUILD_DIR)/armv7s
  51. BUILD_I386 := $(BUILD_DIR)/i386
  52. BUILD_FAT := $(BUILD_DIR)/fat
  53.  
  54. ARMROOT := $(SDK_ARM)/usr
  55. ARMROOT_ALT := $(CONTRIB_FAT)
  56. SIMROOT := $(SDK_SIM)/usr
  57. SIMROOT_ALT := $(CONTRIB_FAT)
  58.  
  59. EXTRA_CFLAGS := -DIPHONE -pipe -no-cpp-precomp -isysroot $(SDK_ARM) -I/Users/jordi/Developer/baresip-ios/openssl/include
  60. EXTRA_CFLAGS_SIM := -DIPHONE -pipe -no-cpp-precomp -isysroot $(SDK_SIM)
  61. EXTRA_CFLAGS_AARCH64 := -arch aarch64 -I$(CONTRIB_AARCH64)/include $(EXTRA_CFLAGS)
  62. EXTRA_CFLAGS_AMD64 := -arch x86_64 -I$(CONTRIB_AMD64)/include $(EXTRA_CFLAGS)
  63. EXTRA_CFLAGS_ARMV7 := -arch armv7 -I$(CONTRIB_ARMV7)/include $(EXTRA_CFLAGS)
  64. EXTRA_CFLAGS_ARMV7s := -arch armv7s -I$(CONTRIB_ARMV7)/include $(EXTRA_CFLAGS)
  65. EXTRA_CFLAGS_I386 := -arch i386 -I$(CONTRIB_I386)/include $(EXTRA_CFLAGS_SIM)
  66.  
  67. EXTRA_LFLAGS := -L$(CONTRIB_FAT)/lib -isysroot $(SDK_ARM) -L/Users/jordi/Developer/baresip-ios/openssl/lib
  68. EXTRA_LFLAGS_SIM := -L$(CONTRIB_FAT)/lib -isysroot $(SDK_SIM)
  69. EXTRA_LFLAGS_AARCH64 := -arch aarch64 -L$(CONTRIB_AARCH64)/lib $(EXTRA_LFLAGS)
  70. EXTRA_LFLAGS_AMD64 := -arch x86_64 -L$(CONTRIB_AMD64)/lib $(EXTRA_LFLAGS)
  71. EXTRA_LFLAGS_ARMV7 := -arch armv7 -L$(CONTRIB_ARMV7)/lib $(EXTRA_LFLAGS)
  72. EXTRA_LFLAGS_ARMV7s := -arch armv7s -L$(CONTRIB_ARMV7)/lib $(EXTRA_LFLAGS)
  73. EXTRA_LFLAGS_I386 := -arch i386 -L$(CONTRIB_I386)/lib $(EXTRA_LFLAGS_SIM)
  74.  
  75.  
  76. EXTRA_I386 := \
  77. EXTRA_CFLAGS='-D__DARWIN_ONLY_UNIX_CONFORMANCE \
  78. -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 \
  79. -miphoneos-version-min=5.1 \
  80. -Wno-cast-align -Wno-shorten-64-to-32 \
  81. -Wno-aggregate-return \
  82. -arch i386 \
  83. -isysroot $(SDK_SIM) \
  84. -I$(CONTRIB_I386)/include \
  85. -I$(CONTRIB_I386)/include/rem' \
  86. OBJCFLAGS='-fobjc-abi-version=2 -fobjc-legacy-dispatch' \
  87. EXTRA_LFLAGS='-miphoneos-version-min=5.1 -arch i386 -L$(CONTRIB_FAT)/lib \
  88. -isysroot $(SDK_SIM)'
  89.  
  90. EXTRA_AMD64 := \
  91. EXTRA_CFLAGS='-D__DARWIN_ONLY_UNIX_CONFORMANCE \
  92. -D__IPHONE_OS_VERSION_MIN_REQUIRED=30000 \
  93. -miphoneos-version-min=7.1 \
  94. -Wno-cast-align -Wno-shorten-64-to-32 \
  95. -Wno-aggregate-return \
  96. -arch x86_64 \
  97. -isysroot $(SDK_SIM) \
  98. -I$(CONTRIB_AMD64)/include \
  99. -I$(CONTRIB_AMD64)/include/rem' \
  100. OBJCFLAGS='-fobjc-abi-version=2 -fobjc-legacy-dispatch' \
  101. EXTRA_LFLAGS='-miphoneos-version-min=7.1 -arch x86_64 -L$(CONTRIB_FAT)/lib \
  102. -isysroot $(SDK_SIM)'
  103.  
  104.  
  105. EXTRA_AARCH64 := \
  106. EXTRA_CFLAGS='-arch arm64 \
  107. -I$(CONTRIB_AARCH64)/include \
  108. -I$(CONTRIB_AARCH64)/include/rem \
  109. -Wno-cast-align -Wno-shorten-64-to-32 \
  110. -Wno-aggregate-return \
  111. -isysroot $(SDK_ARM) -DHAVE_AARCH64' \
  112. EXTRA_LFLAGS='-arch arm64 -mcpu=generic -marm \
  113. -L$(CONTRIB_FAT)/lib -isysroot $(SDK_ARM)' \
  114. OS=darwin ARCH=arm64 CROSS_COMPILE=$(ARM_MACHINE) \
  115. HAVE_ARM64=1
  116.  
  117. EXTRA_ARMV7 := \
  118. EXTRA_CFLAGS='-arch armv7 \
  119. -I$(CONTRIB_ARMV7)/include \
  120. -I$(CONTRIB_ARMV7)/include/rem \
  121. -Wno-cast-align -Wno-shorten-64-to-32 \
  122. -Wno-aggregate-return \
  123. -isysroot $(SDK_ARM) -DHAVE_NEON' \
  124. EXTRA_LFLAGS='-arch armv7 -mcpu=cortex-a8 -mfpu=neon -marm \
  125. -L$(CONTRIB_FAT)/lib -isysroot $(SDK_ARM)' \
  126. OS=darwin ARCH=armv7 CROSS_COMPILE=$(ARM_MACHINE) \
  127. HAVE_NEON=1
  128.  
  129. EXTRA_ARMV7S := \
  130. EXTRA_CFLAGS='-arch armv7s \
  131. -I$(CONTRIB_ARMV7S)/include \
  132. -I$(CONTRIB_ARMV7S)/include/rem \
  133. -Wno-cast-align -Wno-shorten-64-to-32 \
  134. -Wno-aggregate-return \
  135. -isysroot $(SDK_ARM) -DHAVE_NEON' \
  136. EXTRA_LFLAGS='-arch armv7s -mcpu=cortex-a8 -mfpu=neon -marm \
  137. -L$(CONTRIB_FAT)/lib -isysroot $(SDK_ARM)' \
  138. OS=darwin ARCH=armv7s CROSS_COMPILE=$(ARM_MACHINE) \
  139. HAVE_NEON=1
  140.  
  141.  
  142. #
  143. # common targets
  144. #
  145.  
  146. .PHONY: contrib
  147. contrib: baresip
  148.  
  149.  
  150. $(BUILD_AARCH64) $(BUILD_ARMV7) $(BUILD_ARMV7S) $(BUILD_I386) $(BUILD_AMD64) $(BUILD_FAT):
  151. @mkdir -p $@
  152.  
  153. $(CONTRIB_FAT) $(CONTRIB_FAT)/lib:
  154. @mkdir -p $@
  155.  
  156.  
  157. #
  158. # libre
  159. #
  160.  
  161. LIBRE_BUILD_FLAGS := \
  162. USE_OPENSSL=1 USE_ZLIB=1 OPT_SPEED=1
  163.  
  164. libre: $(CONTRIB_FAT)/lib
  165. @rm -f $(LIBRE_PATH)/libre.*
  166. @make -sC $(LIBRE_PATH) CC='$(CC_ARM)' \
  167. BUILD=$(BUILD_AARCH64)/libre \
  168. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  169. $(LIBRE_BUILD_FLAGS) $(EXTRA_AARCH64) \
  170. PREFIX= DESTDIR=$(CONTRIB_AARCH64) \
  171. all install
  172.  
  173. @rm -f $(LIBRE_PATH)/libre.*
  174. @make -sC $(LIBRE_PATH) CC='$(CC_ARM)' \
  175. BUILD=$(BUILD_ARMV7)/libre \
  176. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  177. $(LIBRE_BUILD_FLAGS) $(EXTRA_ARMV7) \
  178. PREFIX= DESTDIR=$(CONTRIB_ARMV7) \
  179. all install
  180.  
  181. @rm -f $(LIBRE_PATH)/libre.*
  182. @make -sC $(LIBRE_PATH) CC='$(CC_ARM)' \
  183. BUILD=$(BUILD_ARMV7S)/libre \
  184. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  185. $(LIBRE_BUILD_FLAGS) $(EXTRA_ARMV7S) \
  186. PREFIX= DESTDIR=$(CONTRIB_ARMV7S) \
  187. all install
  188.  
  189.  
  190. @rm -f $(LIBRE_PATH)/libre.*
  191. @make -sC $(LIBRE_PATH) CC='$(CC_SIM)' \
  192. BUILD=$(BUILD_I386)/libre \
  193. SYSROOT=$(SIMROOT) SYSROOT_ALT=$(SIMROOT_ALT) \
  194. $(LIBRE_BUILD_FLAGS) $(EXTRA_I386) \
  195. PREFIX= DESTDIR=$(CONTRIB_I386) \
  196. all install
  197.  
  198. @rm -f $(LIBRE_PATH)/libre.*
  199. @make -sC $(LIBRE_PATH) CC='$(CC_SIM)' \
  200. BUILD=$(BUILD_AMD64)/libre \
  201. SYSROOT=$(SIMROOT) SYSROOT_ALT=$(SIMROOT_ALT) \
  202. $(LIBRE_BUILD_FLAGS) $(EXTRA_AMD64) \
  203. PREFIX= DESTDIR=$(CONTRIB_AMD64) \
  204. all install
  205.  
  206.  
  207.  
  208. @rm -f $(LIBRE_PATH)/libre.*
  209.  
  210. @lipo \
  211. -arch x86_64 $(CONTRIB_AMD64)/lib/libre.a \
  212. -arch i386 $(CONTRIB_I386)/lib/libre.a \
  213. -arch arm64 $(CONTRIB_AARCH64)/lib/libre.a \
  214. -arch armv7 $(CONTRIB_ARMV7)/lib/libre.a \
  215. -arch armv7s $(CONTRIB_ARMV7S)/lib/libre.a \
  216. -create -output $(CONTRIB_FAT)/lib/libre.a
  217.  
  218.  
  219. #
  220. # librem
  221. #
  222.  
  223. LIBREM_BUILD_FLAGS := \
  224. OPT_SPEED=1
  225.  
  226. librem: libre
  227. @rm -f $(LIBREM_PATH)/librem.*
  228. @make -sC $(LIBREM_PATH) CC='$(CC_ARM)' \
  229. BUILD=$(BUILD_AARCH64)/librem \
  230. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  231. $(LIBREM_BUILD_FLAGS) $(EXTRA_AARCH64) \
  232. PREFIX= DESTDIR=$(CONTRIB_AARCH64) \
  233. all install
  234.  
  235. @rm -f $(LIBREM_PATH)/librem.*
  236. @make -sC $(LIBREM_PATH) CC='$(CC_ARM)' \
  237. BUILD=$(BUILD_ARMV7)/librem \
  238. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  239. $(LIBREM_BUILD_FLAGS) $(EXTRA_ARMV7) \
  240. PREFIX= DESTDIR=$(CONTRIB_ARMV7) \
  241. all install
  242.  
  243. @rm -f $(LIBREM_PATH)/librem.*
  244. @make -sC $(LIBREM_PATH) CC='$(CC_ARM)' \
  245. BUILD=$(BUILD_ARMV7S)/librem \
  246. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  247. $(LIBREM_BUILD_FLAGS) $(EXTRA_ARMV7S) \
  248. PREFIX= DESTDIR=$(CONTRIB_ARMV7S) \
  249. all install
  250.  
  251.  
  252. @rm -f $(LIBREM_PATH)/librem.*
  253. @make -sC $(LIBREM_PATH) CC='$(CC_SIM)' \
  254. BUILD=$(BUILD_I386)/librem \
  255. SYSROOT=$(SIMROOT) SYSROOT_ALT=$(SIMROOT_ALT) \
  256. $(LIBREM_BUILD_FLAGS) $(EXTRA_I386) \
  257. PREFIX= DESTDIR=$(CONTRIB_I386) \
  258. all install
  259.  
  260. @rm -f $(LIBREM_PATH)/librem.*
  261. @make -sC $(LIBREM_PATH) CC='$(CC_SIM)' \
  262. BUILD=$(BUILD_AMD64)/librem \
  263. SYSROOT=$(SIMROOT) SYSROOT_ALT=$(SIMROOT_ALT) \
  264. $(LIBREM_BUILD_FLAGS) $(EXTRA_AMD64) \
  265. PREFIX= DESTDIR=$(CONTRIB_AMD64) \
  266. all install
  267.  
  268.  
  269. @rm -f $(LIBREM_PATH)/librem.*
  270.  
  271. @lipo \
  272. -arch x86_64 $(CONTRIB_AMD64)/lib/librem.a \
  273. -arch i386 $(CONTRIB_I386)/lib/librem.a \
  274. -arch arm64 $(CONTRIB_AARCH64)/lib/librem.a \
  275. -arch armv7 $(CONTRIB_ARMV7)/lib/librem.a \
  276. -arch armv7s $(CONTRIB_ARMV7S)/lib/librem.a \
  277. -create -output $(CONTRIB_FAT)/lib/librem.a
  278.  
  279.  
  280. #
  281. # baresip
  282. #
  283.  
  284. MODULES='g711 audiounit coreaudio avcapture opengles srtp stdio stun turn ice auloop contact menu natbd presence syslog vidloop'
  285.  
  286. BARESIP_BUILD_FLAGS := \
  287. STATIC=1 OPT_SPEED=1 \
  288. USE_OPENSSL= USE_ZLIB= \
  289. MOD_AUTODETECT= \
  290. USE_FFMPEG=
  291.  
  292. BARESIP_BUILD_FLAGS_I386 := \
  293. $(BARESIP_BUILD_FLAGS) \
  294. EXTRA_MODULES=$(MODULES)
  295.  
  296. BARESIP_BUILD_FLAGS_AMD64 := \
  297. $(BARESIP_BUILD_FLAGS) \
  298. EXTRA_MODULES=$(MODULES)
  299.  
  300. BARESIP_BUILD_FLAGS_AARCH64 := \
  301. $(BARESIP_BUILD_FLAGS) \
  302. EXTRA_MODULES=$(MODULES)
  303.  
  304. BARESIP_BUILD_FLAGS_ARMV7 := \
  305. $(BARESIP_BUILD_FLAGS) \
  306. EXTRA_MODULES=$(MODULES)
  307.  
  308.  
  309. baresip: librem libre
  310. @rm -f $(BARESIP_PATH)/src/static.c ../baresip/libbaresip.*
  311. @make -sC $(BARESIP_PATH) CC='$(CC_ARM)' \
  312. BUILD=$(BUILD_AARCH64)/baresip \
  313. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  314. $(BARESIP_BUILD_FLAGS_AARCH64) $(EXTRA_AARCH64) \
  315. PREFIX= DESTDIR=$(CONTRIB_AARCH64) \
  316. install-static
  317.  
  318. @rm -f $(BARESIP_PATH)/src/static.c ../baresip/libbaresip.*
  319. @make -sC $(BARESIP_PATH) CC='$(CC_ARM)' \
  320. BUILD=$(BUILD_ARMV7)/baresip \
  321. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  322. $(BARESIP_BUILD_FLAGS_ARMV7) $(EXTRA_ARMV7) \
  323. PREFIX= DESTDIR=$(CONTRIB_ARMV7) \
  324. install-static
  325.  
  326. @rm -f $(BARESIP_PATH)/src/static.c ../baresip/libbaresip.*
  327. @make -sC $(BARESIP_PATH) CC='$(CC_ARM)' \
  328. BUILD=$(BUILD_ARMV7S)/baresip \
  329. SYSROOT=$(ARMROOT) SYSROOT_ALT=$(ARMROOT_ALT) \
  330. $(BARESIP_BUILD_FLAGS_ARMV7) $(EXTRA_ARMV7S) \
  331. PREFIX= DESTDIR=$(CONTRIB_ARMV7S) \
  332. install-static
  333.  
  334.  
  335. @rm -f $(BARESIP_PATH)/src/static.c ../baresip/libbaresip.*
  336. @make -sC $(BARESIP_PATH) CC='$(CC_SIM)' \
  337. BUILD=$(BUILD_I386)/baresip \
  338. SYSROOT=$(SIMROOT) SYSROOT_ALT=$(SIMROOT_ALT) \
  339. $(BARESIP_BUILD_FLAGS_I386) $(EXTRA_I386) \
  340. PREFIX= DESTDIR=$(CONTRIB_I386) \
  341. install-static
  342.  
  343. @rm -f $(BARESIP_PATH)/src/static.c ../baresip/libbaresip.*
  344. @make -sC $(BARESIP_PATH) CC='$(CC_SIM)' \
  345. BUILD=$(BUILD_AMD64)/baresip \
  346. SYSROOT=$(SIMROOT) SYSROOT_ALT=$(SIMROOT_ALT) \
  347. $(BARESIP_BUILD_FLAGS_AMD64) $(EXTRA_AMD64) \
  348. PREFIX= DESTDIR=$(CONTRIB_AMD64) \
  349. install-static
  350.  
  351.  
  352. @lipo \
  353. -arch x86_64 $(CONTRIB_AMD64)/lib/libbaresip.a \
  354. -arch i386 $(CONTRIB_I386)/lib/libbaresip.a \
  355. -arch arm64 $(CONTRIB_AARCH64)/lib/libbaresip.a \
  356. -arch armv7 $(CONTRIB_ARMV7)/lib/libbaresip.a \
  357. -arch armv7s $(CONTRIB_ARMV7S)/lib/libbaresip.a \
  358. -create -output $(CONTRIB_FAT)/lib/libbaresip.a
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement