Makefile 86 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901
  1. #
  2. # libopenmpt and openmpt123 GNU Makefile
  3. #
  4. # Authors: Joern Heusipp
  5. # OpenMPT Devs
  6. #
  7. # The OpenMPT source code is released under the BSD license.
  8. # Read LICENSE for more details.
  9. #
  10. #
  11. # Supported parameters:
  12. #
  13. #
  14. # Build configuration (provide on each `make` invocation):
  15. #
  16. # CONFIG=[gcc|clang|mingw64-win32|mingw64-win64|emscripten|emscripten-old] (default: CONFIG=)
  17. #
  18. # Build configurations can override or change defaults of other build options.
  19. # See below and in `build/make/` for details.
  20. #
  21. #
  22. # Compiler options (environment variables):
  23. #
  24. # CC
  25. # CXX
  26. # LD
  27. # AR
  28. # CPPFLAGS
  29. # CXXFLAGS
  30. # CFLAGS
  31. # LDFLAGS
  32. # LDLIBS
  33. # ARFLAGS
  34. # PKG_CONFIG
  35. #
  36. # CXXSTDLIB_PCLIBSPRIVATE C++ standard library (or libraries) required for
  37. # static linking. This will be put in the pkg-config file
  38. # libopenmpt.pc Libs.private field and used for nothing else.
  39. #
  40. #
  41. #
  42. # Build flags (provide on each `make` invocation) (defaults are shown):
  43. #
  44. # DYNLINK=1 Dynamically link examples and openmpt123 against libopenmpt
  45. # SHARED_LIB=1 Build shared library
  46. # STATIC_LIB=1 Build static library
  47. # EXAMPLES=1 Build examples
  48. # OPENMPT123=1 Build openmpt123
  49. # IN_OPENMPT=0 Build in_openmpt (WinAMP 2.x plugin)
  50. # XMP_OPENMPT=0 Build xmp-openmpt (XMPlay plugin)
  51. # SHARED_SONAME=1 Set SONAME of shared library
  52. # DEBUG=0 Build debug binaries without optimization and with symbols
  53. # OPTIMIZE=1 Build optimized binaries
  54. # OPTIMIZE_SIZE=0 Build size-optimized binaries
  55. # OPTIMIZE_LTO=0 Build with link-time-optimizations
  56. # TEST=1 Include test suite in default target.
  57. # ONLY_TEST=0 Only build the test suite.
  58. # STRICT=0 Treat warnings as errors.
  59. # MODERN=0 Pass more modern compiler options.
  60. # STDCXX=c++17 C++ standard version (only for GCC and clang)
  61. # CHECKED=0 Enable run-time assertions.
  62. # CHECKED_ADDRESS=0 Enable address sanitizer
  63. # CHECKED_UNDEFINED=0 Enable undefined behaviour sanitizer
  64. #
  65. #
  66. # Build flags for libopenmpt (provide on each `make` invocation)
  67. # (defaults are 0):
  68. #
  69. # NO_ZLIB=1 Avoid using zlib, even if found
  70. # NO_MPG123=1 Avoid using libmpg123, even if found
  71. # NO_OGG=1 Avoid using libogg, even if found
  72. # NO_VORBIS=1 Avoid using libvorbis, even if found
  73. # NO_VORBISFILE=1 Avoid using libvorbisfile, even if found
  74. #
  75. # LOCAL_ZLIB=1 Build local copy of zlib, even if found
  76. # LOCAL_MPG123=1 Build local copy of libmpg123, even if found
  77. # LOCAL_OGG=1 Build local copy of libogg, even if found
  78. # LOCAL_VORBIS=1 Build local copy of libvorbis, even if found
  79. #
  80. # NO_MINIZ=1 Do not fallback to miniz
  81. # NO_MINIMP3=1 Do not fallback to minimp3
  82. # NO_STBVORBIS=1 Do not fallback to stb_vorbis
  83. #
  84. # USE_ALLEGRO42=1 Use liballegro 4.2 (DJGPP only)
  85. # BUNDLED_ALLEGRO42=1 Use liballegro 4.2 in libopenmpt source tree (DJGPP only)
  86. #
  87. # Build flags for libopenmpt examples and openmpt123
  88. # (provide on each `make` invocation)
  89. # (defaults are 0):
  90. #
  91. # NO_PORTAUDIO=1 Avoid using PortAudio, even if found
  92. # NO_PORTAUDIOCPP=1 Avoid using PortAudio C++, even if found
  93. #
  94. # Build flags for openmpt123 (provide on each `make` invocation)
  95. # (defaults are 0):
  96. #
  97. # NO_PULSEAUDIO=1 Avoid using PulseAudio, even if found
  98. # NO_SDL2=1 Avoid using SDL2, even if found
  99. # NO_FLAC=1 Avoid using FLAC, even if found
  100. # NO_SNDFILE=1 Avoid using libsndfile, even if found
  101. #
  102. #
  103. # Install options (provide on each `make install` invocation)
  104. #
  105. # PREFIX (e.g.: PREFIX=$HOME/opt, default: PREFIX=/usr/local)
  106. # DESTDIR (e.g.: DESTDIR=bin/dest, default: DESTDIR=)
  107. #
  108. #
  109. # Verbosity:
  110. #
  111. # QUIET=[0,1] (default: QUIET=0)
  112. # VERBOSE=[0,1,2] (default: VERBOSE=0)
  113. #
  114. #
  115. # Supported targets:
  116. #
  117. # make clean
  118. # make [all]
  119. # make doc
  120. # make check
  121. # make dist
  122. # make dist-doc
  123. # make install
  124. # make install-doc
  125. #
  126. .PHONY: all
  127. all:
  128. INFO = @echo
  129. SILENT = @
  130. VERYSILENT = @
  131. ifeq ($(VERBOSE),2)
  132. INFO = @true
  133. SILENT =
  134. VERYSILENT =
  135. endif
  136. ifeq ($(VERBOSE),1)
  137. INFO = @true
  138. SILENT =
  139. VERYSILENT = @
  140. endif
  141. ifeq ($(QUIET),1)
  142. INFO = @true
  143. SILENT = @
  144. VERYSILENT = @
  145. endif
  146. # general settings
  147. DYNLINK=1
  148. SHARED_LIB=1
  149. STATIC_LIB=1
  150. EXAMPLES=1
  151. FUZZ=0
  152. SHARED_SONAME=1
  153. DEBUG=0
  154. OPTIMIZE=1
  155. OPTIMIZE_SIZE=0
  156. OPTIMIZE_LTO=0
  157. TEST=1
  158. ONLY_TEST=0
  159. SOSUFFIX=.so
  160. SOSUFFIXWINDOWS=0
  161. NO_SHARED_LINKER_FLAG=0
  162. OPENMPT123=1
  163. IN_OPENMPT=0
  164. XMP_OPENMPT=0
  165. MODERN=0
  166. STRICT=0
  167. FORCE_UNIX_STYLE_COMMANDS=0
  168. CHECKED=0
  169. CHECKED_ADDRESS=0
  170. CHECKED_UNDEFINED=0
  171. REQUIRES_RUNPREFIX=0
  172. # get commandline or defaults
  173. CPPFLAGS := $(CPPFLAGS)
  174. CXXFLAGS := $(CXXFLAGS)
  175. CFLAGS := $(CFLAGS)
  176. LDFLAGS := $(LDFLAGS)
  177. LDLIBS := $(LDLIBS)
  178. ARFLAGS := $(ARFLAGS)
  179. PC_LIBS_PRIVATE := $(PC_LIBS_PRIVATE)
  180. PREFIX := $(PREFIX)
  181. ifeq ($(PREFIX),)
  182. PREFIX := /usr/local
  183. endif
  184. MANDIR ?= $(PREFIX)/share/man
  185. #DESTDIR := $(DESTDIR)
  186. #ifeq ($(DESTDIR),)
  187. #DESTDIR := bin/dest
  188. #endif
  189. # version
  190. include libopenmpt/libopenmpt_version.mk
  191. LIBOPENMPT_SO_VERSION=$(LIBOPENMPT_LTVER_CURRENT)
  192. # host setup
  193. ifneq ($(MSYSTEM)x,x)
  194. HOST=unix
  195. HOST_FLAVOUR=
  196. TOOLCHAIN_SUFFIX=
  197. CPPCHECK = cppcheck
  198. MKDIR_P = mkdir -p
  199. RM = rm -f
  200. RMTREE = rm -rf
  201. INSTALL = install
  202. INSTALL_MAKE_DIR = install -d
  203. INSTALL_DIR = cp -r -v
  204. FIXPATH = $1
  205. HOST_FLAVOUR=MSYS2
  206. NUMTHREADS:=$(shell nproc)
  207. else ifeq ($(OS),Windows_NT)
  208. HOST=windows
  209. HOST_FLAVOUR=
  210. TOOLCHAIN_SUFFIX=
  211. CPPCHECK = cppcheck
  212. MKDIR_P = mkdir
  213. RM = del /q /f
  214. RMTREE = del /q /f /s
  215. INSTALL = echo install
  216. INSTALL_MAKE_DIR = echo install
  217. INSTALL_DIR = echo install
  218. FIXPATH = $(subst /,\,$1)
  219. NUMTHREADS:=$(NUMBER_OF_PROCESSORS)
  220. else
  221. HOST=unix
  222. HOST_FLAVOUR=
  223. TOOLCHAIN_SUFFIX=
  224. CPPCHECK = cppcheck
  225. MKDIR_P = mkdir -p
  226. RM = rm -f
  227. RMTREE = rm -rf
  228. INSTALL = install
  229. INSTALL_MAKE_DIR = install -d
  230. INSTALL_DIR = cp -r -v
  231. FIXPATH = $1
  232. UNAME_S:=$(shell uname -s)
  233. ifeq ($(UNAME_S),Darwin)
  234. HOST_FLAVOUR=MACOSX
  235. endif
  236. ifeq ($(UNAME_S),Linux)
  237. HOST_FLAVOUR=LINUX
  238. endif
  239. ifeq ($(UNAME_S),FreeBSD)
  240. HOST_FLAVOUR=FREEBSD
  241. endif
  242. ifeq ($(UNAME_S),OpenBSD)
  243. HOST_FLAVOUR=OPENBSD
  244. endif
  245. ifeq ($(UNAME_S),Haiku)
  246. HOST_FLAVOUR=HAIKU
  247. endif
  248. ifeq ($(HOST_FLAVOUR),LINUX)
  249. NUMTHREADS:=$(shell nproc)
  250. else
  251. NUMTHREADS:=1
  252. endif
  253. endif
  254. # early build setup
  255. BINDIR_MADE:=$(shell $(MKDIR_P) bin)
  256. # compiler setup
  257. PKG_CONFIG ?= pkg-config
  258. ifeq ($(CONFIG)x,x)
  259. include build/make/config-defaults.mk
  260. else
  261. include build/make/config-$(CONFIG).mk
  262. endif
  263. ifeq ($(FORCE_UNIX_STYLE_COMMANDS),1)
  264. MKDIR_P = mkdir -p
  265. RM = rm -f
  266. RMTREE = rm -rf
  267. endif
  268. # build setup
  269. ifeq ($(SOSUFFIXWINDOWS),1)
  270. LIBOPENMPT_SONAME=libopenmpt-$(LIBOPENMPT_SO_VERSION)$(SOSUFFIX)
  271. else
  272. LIBOPENMPT_SONAME=libopenmpt$(SOSUFFIX).$(LIBOPENMPT_SO_VERSION)
  273. endif
  274. INSTALL_PROGRAM = $(INSTALL) -m 0755
  275. INSTALL_DATA = $(INSTALL) -m 0644
  276. INSTALL_LIB = $(INSTALL) -m 0644
  277. INSTALL_DATA_DIR = $(INSTALL_DIR)
  278. INSTALL_MAKE_DIR += -m 0755
  279. CPPFLAGS += -Isrc -Icommon -I.
  280. ifeq ($(XMP_OPENMPT),1)
  281. CPPFLAGS += -Iinclude/pugixml/src
  282. endif
  283. ifeq ($(MPT_COMPILER_GENERIC),1)
  284. CXXFLAGS +=
  285. CFLAGS +=
  286. LDFLAGS +=
  287. LDLIBS +=
  288. ARFLAGS +=
  289. ifeq ($(DEBUG),1)
  290. CPPFLAGS += -DMPT_BUILD_DEBUG
  291. CXXFLAGS += -g
  292. CFLAGS += -g
  293. else
  294. ifeq ($(OPTIMIZE),1)
  295. CXXFLAGS += -O
  296. CFLAGS += -O
  297. endif
  298. endif
  299. ifeq ($(CHECKED),1)
  300. CPPFLAGS += -DMPT_BUILD_CHECKED
  301. CXXFLAGS += -g
  302. CFLAGS += -g
  303. endif
  304. CXXFLAGS += -Wall
  305. CFLAGS += -Wall
  306. else
  307. ifeq ($(MPT_COMPILER_NOVISIBILITY),1)
  308. CXXFLAGS +=
  309. CFLAGS +=
  310. else
  311. CXXFLAGS += -fvisibility=hidden
  312. CFLAGS += -fvisibility=hidden
  313. endif
  314. LDFLAGS +=
  315. LDLIBS +=
  316. ARFLAGS +=
  317. ifeq ($(DEBUG),1)
  318. CPPFLAGS += -DMPT_BUILD_DEBUG
  319. CXXFLAGS += -O0 -g -fno-omit-frame-pointer
  320. CFLAGS += -O0 -g -fno-omit-frame-pointer
  321. else
  322. ifeq ($(OPTIMIZE_SIZE),1)
  323. CXXFLAGS += -Os
  324. CFLAGS += -Os -fno-strict-aliasing
  325. LDFLAGS +=
  326. ifeq ($(MPT_COMPILER_NOGCSECTIONS),1)
  327. else
  328. CXXFLAGS += -ffunction-sections -fdata-sections
  329. CFLAGS += -ffunction-sections -fdata-sections
  330. LDFLAGS += -Wl,--gc-sections
  331. endif
  332. else
  333. ifeq ($(OPTIMIZE),1)
  334. CXXFLAGS += -O3
  335. CFLAGS += -O3 -fno-strict-aliasing
  336. endif
  337. endif
  338. endif
  339. ifeq ($(CHECKED),1)
  340. CPPFLAGS += -DMPT_BUILD_CHECKED
  341. CXXFLAGS += -g -fno-omit-frame-pointer
  342. CFLAGS += -g -fno-omit-frame-pointer
  343. endif
  344. ifeq ($(FUZZ),1)
  345. CPPFLAGS +=
  346. CXXFLAGS += -fno-omit-frame-pointer
  347. CFLAGS += -fno-omit-frame-pointer
  348. endif
  349. CXXFLAGS += -Wall -Wextra -Wpedantic $(CXXFLAGS_WARNINGS)
  350. CFLAGS += -Wall -Wextra -Wpedantic $(CFLAGS_WARNINGS)
  351. LDFLAGS += $(LDFLAGS_WARNINGS)
  352. endif
  353. ifeq ($(STRICT),1)
  354. CXXFLAGS += -Werror
  355. CFLAGS += -Werror
  356. endif
  357. ifeq ($(DYNLINK),1)
  358. LDFLAGS_RPATH += -Wl,-rpath,./bin
  359. LDFLAGS_LIBOPENMPT += -Lbin
  360. LDLIBS_LIBOPENMPT += -lopenmpt
  361. endif
  362. ifeq ($(HOST),unix)
  363. ifeq ($(IS_CROSS),1)
  364. else
  365. ifeq ($(shell help2man --version > /dev/null 2>&1 && echo yes ),yes)
  366. MPT_WITH_HELP2MAN := 1
  367. endif
  368. endif
  369. ifeq ($(shell doxygen --version > /dev/null 2>&1 && echo yes ),yes)
  370. MPT_WITH_DOXYGEN := 1
  371. endif
  372. endif
  373. PC_LIBS_PRIVATE += $(CXXSTDLIB_PCLIBSPRIVATE)
  374. ifeq ($(HACK_ARCHIVE_SUPPORT),1)
  375. NO_ZLIB:=1
  376. endif
  377. ifeq ($(LOCAL_ZLIB),1)
  378. CPPFLAGS_ZLIB := -DMPT_WITH_ZLIB
  379. LDFLAGS_ZLIB :=
  380. LDLIBS_ZLIB :=
  381. CPPFLAGS_ZLIB += -Iinclude/zlib/
  382. LOCAL_ZLIB_SOURCES :=
  383. LOCAL_ZLIB_SOURCES += include/zlib/adler32.c
  384. LOCAL_ZLIB_SOURCES += include/zlib/compress.c
  385. LOCAL_ZLIB_SOURCES += include/zlib/crc32.c
  386. LOCAL_ZLIB_SOURCES += include/zlib/deflate.c
  387. LOCAL_ZLIB_SOURCES += include/zlib/gzclose.c
  388. LOCAL_ZLIB_SOURCES += include/zlib/gzlib.c
  389. LOCAL_ZLIB_SOURCES += include/zlib/gzread.c
  390. LOCAL_ZLIB_SOURCES += include/zlib/gzwrite.c
  391. LOCAL_ZLIB_SOURCES += include/zlib/infback.c
  392. LOCAL_ZLIB_SOURCES += include/zlib/inffast.c
  393. LOCAL_ZLIB_SOURCES += include/zlib/inflate.c
  394. LOCAL_ZLIB_SOURCES += include/zlib/inftrees.c
  395. LOCAL_ZLIB_SOURCES += include/zlib/trees.c
  396. LOCAL_ZLIB_SOURCES += include/zlib/uncompr.c
  397. LOCAL_ZLIB_SOURCES += include/zlib/zutil.c
  398. include/zlib/%.o : CFLAGS+=$(CFLAGS_SILENT) -DSTDC -DZ_HAVE_UNISTD_H
  399. include/zlib/%.test.o : CFLAGS+=$(CFLAGS_SILENT) -DSTDC -DZ_HAVE_UNISTD_H
  400. else
  401. ifeq ($(NO_ZLIB),1)
  402. else
  403. #LDLIBS += -lz
  404. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists zlib && echo yes),yes)
  405. CPPFLAGS_ZLIB := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I zlib ) -DMPT_WITH_ZLIB
  406. LDFLAGS_ZLIB := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L zlib ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other zlib )
  407. LDLIBS_ZLIB := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l zlib )
  408. PC_REQUIRES_ZLIB := zlib
  409. else
  410. ifeq ($(FORCE_DEPS),1)
  411. $(error zlib not found)
  412. else
  413. $(warning warning: zlib not found)
  414. endif
  415. NO_ZLIB:=1
  416. endif
  417. endif
  418. endif
  419. ifeq ($(LOCAL_MPG123),1)
  420. CPPFLAGS_MPG123 := -DMPT_WITH_MPG123
  421. LDFLAGS_MPG123 :=
  422. LDLIBS_MPG123 :=
  423. CPPFLAGS_MPG123 += -Iinclude/mpg123/src/libmpg123/ -Iinclude/mpg123/src/compat/ -Iinclude/mpg123/src/ -Iinclude/mpg123/ports/makefile/
  424. LOCAL_MPG123_SOURCES :=
  425. LOCAL_MPG123_SOURCES += include/mpg123/src/compat/compat.c
  426. LOCAL_MPG123_SOURCES += include/mpg123/src/compat/compat_str.c
  427. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/dct64.c
  428. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/equalizer.c
  429. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/feature.c
  430. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/format.c
  431. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/frame.c
  432. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/icy.c
  433. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/icy2utf8.c
  434. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/id3.c
  435. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/index.c
  436. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/layer1.c
  437. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/layer2.c
  438. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/layer3.c
  439. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/libmpg123.c
  440. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/ntom.c
  441. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/optimize.c
  442. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/parse.c
  443. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/readers.c
  444. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/stringbuf.c
  445. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/synth.c
  446. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/synth_8bit.c
  447. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/synth_real.c
  448. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/synth_s32.c
  449. LOCAL_MPG123_SOURCES += include/mpg123/src/libmpg123/tabinit.c
  450. include/mpg123/src/compat/%.o : CFLAGS+=$(CFLAGS_SILENT) -DOPT_GENERIC
  451. include/mpg123/src/compat/%.test.o : CFLAGS+=$(CFLAGS_SILENT) -DOPT_GENERIC
  452. include/mpg123/src/libmpg123/%.o : CFLAGS+=$(CFLAGS_SILENT) -DOPT_GENERIC
  453. include/mpg123/src/libmpg123/%.test.o : CFLAGS+=$(CFLAGS_SILENT) -DOPT_GENERIC
  454. else
  455. ifeq ($(NO_MPG123),1)
  456. else
  457. #LDLIBS += -lmpg123
  458. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists 'libmpg123 >= 1.14.0' && echo yes),yes)
  459. CPPFLAGS_MPG123 := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I 'libmpg123 >= 1.14.0' ) -DMPT_WITH_MPG123
  460. LDFLAGS_MPG123 := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L 'libmpg123 >= 1.14.0' ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other 'libmpg123 >= 1.14.0' )
  461. LDLIBS_MPG123 := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l 'libmpg123 >= 1.14.0' )
  462. PC_REQUIRES_MPG123 := libmpg123
  463. else
  464. ifeq ($(FORCE_DEPS),1)
  465. $(error mpg123 not found)
  466. else
  467. $(warning warning: mpg123 not found)
  468. endif
  469. NO_MPG123:=1
  470. endif
  471. endif
  472. endif
  473. ifeq ($(LOCAL_OGG),1)
  474. CPPFLAGS_OGG := -DMPT_WITH_OGG
  475. LDFLAGS_OGG :=
  476. LDLIBS_OGG :=
  477. CPPFLAGS_OGG += -Iinclude/ogg/include/ -Iinclude/ogg/ports/makefile/
  478. LOCAL_OGG_SOURCES :=
  479. LOCAL_OGG_SOURCES += include/ogg/src/bitwise.c
  480. LOCAL_OGG_SOURCES += include/ogg/src/framing.c
  481. include/ogg/src/%.o : CFLAGS+=$(CFLAGS_SILENT)
  482. include/ogg/src/%.test.o : CFLAGS+=$(CFLAGS_SILENT)
  483. else
  484. ifeq ($(NO_OGG),1)
  485. else
  486. #LDLIBS += -logg
  487. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists ogg && echo yes),yes)
  488. CPPFLAGS_OGG := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I ogg ) -DMPT_WITH_OGG
  489. LDFLAGS_OGG := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L ogg ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other ogg )
  490. LDLIBS_OGG := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l ogg )
  491. PC_REQUIRES_OGG := ogg
  492. else
  493. ifeq ($(FORCE_DEPS),1)
  494. $(error ogg not found)
  495. else
  496. $(warning warning: ogg not found)
  497. endif
  498. NO_OGG:=1
  499. endif
  500. endif
  501. endif
  502. ifeq ($(LOCAL_VORBIS),1)
  503. CPPFLAGS_VORBIS := -DMPT_WITH_VORBIS
  504. LDFLAGS_VORBIS :=
  505. LDLIBS_VORBIS :=
  506. CPPFLAGS_VORBIS += -Iinclude/vorbis/include/ -Iinclude/vorbis/lib/ -DHAVE_ALLOCA_H
  507. LOCAL_VORBIS_SOURCES :=
  508. LOCAL_VORBIS_SOURCES += include/vorbis/lib/analysis.c
  509. LOCAL_VORBIS_SOURCES += include/vorbis/lib/bitrate.c
  510. LOCAL_VORBIS_SOURCES += include/vorbis/lib/block.c
  511. LOCAL_VORBIS_SOURCES += include/vorbis/lib/codebook.c
  512. LOCAL_VORBIS_SOURCES += include/vorbis/lib/envelope.c
  513. LOCAL_VORBIS_SOURCES += include/vorbis/lib/floor0.c
  514. LOCAL_VORBIS_SOURCES += include/vorbis/lib/floor1.c
  515. LOCAL_VORBIS_SOURCES += include/vorbis/lib/info.c
  516. LOCAL_VORBIS_SOURCES += include/vorbis/lib/lookup.c
  517. LOCAL_VORBIS_SOURCES += include/vorbis/lib/lpc.c
  518. LOCAL_VORBIS_SOURCES += include/vorbis/lib/lsp.c
  519. LOCAL_VORBIS_SOURCES += include/vorbis/lib/mapping0.c
  520. LOCAL_VORBIS_SOURCES += include/vorbis/lib/mdct.c
  521. LOCAL_VORBIS_SOURCES += include/vorbis/lib/psy.c
  522. LOCAL_VORBIS_SOURCES += include/vorbis/lib/registry.c
  523. LOCAL_VORBIS_SOURCES += include/vorbis/lib/res0.c
  524. LOCAL_VORBIS_SOURCES += include/vorbis/lib/sharedbook.c
  525. LOCAL_VORBIS_SOURCES += include/vorbis/lib/smallft.c
  526. LOCAL_VORBIS_SOURCES += include/vorbis/lib/synthesis.c
  527. LOCAL_VORBIS_SOURCES += include/vorbis/lib/vorbisenc.c
  528. LOCAL_VORBIS_SOURCES += include/vorbis/lib/vorbisfile.c
  529. LOCAL_VORBIS_SOURCES += include/vorbis/lib/window.c
  530. include/vorbis/lib/%.o : CFLAGS+=$(CFLAGS_SILENT)
  531. include/vorbis/lib/%.test.o : CFLAGS+=$(CFLAGS_SILENT)
  532. else
  533. ifeq ($(NO_VORBIS),1)
  534. else
  535. #LDLIBS += -lvorbis
  536. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists vorbis && echo yes),yes)
  537. CPPFLAGS_VORBIS := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I vorbis ) -DMPT_WITH_VORBIS
  538. LDFLAGS_VORBIS := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L vorbis ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other vorbis )
  539. LDLIBS_VORBIS := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l vorbis )
  540. PC_REQUIRES_VORBIS := vorbis
  541. else
  542. ifeq ($(FORCE_DEPS),1)
  543. $(error vorbis not found)
  544. else
  545. $(warning warning: vorbis not found)
  546. endif
  547. NO_VORBIS:=1
  548. endif
  549. endif
  550. endif
  551. ifeq ($(LOCAL_VORBIS),1)
  552. CPPFLAGS_VORBISFILE := -DMPT_WITH_VORBISFILE
  553. LDFLAGS_VORBISFILE :=
  554. LDLIBS_VORBISFILE :=
  555. else
  556. ifeq ($(NO_VORBISFILE),1)
  557. else
  558. #LDLIBS += -lvorbisfile
  559. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists vorbisfile && echo yes),yes)
  560. CPPFLAGS_VORBISFILE := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I vorbisfile ) -DMPT_WITH_VORBISFILE
  561. LDFLAGS_VORBISFILE := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L vorbisfile ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other vorbisfile )
  562. LDLIBS_VORBISFILE := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l vorbisfile )
  563. PC_REQUIRES_VORBISFILE := vorbisfile
  564. else
  565. ifeq ($(FORCE_DEPS),1)
  566. $(error vorbisfile not found)
  567. else
  568. $(warning warning: vorbisfile not found)
  569. endif
  570. NO_VORBISFILE:=1
  571. endif
  572. endif
  573. endif
  574. ifeq ($(NO_SDL2),1)
  575. else
  576. #LDLIBS += -lsdl2
  577. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists 'sdl2 >= 2.0.4' && echo yes),yes)
  578. CPPFLAGS_SDL2 := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I 'sdl2 >= 2.0.4' ) -DMPT_WITH_SDL2
  579. LDFLAGS_SDL2 := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L 'sdl2 >= 2.0.4' ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other 'sdl2 >= 2.0.4' )
  580. LDLIBS_SDL2 := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l 'sdl2 >= 2.0.4' )
  581. else
  582. ifeq ($(FORCE_DEPS),1)
  583. $(error sdl2 not found)
  584. else
  585. $(warning warning: sdl2 not found)
  586. endif
  587. NO_SDL2:=1
  588. endif
  589. endif
  590. ifeq ($(NO_PORTAUDIO),1)
  591. else
  592. #LDLIBS += -lportaudio
  593. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists portaudio-2.0 && echo yes),yes)
  594. CPPFLAGS_PORTAUDIO := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I portaudio-2.0 ) -DMPT_WITH_PORTAUDIO
  595. LDFLAGS_PORTAUDIO := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L portaudio-2.0 ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other portaudio-2.0 )
  596. LDLIBS_PORTAUDIO := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l portaudio-2.0 )
  597. else
  598. ifeq ($(FORCE_DEPS),1)
  599. $(error portaudio not found)
  600. else
  601. $(warning warning: portaudio not found)
  602. endif
  603. NO_PORTAUDIO:=1
  604. endif
  605. endif
  606. ifeq ($(NO_PORTAUDIOCPP),1)
  607. else
  608. #LDLIBS += -lportaudiocpp
  609. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists portaudiocpp && echo yes),yes)
  610. CPPFLAGS_PORTAUDIOCPP := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I portaudiocpp ) -DMPT_WITH_PORTAUDIOCPP
  611. LDFLAGS_PORTAUDIOCPP := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L portaudiocpp ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other portaudiocpp )
  612. LDLIBS_PORTAUDIOCPP := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l portaudiocpp )
  613. else
  614. ifeq ($(FORCE_DEPS),1)
  615. $(error portaudiocpp not found)
  616. else
  617. $(warning warning: portaudiocpp not found)
  618. endif
  619. NO_PORTAUDIOCPP:=1
  620. endif
  621. endif
  622. ifeq ($(NO_PULSEAUDIO),1)
  623. else
  624. #LDLIBS += -lpulse-simple
  625. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists libpulse libpulse-simple && echo yes),yes)
  626. CPPFLAGS_PULSEAUDIO := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I libpulse libpulse-simple ) -DMPT_WITH_PULSEAUDIO
  627. LDFLAGS_PULSEAUDIO := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L libpulse libpulse-simple ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other libpulse libpulse-simple )
  628. LDLIBS_PULSEAUDIO := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l libpulse libpulse-simple )
  629. else
  630. ifeq ($(FORCE_DEPS),1)
  631. $(error pulseaudio not found)
  632. else
  633. $(warning warning: pulseaudio not found)
  634. endif
  635. NO_PULSEAUDIO:=1
  636. endif
  637. endif
  638. ifeq ($(NO_FLAC),1)
  639. else
  640. #LDLIBS += -lFLAC
  641. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists 'flac >= 1.3.0' && echo yes),yes)
  642. CPPFLAGS_FLAC := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I 'flac >= 1.3.0' ) -DMPT_WITH_FLAC
  643. LDFLAGS_FLAC := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L 'flac >= 1.3.0' ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other 'flac >= 1.3.0' )
  644. LDLIBS_FLAC := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l 'flac >= 1.3.0' )
  645. else
  646. ifeq ($(FORCE_DEPS),1)
  647. $(error flac not found)
  648. else
  649. $(warning warning: flac not found)
  650. endif
  651. NO_FLAC:=1
  652. endif
  653. endif
  654. ifeq ($(NO_SNDFILE),1)
  655. else
  656. #LDLIBS += -lsndfile
  657. ifeq ($(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --exists sndfile && echo yes),yes)
  658. CPPFLAGS_SNDFILE := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --cflags-only-I sndfile ) -DMPT_WITH_SNDFILE
  659. LDFLAGS_SNDFILE := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-L sndfile ) $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-other sndfile )
  660. LDLIBS_SNDFILE := $(shell $(PKG_CONFIG)$(TOOLCHAIN_SUFFIX) --libs-only-l sndfile )
  661. else
  662. ifeq ($(FORCE_DEPS),1)
  663. $(error sndfile not found)
  664. else
  665. $(warning warning: sndfile not found)
  666. endif
  667. NO_SNDFILE:=1
  668. endif
  669. endif
  670. ifeq ($(USE_ALLEGRO42),1)
  671. CPPFLAGS_ALLEGRO42 ?=
  672. LDFLAGS_ALLEGRO42 ?=
  673. LDLIBS_ALLEGRO42 ?= liballeg.a
  674. CPPFLAGS_ALLEGRO42 += -DMPT_WITH_ALLEGRO42
  675. endif
  676. ifeq ($(HACK_ARCHIVE_SUPPORT),1)
  677. CPPFLAGS += -DMPT_BUILD_HACK_ARCHIVE_SUPPORT
  678. endif
  679. CPPCHECK_FLAGS += -j $(NUMTHREADS)
  680. CPPCHECK_FLAGS += --std=c99 --std=c++17
  681. CPPCHECK_FLAGS += --quiet
  682. CPPCHECK_FLAGS += --enable=warning --inline-suppr --template='{file}:{line}: warning: {severity}: {message} [{id}]'
  683. CPPCHECK_FLAGS += --suppress=missingIncludeSystem
  684. CPPCHECK_FLAGS += --suppress=uninitMemberVar
  685. CPPCHECK_FLAGS += $(CPPFLAGS)
  686. CPPFLAGS += $(CPPFLAGS_ZLIB) $(CPPFLAGS_MPG123) $(CPPFLAGS_OGG) $(CPPFLAGS_VORBIS) $(CPPFLAGS_VORBISFILE)
  687. LDFLAGS += $(LDFLAGS_ZLIB) $(LDFLAGS_MPG123) $(LDFLAGS_OGG) $(LDFLAGS_VORBIS) $(LDFLAGS_VORBISFILE)
  688. LDLIBS += $(LDLIBS_ZLIB) $(LDLIBS_MPG123) $(LDLIBS_OGG) $(LDLIBS_VORBIS) $(LDLIBS_VORBISFILE)
  689. CPPFLAGS_OPENMPT123 += $(CPPFLAGS_SDL2) $(CPPFLAGS_PORTAUDIO) $(CPPFLAGS_PULSEAUDIO) $(CPPFLAGS_FLAC) $(CPPFLAGS_SNDFILE) $(CPPFLAGS_ALLEGRO42)
  690. LDFLAGS_OPENMPT123 += $(LDFLAGS_SDL2) $(LDFLAGS_PORTAUDIO) $(LDFLAGS_PULSEAUDIO) $(LDFLAGS_FLAC) $(LDFLAGS_SNDFILE) $(LDFLAGS_ALLEGRO42)
  691. LDLIBS_OPENMPT123 += $(LDLIBS_SDL2) $(LDLIBS_PORTAUDIO) $(LDLIBS_PULSEAUDIO) $(LDLIBS_FLAC) $(LDLIBS_SNDFILE) $(LDLIBS_ALLEGRO42)
  692. %: %.o
  693. $(INFO) [LD] $@
  694. $(SILENT)$(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) -o $@
  695. %.o: %.cpp
  696. $(INFO) [CXX] $<
  697. $(VERYSILENT)$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  698. $(SILENT)$(COMPILE.cc) $(OUTPUT_OPTION) $<
  699. %.o: %.c
  700. $(INFO) [CC] $<
  701. $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  702. $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $<
  703. %.test.o: %.cpp
  704. $(INFO) [CXX-TEST] $<
  705. $(VERYSILENT)$(CXX) -DLIBOPENMPT_BUILD_TEST $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.test.d
  706. $(SILENT)$(COMPILE.cc) -DLIBOPENMPT_BUILD_TEST $(OUTPUT_OPTION) $<
  707. %.test.o: %.c
  708. $(INFO) [CC-TEST] $<
  709. $(VERYSILENT)$(CC) -DLIBOPENMPT_BUILD_TEST $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.test.d
  710. $(SILENT)$(COMPILE.c) -DLIBOPENMPT_BUILD_TEST $(OUTPUT_OPTION) $<
  711. %.tar.gz: %.tar
  712. $(INFO) [GZIP] $<
  713. $(SILENT)gzip --rsyncable --no-name --best > $@ < $<
  714. -include build/dist.mk
  715. DIST_LIBOPENMPT_VERSION_PURE:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)
  716. CPPFLAGS += -Ibuild/svn_version
  717. ifeq ($(MPT_SVNVERSION),)
  718. SVN_INFO:=$(shell svn info . > /dev/null 2>&1 ; echo $$? )
  719. ifeq ($(SVN_INFO),0)
  720. # in svn checkout
  721. MPT_SVNVERSION := $(shell svnversion -n . | tr ':' '-' )
  722. MPT_SVNURL := $(shell svn info --xml | grep '^<url>' | sed 's/<url>//g' | sed 's/<\/url>//g' )
  723. MPT_SVNDATE := $(shell svn info --xml | grep '^<date>' | sed 's/<date>//g' | sed 's/<\/date>//g' )
  724. CPPFLAGS += -D MPT_SVNURL=\"$(MPT_SVNURL)\" -D MPT_SVNVERSION=\"$(MPT_SVNVERSION)\" -D MPT_SVNDATE=\"$(MPT_SVNDATE)\"
  725. DIST_OPENMPT_VERSION:=r$(MPT_SVNVERSION)
  726. ifeq ($(LIBOPENMPT_VERSION_PREREL),)
  727. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+release
  728. else
  729. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+r$(MPT_SVNVERSION)
  730. endif
  731. else
  732. GIT_STATUS:=$(shell git status > /dev/null 2>&1 ; echo $$? )
  733. ifeq ($(GIT_STATUS),0)
  734. # in git chechout
  735. MPT_SVNVERSION := $(shell git log --grep=git-svn-id -n 1 | grep git-svn-id | tail -n 1 | tr ' ' '\n' | tail -n 2 | head -n 1 | sed 's/@/ /g' | awk '{print $$2;}' )$(shell if [ $$(git rev-list $$(git log --grep=git-svn-id -n 1 --format=format:'%H') ^$$(git log -n 1 --format=format:'%H') --count ) -ne 0 ] ; then echo M ; fi )
  736. MPT_SVNURL := $(shell git log --grep=git-svn-id -n 1 | grep git-svn-id | tail -n 1 | tr ' ' '\n' | tail -n 2 | head -n 1 | sed 's/@/ /g' | awk '{print $$1;}' )
  737. MPT_SVNDATE := $(shell git log -n 1 --date=iso --format=format:'%cd' | sed 's/ +0000/Z/g' | tr ' ' 'T' )
  738. CPPFLAGS += -D MPT_SVNURL=\"$(MPT_SVNURL)\" -D MPT_SVNVERSION=\"$(MPT_SVNVERSION)\" -D MPT_SVNDATE=\"$(MPT_SVNDATE)\"
  739. DIST_OPENMPT_VERSION:=r$(MPT_SVNVERSION)
  740. ifeq ($(LIBOPENMPT_VERSION_PREREL),)
  741. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+release
  742. else
  743. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+r$(MPT_SVNVERSION)
  744. endif
  745. else
  746. # not in svn checkout
  747. DIST_OPENMPT_VERSION:=rUNKNOWN
  748. ifeq ($(LIBOPENMPT_VERSION_PREREL),)
  749. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+release
  750. else
  751. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+rUNKNOWN
  752. endif
  753. endif
  754. endif
  755. else
  756. # in dist package
  757. DIST_OPENMPT_VERSION:=r$(MPT_SVNVERSION)
  758. ifeq ($(LIBOPENMPT_VERSION_PREREL),)
  759. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+release
  760. else
  761. DIST_LIBOPENMPT_VERSION:=$(LIBOPENMPT_VERSION_MAJOR).$(LIBOPENMPT_VERSION_MINOR).$(LIBOPENMPT_VERSION_PATCH)$(LIBOPENMPT_VERSION_PREREL)+r$(MPT_SVNVERSION)
  762. endif
  763. endif
  764. DIST_LIBOPENMPT_TARBALL_VERSION:=$(DIST_LIBOPENMPT_VERSION_PURE)
  765. ifeq ($(MPT_SVNVERSION),)
  766. else
  767. MPT_SVNREVISION := $(shell echo $(MPT_SVNVERSION) | sed 's/M//g' | sed 's/S//g' | sed 's/P//g' | sed -E 's/([0-9]+)-//g' )
  768. MPT_SVNDIRTY := $(shell echo $(MPT_SVNVERSION) | grep -v 'M\|S\|P' >/dev/null 2>&1 ; echo $$? )
  769. MPT_SVNMIXED := $(shell echo $(MPT_SVNVERSION) | grep -v '-' >/dev/null 2>&1; echo $$? )
  770. endif
  771. CPPFLAGS += -DLIBOPENMPT_BUILD
  772. COMMON_CXX_SOURCES += \
  773. $(sort $(wildcard common/*.cpp)) \
  774. $(sort $(wildcard src/mpt/src/*.cpp)) \
  775. SOUNDLIB_CXX_SOURCES += \
  776. $(COMMON_CXX_SOURCES) \
  777. $(sort $(wildcard soundlib/*.cpp)) \
  778. $(sort $(wildcard soundlib/plugins/*.cpp)) \
  779. $(sort $(wildcard soundlib/plugins/dmo/*.cpp)) \
  780. $(sort $(wildcard sounddsp/*.cpp)) \
  781. ifeq ($(HACK_ARCHIVE_SUPPORT),1)
  782. SOUNDLIB_CXX_SOURCES += $(sort $(wildcard unarchiver/*.cpp))
  783. endif
  784. LIBOPENMPT_CXX_SOURCES += \
  785. $(SOUNDLIB_CXX_SOURCES) \
  786. libopenmpt/libopenmpt_c.cpp \
  787. libopenmpt/libopenmpt_cxx.cpp \
  788. libopenmpt/libopenmpt_impl.cpp \
  789. libopenmpt/libopenmpt_ext_impl.cpp \
  790. include/miniz/miniz.o : CFLAGS+=$(CFLAGS_SILENT)
  791. include/miniz/miniz.test.o : CFLAGS+=$(CFLAGS_SILENT)
  792. ifeq ($(LOCAL_ZLIB),1)
  793. LIBOPENMPT_C_SOURCES += $(LOCAL_ZLIB_SOURCES)
  794. LIBOPENMPTTEST_C_SOURCES += $(LOCAL_ZLIB_SOURCES)
  795. else
  796. ifeq ($(NO_ZLIB),1)
  797. ifeq ($(NO_MINIZ),1)
  798. else
  799. LIBOPENMPT_C_SOURCES += include/miniz/miniz.c
  800. LIBOPENMPTTEST_C_SOURCES += include/miniz/miniz.c
  801. CPPFLAGS += -DMPT_WITH_MINIZ
  802. CPPFLAGS += -Iinclude
  803. endif
  804. endif
  805. endif
  806. include/minimp3/minimp3.o : CFLAGS+=$(CFLAGS_SILENT)
  807. include/minimp3/minimp3.test.o : CFLAGS+=$(CFLAGS_SILENT)
  808. ifeq ($(LOCAL_MPG123),1)
  809. LIBOPENMPT_C_SOURCES += $(LOCAL_MPG123_SOURCES)
  810. LIBOPENMPTTEST_C_SOURCES += $(LOCAL_MPG123_SOURCES)
  811. else
  812. ifeq ($(NO_MPG123),1)
  813. ifeq ($(NO_MINIMP3),1)
  814. else
  815. LIBOPENMPT_C_SOURCES += include/minimp3/minimp3.c
  816. LIBOPENMPTTEST_C_SOURCES += include/minimp3/minimp3.c
  817. CPPFLAGS += -DMPT_WITH_MINIMP3
  818. CPPFLAGS += -Iinclude
  819. endif
  820. endif
  821. endif
  822. include/stb_vorbis/stb_vorbis.o : CFLAGS+=$(CFLAGS_SILENT)
  823. include/stb_vorbis/stb_vorbis.test.o : CFLAGS+=$(CFLAGS_SILENT)
  824. ifeq ($(LOCAL_VORBIS),1)
  825. ifeq ($(LOCAL_OGG),1)
  826. LIBOPENMPT_C_SOURCES += $(LOCAL_OGG_SOURCES)
  827. LIBOPENMPTTEST_C_SOURCES += $(LOCAL_OGG_SOURCES)
  828. endif
  829. LIBOPENMPT_C_SOURCES += $(LOCAL_VORBIS_SOURCES)
  830. LIBOPENMPTTEST_C_SOURCES += $(LOCAL_VORBIS_SOURCES)
  831. else
  832. ifeq ($(NO_OGG),1)
  833. ifeq ($(NO_STBVORBIS),1)
  834. else
  835. LIBOPENMPT_C_SOURCES += include/stb_vorbis/stb_vorbis.c
  836. LIBOPENMPTTEST_C_SOURCES += include/stb_vorbis/stb_vorbis.c
  837. CPPFLAGS += -DMPT_WITH_STBVORBIS -DSTB_VORBIS_NO_PULLDATA_API -DSTB_VORBIS_NO_STDIO
  838. CPPFLAGS += -Iinclude
  839. endif
  840. else
  841. ifeq ($(NO_VORBIS),1)
  842. ifeq ($(NO_STBVORBIS),1)
  843. else
  844. LIBOPENMPT_C_SOURCES += include/stb_vorbis/stb_vorbis.c
  845. LIBOPENMPTTEST_C_SOURCES += include/stb_vorbis/stb_vorbis.c
  846. CPPFLAGS += -DMPT_WITH_STBVORBIS -DSTB_VORBIS_NO_PULLDATA_API -DSTB_VORBIS_NO_STDIO
  847. CPPFLAGS += -Iinclude
  848. endif
  849. else
  850. ifeq ($(NO_VORBISFILE),1)
  851. ifeq ($(NO_STBVORBIS),1)
  852. else
  853. LIBOPENMPT_C_SOURCES += include/stb_vorbis/stb_vorbis.c
  854. LIBOPENMPTTEST_C_SOURCES += include/stb_vorbis/stb_vorbis.c
  855. CPPFLAGS += -DMPT_WITH_STBVORBIS -DSTB_VORBIS_NO_PULLDATA_API -DSTB_VORBIS_NO_STDIO
  856. CPPFLAGS += -Iinclude
  857. endif
  858. else
  859. endif
  860. endif
  861. endif
  862. endif
  863. LIBOPENMPT_OBJECTS += $(LIBOPENMPT_CXX_SOURCES:.cpp=.o) $(LIBOPENMPT_C_SOURCES:.c=.o)
  864. LIBOPENMPT_DEPENDS = $(LIBOPENMPT_OBJECTS:.o=.d)
  865. ALL_OBJECTS += $(LIBOPENMPT_OBJECTS)
  866. ALL_DEPENDS += $(LIBOPENMPT_DEPENDS)
  867. ifeq ($(DYNLINK),1)
  868. OUTPUT_LIBOPENMPT += bin/libopenmpt$(SOSUFFIX)
  869. else
  870. OBJECTS_LIBOPENMPT += $(LIBOPENMPT_OBJECTS)
  871. endif
  872. INOPENMPT_CXX_SOURCES += \
  873. libopenmpt/libopenmpt_plugin_gui.cpp \
  874. libopenmpt/in_openmpt.cpp \
  875. INOPENMPT_OBJECTS += $(INOPENMPT_CXX_SOURCES:.cpp=.o) $(INOPENMPT_C_SOURCES:.c=.o)
  876. INOPENMPT_DEPENDS = $(INOPENMPT_OBJECTS:.o=.d)
  877. ALL_OBJECTS += $(INOPENMPT_OBJECTS)
  878. ALL_DEPENDS += $(INOPENMPT_DEPENDS)
  879. XMPOPENMPT_CXX_SOURCES += \
  880. include/pugixml/src/pugixml.cpp \
  881. libopenmpt/libopenmpt_plugin_gui.cpp \
  882. libopenmpt/xmp-openmpt.cpp \
  883. XMPOPENMPT_OBJECTS += $(XMPOPENMPT_CXX_SOURCES:.cpp=.o) $(XMPOPENMPT_C_SOURCES:.c=.o)
  884. XMPOPENMPT_DEPENDS = $(XMPOPENMPT_OBJECTS:.o=.d)
  885. ALL_OBJECTS += $(XMPOPENMPT_OBJECTS)
  886. ALL_DEPENDS += $(XMPOPENMPT_DEPENDS)
  887. OPENMPT123_CXX_SOURCES += \
  888. $(sort $(wildcard openmpt123/*.cpp)) \
  889. OPENMPT123_OBJECTS += $(OPENMPT123_CXX_SOURCES:.cpp=.o)
  890. OPENMPT123_DEPENDS = $(OPENMPT123_OBJECTS:.o=.d)
  891. ALL_OBJECTS += $(OPENMPT123_OBJECTS)
  892. ALL_DEPENDS += $(OPENMPT123_DEPENDS)
  893. LIBOPENMPTTEST_CXX_SOURCES += \
  894. libopenmpt/libopenmpt_test.cpp \
  895. $(SOUNDLIB_CXX_SOURCES) \
  896. test/mpt_tests_base.cpp \
  897. test/mpt_tests_binary.cpp \
  898. test/mpt_tests_crc.cpp \
  899. test/mpt_tests_endian.cpp \
  900. test/mpt_tests_format.cpp \
  901. test/mpt_tests_io.cpp \
  902. test/mpt_tests_parse.cpp \
  903. test/mpt_tests_random.cpp \
  904. test/mpt_tests_string.cpp \
  905. test/mpt_tests_string_transcode.cpp \
  906. test/mpt_tests_uuid.cpp \
  907. test/test.cpp \
  908. test/TestToolsLib.cpp \
  909. # test/mpt_tests_crypto.cpp \
  910. # test/mpt_tests_uuid_namespace.cpp \
  911. LIBOPENMPTTEST_OBJECTS = $(LIBOPENMPTTEST_CXX_SOURCES:.cpp=.test.o) $(LIBOPENMPTTEST_C_SOURCES:.c=.test.o)
  912. LIBOPENMPTTEST_DEPENDS = $(LIBOPENMPTTEST_CXX_SOURCES:.cpp=.test.d) $(LIBOPENMPTTEST_C_SOURCES:.c=.test.d)
  913. ALL_OBJECTS += $(LIBOPENMPTTEST_OBJECTS)
  914. ALL_DEPENDS += $(LIBOPENMPTTEST_DEPENDS)
  915. EXAMPLES_CXX_SOURCES += $(sort $(wildcard examples/*.cpp))
  916. EXAMPLES_C_SOURCES += $(sort $(wildcard examples/*.c))
  917. EXAMPLES_OBJECTS += $(EXAMPLES_CXX_SOURCES:.cpp=.o)
  918. EXAMPLES_OBJECTS += $(EXAMPLES_C_SOURCES:.c=.o)
  919. EXAMPLES_DEPENDS = $(EXAMPLES_OBJECTS:.o=.d)
  920. ALL_OBJECTS += $(EXAMPLES_OBJECTS)
  921. ALL_DEPENDS += $(EXAMPLES_DEPENDS)
  922. FUZZ_CXX_SOURCES += $(sort $(wildcard contrib/fuzzing/*.cpp))
  923. FUZZ_C_SOURCES += $(sort $(wildcard contrib/fuzzing/*.c))
  924. FUZZ_OBJECTS += $(FUZZ_CXX_SOURCES:.cpp=.o)
  925. FUZZ_OBJECTS += $(FUZZ_C_SOURCES:.c=.o)
  926. FUZZ_DEPENDS = $(FUZZ_OBJECTS:.o=.d)
  927. ALL_OBJECTS += $(FUZZ_OBJECTS)
  928. ALL_DEPENDS += $(FUZZ_DEPENDS)
  929. .PHONY: all
  930. all:
  931. -include $(ALL_DEPENDS)
  932. ifeq ($(DYNLINK),1)
  933. OUTPUTS += bin/libopenmpt$(SOSUFFIX)
  934. endif
  935. ifeq ($(SHARED_LIB),1)
  936. OUTPUTS += bin/libopenmpt$(SOSUFFIX)
  937. endif
  938. ifeq ($(STATIC_LIB),1)
  939. OUTPUTS += bin/libopenmpt.a
  940. endif
  941. ifeq ($(IN_OPENMPT),1)
  942. OUTPUTS += bin/in_openmpt$(SOSUFFIX)
  943. endif
  944. ifeq ($(XMP_OPENMPT),1)
  945. OUTPUTS += bin/xmp-openmpt$(SOSUFFIX)
  946. endif
  947. ifeq ($(OPENMPT123),1)
  948. OUTPUTS += bin/openmpt123$(EXESUFFIX)
  949. endif
  950. ifeq ($(EXAMPLES),1)
  951. ifeq ($(NO_PORTAUDIO),1)
  952. else
  953. OUTPUTS += bin/libopenmpt_example_c$(EXESUFFIX)
  954. OUTPUTS += bin/libopenmpt_example_c_mem$(EXESUFFIX)
  955. OUTPUTS += bin/libopenmpt_example_c_unsafe$(EXESUFFIX)
  956. endif
  957. ifeq ($(NO_PORTAUDIOCPP),1)
  958. else
  959. OUTPUTS += bin/libopenmpt_example_cxx$(EXESUFFIX)
  960. endif
  961. OUTPUTS += bin/libopenmpt_example_c_pipe$(EXESUFFIX)
  962. OUTPUTS += bin/libopenmpt_example_c_stdout$(EXESUFFIX)
  963. OUTPUTS += bin/libopenmpt_example_c_probe$(EXESUFFIX)
  964. endif
  965. ifeq ($(FUZZ),1)
  966. OUTPUTS += bin/fuzz$(EXESUFFIX)
  967. endif
  968. ifeq ($(TEST),1)
  969. OUTPUTS += bin/libopenmpt_test$(EXESUFFIX)
  970. endif
  971. ifeq ($(HOST),unix)
  972. OUTPUTS += bin/libopenmpt.pc
  973. endif
  974. ifeq ($(OPENMPT123),1)
  975. ifeq ($(MPT_WITH_HELP2MAN),1)
  976. OUTPUTS += bin/openmpt123.1
  977. endif
  978. endif
  979. ifeq ($(SHARED_SONAME),1)
  980. LIBOPENMPT_LDFLAGS += -Wl,-soname,$(LIBOPENMPT_SONAME)
  981. endif
  982. MISC_OUTPUTS += bin/empty.cpp
  983. MISC_OUTPUTS += bin/empty.out
  984. MISC_OUTPUTS += bin/openmpt123$(EXESUFFIX).norpath
  985. MISC_OUTPUTS += bin/libopenmpt_example_c$(EXESUFFIX).norpath
  986. MISC_OUTPUTS += bin/libopenmpt_example_c_mem$(EXESUFFIX).norpath
  987. MISC_OUTPUTS += bin/libopenmpt_example_c_probe$(EXESUFFIX).norpath
  988. MISC_OUTPUTS += bin/libopenmpt_example_c_unsafe$(EXESUFFIX).norpath
  989. MISC_OUTPUTS += bin/libopenmpt_example_cxx$(EXESUFFIX).norpath
  990. MISC_OUTPUTS += bin/libopenmpt_example_c_pipe$(EXESUFFIX).norpath
  991. MISC_OUTPUTS += bin/libopenmpt_example_c_stdout$(EXESUFFIX).norpath
  992. MISC_OUTPUTS += libopenmpt$(SOSUFFIX)
  993. MISC_OUTPUTS += bin/.docs
  994. MISC_OUTPUTS += bin/libopenmpt_test$(EXESUFFIX)
  995. MISC_OUTPUTS += bin/libopenmpt_test.wasm
  996. MISC_OUTPUTS += bin/libopenmpt_test.wasm.js
  997. MISC_OUTPUTS += bin/libopenmpt_test.js.mem
  998. MISC_OUTPUTS += bin/made.docs
  999. MISC_OUTPUTS += bin/$(LIBOPENMPT_SONAME)
  1000. MISC_OUTPUTS += bin/libopenmpt.wasm
  1001. MISC_OUTPUTS += bin/libopenmpt.wasm.js
  1002. MISC_OUTPUTS += bin/libopenmpt.js.mem
  1003. MISC_OUTPUTS += bin/libopenmpt_example_c.wasm
  1004. MISC_OUTPUTS += bin/libopenmpt_example_c.wasm.js
  1005. MISC_OUTPUTS += bin/libopenmpt_example_c.js.mem
  1006. MISC_OUTPUTS += bin/libopenmpt_example_c_mem.wasm
  1007. MISC_OUTPUTS += bin/libopenmpt_example_c_mem.wasm.js
  1008. MISC_OUTPUTS += bin/libopenmpt_example_c_mem.js.mem
  1009. MISC_OUTPUTS += bin/libopenmpt_example_c_pipe.wasm
  1010. MISC_OUTPUTS += bin/libopenmpt_example_c_pipe.wasm.js
  1011. MISC_OUTPUTS += bin/libopenmpt_example_c_pipe.js.mem
  1012. MISC_OUTPUTS += bin/libopenmpt_example_c_probe.wasm
  1013. MISC_OUTPUTS += bin/libopenmpt_example_c_probe.wasm.js
  1014. MISC_OUTPUTS += bin/libopenmpt_example_c_probe.js.mem
  1015. MISC_OUTPUTS += bin/libopenmpt_example_c_stdout.wasm
  1016. MISC_OUTPUTS += bin/libopenmpt_example_c_stdout.wasm.js
  1017. MISC_OUTPUTS += bin/libopenmpt_example_c_stdout.js.mem
  1018. MISC_OUTPUTS += bin/libopenmpt_example_c_unsafe.wasm
  1019. MISC_OUTPUTS += bin/libopenmpt_example_c_unsafe.wasm.js
  1020. MISC_OUTPUTS += bin/libopenmpt_example_c_unsafe.js.mem
  1021. MISC_OUTPUTS += bin/openmpt.a
  1022. #old
  1023. MISC_OUTPUTS += bin/libopenmpt_example_c_safe$(EXESUFFIX)
  1024. MISC_OUTPUTS += bin/libopenmpt_example_c_safe$(EXESUFFIX).norpath
  1025. MISC_OUTPUTDIRS += bin/dest
  1026. MISC_OUTPUTDIRS += bin/docs
  1027. DIST_OUTPUTS += bin/dist.mk
  1028. DIST_OUTPUTS += bin/svn_version_dist.h
  1029. DIST_OUTPUTS += bin/dist.tar
  1030. DIST_OUTPUTS += bin/dist-tar.tar
  1031. DIST_OUTPUTS += bin/dist-zip.tar
  1032. DIST_OUTPUTS += bin/dist-doc.tar
  1033. DIST_OUTPUTS += bin/dist-autotools.tar
  1034. DIST_OUTPUTS += bin/dist-js.tar
  1035. DIST_OUTPUTS += bin/dist-dos.tar
  1036. DIST_OUTPUTS += bin/made.docs
  1037. DIST_OUTPUTDIRS += bin/dist
  1038. DIST_OUTPUTDIRS += bin/dist-doc
  1039. DIST_OUTPUTDIRS += bin/dist-tar
  1040. DIST_OUTPUTDIRS += bin/dist-zip
  1041. DIST_OUTPUTDIRS += bin/dist-autotools
  1042. DIST_OUTPUTDIRS += bin/dist-js
  1043. DIST_OUTPUTDIRS += bin/dist-dos
  1044. DIST_OUTPUTDIRS += bin/docs
  1045. ifeq ($(ONLY_TEST),1)
  1046. all: bin/libopenmpt_test$(EXESUFFIX)
  1047. else
  1048. all: $(OUTPUTS)
  1049. endif
  1050. .PHONY: docs
  1051. docs: bin/made.docs
  1052. .PHONY: doc
  1053. doc: bin/made.docs
  1054. bin/made.docs:
  1055. $(VERYSILENT)mkdir -p bin/docs
  1056. $(INFO) [DOXYGEN] libopenmpt
  1057. ifeq ($(SILENT_DOCS),1)
  1058. $(SILENT) ( cat libopenmpt/Doxyfile ; echo 'PROJECT_NUMBER = "$(DIST_LIBOPENMPT_VERSION)"' ; echo 'WARN_IF_DOC_ERROR = NO' ) | doxygen -
  1059. else
  1060. $(SILENT) ( cat libopenmpt/Doxyfile ; echo 'PROJECT_NUMBER = "$(DIST_LIBOPENMPT_VERSION)"' ) | doxygen -
  1061. endif
  1062. $(VERYSILENT)touch $@
  1063. .PHONY: check
  1064. check: test
  1065. .PHONY: test
  1066. test: bin/libopenmpt_test$(EXESUFFIX)
  1067. ifeq ($(REQUIRES_RUNPREFIX),1)
  1068. cd bin && $(RUNPREFIX) libopenmpt_test$(EXESUFFIX)
  1069. else
  1070. bin/libopenmpt_test$(EXESUFFIX)
  1071. endif
  1072. bin/libopenmpt_test$(EXESUFFIX): $(LIBOPENMPTTEST_OBJECTS)
  1073. $(INFO) [LD-TEST] $@
  1074. $(SILENT)$(LINK.cc) $(LDFLAGS_RPATH) $(TEST_LDFLAGS) $(LIBOPENMPTTEST_OBJECTS) $(LOADLIBES) $(LDLIBS) -o $@
  1075. bin/libopenmpt.pc:
  1076. $(INFO) [GEN] $@
  1077. $(VERYSILENT)rm -rf $@
  1078. $(VERYSILENT)echo > [email protected]
  1079. $(VERYSILENT)echo 'prefix=$(PREFIX)' >> [email protected]
  1080. $(VERYSILENT)echo 'exec_prefix=$${prefix}' >> [email protected]
  1081. $(VERYSILENT)echo 'libdir=$${exec_prefix}/lib' >> [email protected]
  1082. $(VERYSILENT)echo 'includedir=$${prefix}/include' >> [email protected]
  1083. $(VERYSILENT)echo '' >> [email protected]
  1084. $(VERYSILENT)echo 'Name: libopenmpt' >> [email protected]
  1085. $(VERYSILENT)echo 'Description: Tracker module player based on OpenMPT' >> [email protected]
  1086. $(VERYSILENT)echo 'Version: $(DIST_LIBOPENMPT_VERSION)' >> [email protected]
  1087. $(VERYSILENT)echo 'Requires.private: $(PC_REQUIRES_ZLIB) $(PC_REQUIRES_MPG123) $(PC_REQUIRES_OGG) $(PC_REQUIRES_VORBIS) $(PC_REQUIRES_VORBISFILE)' >> [email protected]
  1088. $(VERYSILENT)echo 'Libs: -L$${libdir} -lopenmpt' >> [email protected]
  1089. $(VERYSILENT)echo 'Libs.private: $(PC_LIBS_PRIVATE)' >> [email protected]
  1090. $(VERYSILENT)echo 'Cflags: -I$${includedir}' >> [email protected]
  1091. $(VERYSILENT)mv [email protected] $@
  1092. .PHONY: install
  1093. install: $(OUTPUTS)
  1094. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/include/libopenmpt
  1095. $(INSTALL_DATA) libopenmpt/libopenmpt_config.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_config.h
  1096. $(INSTALL_DATA) libopenmpt/libopenmpt_version.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_version.h
  1097. $(INSTALL_DATA) libopenmpt/libopenmpt.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt.h
  1098. $(INSTALL_DATA) libopenmpt/libopenmpt_stream_callbacks_buffer.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_stream_callbacks_buffer.h
  1099. $(INSTALL_DATA) libopenmpt/libopenmpt_stream_callbacks_fd.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_stream_callbacks_fd.h
  1100. $(INSTALL_DATA) libopenmpt/libopenmpt_stream_callbacks_file.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_stream_callbacks_file.h
  1101. $(INSTALL_DATA) libopenmpt/libopenmpt.hpp $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt.hpp
  1102. $(INSTALL_DATA) libopenmpt/libopenmpt_ext.h $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_ext.h
  1103. $(INSTALL_DATA) libopenmpt/libopenmpt_ext.hpp $(DESTDIR)$(PREFIX)/include/libopenmpt/libopenmpt_ext.hpp
  1104. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/lib/pkgconfig
  1105. $(INSTALL_DATA) bin/libopenmpt.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig/libopenmpt.pc
  1106. ifeq ($(SHARED_LIB),1)
  1107. ifeq ($(SHARED_SONAME),1)
  1108. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/lib
  1109. $(INSTALL_LIB) bin/$(LIBOPENMPT_SONAME) $(DESTDIR)$(PREFIX)/lib/$(LIBOPENMPT_SONAME)
  1110. ln -sf $(LIBOPENMPT_SONAME) $(DESTDIR)$(PREFIX)/lib/libopenmpt$(SOSUFFIX)
  1111. else
  1112. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/lib
  1113. $(INSTALL_LIB) bin/libopenmpt$(SOSUFFIX) $(DESTDIR)$(PREFIX)/lib/libopenmpt$(SOSUFFIX)
  1114. endif
  1115. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/lib
  1116. endif
  1117. ifeq ($(STATIC_LIB),1)
  1118. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/lib
  1119. $(INSTALL_DATA) bin/libopenmpt.a $(DESTDIR)$(PREFIX)/lib/libopenmpt.a
  1120. endif
  1121. ifeq ($(OPENMPT123),1)
  1122. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/bin
  1123. ifeq ($(SHARED_LIB),1)
  1124. $(INSTALL_PROGRAM) bin/openmpt123$(EXESUFFIX).norpath $(DESTDIR)$(PREFIX)/bin/openmpt123$(EXESUFFIX)
  1125. else
  1126. $(INSTALL_PROGRAM) bin/openmpt123$(EXESUFFIX) $(DESTDIR)$(PREFIX)/bin/openmpt123$(EXESUFFIX)
  1127. endif
  1128. ifeq ($(MPT_WITH_HELP2MAN),1)
  1129. $(INSTALL_MAKE_DIR) $(DESTDIR)$(MANDIR)/man1
  1130. $(INSTALL_DATA) bin/openmpt123.1 $(DESTDIR)$(MANDIR)/man1/openmpt123.1
  1131. endif
  1132. endif
  1133. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/share/doc/libopenmpt
  1134. $(INSTALL_DATA) LICENSE $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/LICENSE
  1135. $(INSTALL_DATA) README.md $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/README.md
  1136. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples
  1137. $(INSTALL_DATA) examples/libopenmpt_example_c.c $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_c.c
  1138. $(INSTALL_DATA) examples/libopenmpt_example_c_mem.c $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_c_mem.c
  1139. $(INSTALL_DATA) examples/libopenmpt_example_c_probe.c $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_c_probe.c
  1140. $(INSTALL_DATA) examples/libopenmpt_example_c_unsafe.c $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_c_unsafe.c
  1141. $(INSTALL_DATA) examples/libopenmpt_example_c_pipe.c $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_c_pipe.c
  1142. $(INSTALL_DATA) examples/libopenmpt_example_c_stdout.c $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_c_stdout.c
  1143. $(INSTALL_DATA) examples/libopenmpt_example_cxx.cpp $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/examples/libopenmpt_example_cxx.cpp
  1144. .PHONY: install-doc
  1145. install-doc: bin/made.docs
  1146. ifeq ($(MPT_WITH_DOXYGEN),1)
  1147. $(INSTALL_MAKE_DIR) $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/html/
  1148. $(INSTALL_DATA_DIR) bin/docs/html $(DESTDIR)$(PREFIX)/share/doc/libopenmpt/html
  1149. endif
  1150. .PHONY: dist
  1151. dist: bin/dist-tar.tar bin/dist-zip.tar bin/dist-doc.tar
  1152. .PHONY: dist-tar
  1153. dist-tar: bin/dist-tar.tar
  1154. bin/dist-tar.tar: bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION).makefile.tar.gz
  1155. rm -rf bin/dist-tar.tar
  1156. cd bin/dist-tar/ && rm -rf libopenmpt
  1157. cd bin/dist-tar/ && mkdir -p libopenmpt/src.makefile/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1158. cd bin/dist-tar/ && cp libopenmpt-$(DIST_LIBOPENMPT_VERSION).makefile.tar.gz libopenmpt/src.makefile/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1159. cd bin/dist-tar/ && tar cv --numeric-owner --owner=0 --group=0 -f ../dist-tar.tar libopenmpt
  1160. .PHONY: dist-zip
  1161. dist-zip: bin/dist-zip.tar
  1162. bin/dist-zip.tar: bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION).msvc.zip
  1163. rm -rf bin/dist-zip.tar
  1164. cd bin/dist-zip/ && rm -rf libopenmpt
  1165. cd bin/dist-zip/ && mkdir -p libopenmpt/src.msvc/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1166. cd bin/dist-zip/ && cp libopenmpt-$(DIST_LIBOPENMPT_VERSION).msvc.zip libopenmpt/src.msvc/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1167. cd bin/dist-zip/ && tar cv --numeric-owner --owner=0 --group=0 -f ../dist-zip.tar libopenmpt
  1168. .PHONY: dist-doc
  1169. dist-doc: bin/dist-doc.tar
  1170. bin/dist-doc.tar: bin/dist-doc/libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc.tar.gz
  1171. rm -rf bin/dist-doc.tar
  1172. cd bin/dist-doc/ && rm -rf libopenmpt
  1173. cd bin/dist-doc/ && mkdir -p libopenmpt/doc/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1174. cd bin/dist-doc/ && cp libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc.tar.gz libopenmpt/doc/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1175. cd bin/dist-doc/ && tar cv --numeric-owner --owner=0 --group=0 -f ../dist-doc.tar libopenmpt
  1176. .PHONY: dist-js
  1177. dist-js: bin/dist-js.tar
  1178. bin/dist-js.tar: bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION).dev.js.tar.gz
  1179. rm -rf bin/dist-js.tar
  1180. cd bin/dist-js/ && rm -rf libopenmpt
  1181. cd bin/dist-js/ && mkdir -p libopenmpt/dev.js/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1182. cd bin/dist-js/ && cp libopenmpt-$(DIST_LIBOPENMPT_VERSION).dev.js.tar.gz libopenmpt/dev.js/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1183. cd bin/dist-js/ && tar cv --numeric-owner --owner=0 --group=0 -f ../dist-js.tar libopenmpt
  1184. .PHONY: dist-dos
  1185. dist-dos: bin/dist-dos.tar
  1186. bin/dist-dos.tar: bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.dos.zip
  1187. rm -rf bin/dist-dos.tar
  1188. cd bin/dist-dos/ && rm -rf libopenmpt
  1189. cd bin/dist-dos/ && mkdir -p libopenmpt/bin.dos/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1190. cd bin/dist-dos/ && cp libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.dos.zip libopenmpt/bin.dos/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1191. cd bin/dist-dos/ && tar cv --numeric-owner --owner=0 --group=0 -f ../dist-dos.tar libopenmpt
  1192. .PHONY: dist-retro-win9x
  1193. dist-retro-win9x: bin/dist-retro-win9x.tar
  1194. bin/dist-retro-win9x.tar: bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.retro.win9x.zip
  1195. rm -rf bin/dist-retro-win9x.tar
  1196. cd bin/dist-retro-win9x/ && rm -rf libopenmpt
  1197. cd bin/dist-retro-win9x/ && mkdir -p libopenmpt/bin.retro.win9x/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1198. cd bin/dist-retro-win9x/ && cp libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.retro.win9x.zip libopenmpt/bin.retro.win9x/$(DIST_LIBOPENMPT_TARBALL_VERSION)/
  1199. cd bin/dist-retro-win9x/ && tar cv --numeric-owner --owner=0 --group=0 -f ../dist-retro-win9x.tar libopenmpt
  1200. .PHONY: bin/dist.mk
  1201. bin/dist.mk:
  1202. rm -rf $@
  1203. echo > [email protected]
  1204. echo 'MPT_SVNVERSION=$(MPT_SVNVERSION)' >> [email protected]
  1205. echo 'MPT_SVNURL=$(MPT_SVNURL)' >> [email protected]
  1206. echo 'MPT_SVNDATE=$(MPT_SVNDATE)' >> [email protected]
  1207. mv [email protected] $@
  1208. .PHONY: bin/svn_version_dist.h
  1209. bin/svn_version_dist.h:
  1210. rm -rf $@
  1211. echo > [email protected]
  1212. echo '#pragma once' >> [email protected]
  1213. echo '#define OPENMPT_VERSION_SVNVERSION "$(MPT_SVNVERSION)"' >> [email protected]
  1214. echo '#define OPENMPT_VERSION_REVISION $(MPT_SVNREVISION)' >> [email protected]
  1215. echo '#define OPENMPT_VERSION_DIRTY $(MPT_SVNDIRTY)' >> [email protected]
  1216. echo '#define OPENMPT_VERSION_MIXEDREVISIONS $(MPT_SVNMIXED)' >> [email protected]
  1217. echo '#define OPENMPT_VERSION_URL "$(MPT_SVNURL)"' >> [email protected]
  1218. echo '#define OPENMPT_VERSION_DATE "$(MPT_SVNDATE)"' >> [email protected]
  1219. echo '#define OPENMPT_VERSION_IS_PACKAGE 1' >> [email protected]
  1220. echo >> [email protected]
  1221. mv [email protected] $@
  1222. .PHONY: bin/dist-doc/libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc.tar
  1223. bin/dist-doc/libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc.tar: docs
  1224. mkdir -p bin/dist-doc
  1225. rm -rf bin/dist-doc/libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc
  1226. mkdir -p bin/dist-doc/libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc
  1227. cp -Rv bin/docs/html bin/dist-doc/libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc/docs
  1228. cd bin/dist-doc/ && tar cv --numeric-owner --owner=0 --group=0 libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc > libopenmpt-$(DIST_LIBOPENMPT_VERSION).doc.tar
  1229. .PHONY: bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION).makefile.tar
  1230. bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION).makefile.tar: bin/dist.mk bin/svn_version_dist.h
  1231. mkdir -p bin/dist-tar
  1232. rm -rf bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1233. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1234. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build
  1235. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc
  1236. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include
  1237. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src
  1238. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt
  1239. mkdir -p bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt
  1240. svn export ./LICENSE bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSE
  1241. svn export ./README.md bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/README.md
  1242. svn export ./Makefile bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Makefile
  1243. svn export ./.clang-format bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/.clang-format
  1244. svn export ./bin bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin
  1245. svn export ./build/android_ndk bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/android_ndk
  1246. svn export ./build/make bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/make
  1247. svn export ./build/svn_version bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/svn_version
  1248. svn export ./common bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/common
  1249. svn export ./doc/contributing.md bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc/contributing.md
  1250. svn export ./doc/libopenmpt_styleguide.md bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc/libopenmpt_styleguide.md
  1251. svn export ./doc/module_formats.md bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc/module_formats.md
  1252. svn export ./soundlib bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/soundlib
  1253. svn export ./sounddsp bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/sounddsp
  1254. svn export ./src/mpt/.clang-format bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/.clang-format
  1255. svn export ./src/mpt/LICENSE.BSD-3-Clause.txt bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/LICENSE.BSD-3-Clause.txt
  1256. svn export ./src/mpt/LICENSE.BSL-1.0.txt bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/LICENSE.BSL-1.0.txt
  1257. svn export ./src/mpt/audio bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/audio
  1258. svn export ./src/mpt/base bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/base
  1259. svn export ./src/mpt/binary bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/binary
  1260. svn export ./src/mpt/check bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/check
  1261. svn export ./src/mpt/crc bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/crc
  1262. #svn export ./src/mpt/crypto bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/crypto
  1263. svn export ./src/mpt/detect bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/detect
  1264. svn export ./src/mpt/endian bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/endian
  1265. svn export ./src/mpt/environment bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/environment
  1266. svn export ./src/mpt/exception_text bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/exception_text
  1267. svn export ./src/mpt/format bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/format
  1268. svn export ./src/mpt/io bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/io
  1269. svn export ./src/mpt/io_read bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/io_read
  1270. svn export ./src/mpt/io_write bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/io_write
  1271. #svn export ./src/mpt/json bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/json
  1272. #svn export ./src/mpt/library bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/library
  1273. svn export ./src/mpt/mutex bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/mutex
  1274. svn export ./src/mpt/out_of_memory bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/out_of_memory
  1275. svn export ./src/mpt/osinfo bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/osinfo
  1276. svn export ./src/mpt/parse bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/parse
  1277. #svn export ./src/mpt/path bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/path
  1278. svn export ./src/mpt/random bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/random
  1279. svn export ./src/mpt/string bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/string
  1280. svn export ./src/mpt/string_transcode bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/string_transcode
  1281. svn export ./src/mpt/system_error bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/system_error
  1282. svn export ./src/mpt/test bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/test
  1283. svn export ./src/mpt/uuid bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/uuid
  1284. #svn export ./src/mpt/uuid_namespace bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/uuid_namespace
  1285. svn export ./src/openmpt/all bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/all
  1286. svn export ./src/openmpt/base bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/base
  1287. svn export ./src/openmpt/logging bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/logging
  1288. svn export ./src/openmpt/random bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/random
  1289. svn export ./src/openmpt/soundbase bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/soundbase
  1290. svn export ./test bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/test
  1291. rm bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/test/mpt_tests_crypto.cpp
  1292. rm bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/test/mpt_tests_uuid_namespace.cpp
  1293. svn export ./libopenmpt bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/libopenmpt
  1294. svn export ./examples bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/examples
  1295. svn export ./openmpt123 bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/openmpt123
  1296. svn export ./contrib bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/contrib
  1297. svn export ./include/allegro42 bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/allegro42
  1298. svn export ./include/cwsdpmi bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/cwsdpmi
  1299. svn export ./include/minimp3 bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/minimp3
  1300. svn export ./include/miniz bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/miniz
  1301. svn export ./include/stb_vorbis bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/stb_vorbis
  1302. cp bin/dist.mk bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/dist.mk
  1303. cp bin/svn_version_dist.h bin/dist-tar/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/svn_version/svn_version.h
  1304. cd bin/dist-tar/ && tar cv --numeric-owner --owner=0 --group=0 libopenmpt-$(DIST_LIBOPENMPT_VERSION) > libopenmpt-$(DIST_LIBOPENMPT_VERSION).makefile.tar
  1305. .PHONY: bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION).msvc.zip
  1306. bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION).msvc.zip: bin/dist.mk bin/svn_version_dist.h
  1307. mkdir -p bin/dist-zip
  1308. rm -rf bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1309. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1310. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build
  1311. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/genie
  1312. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/premake
  1313. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc
  1314. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include
  1315. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src
  1316. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt
  1317. mkdir -p bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt
  1318. svn export ./LICENSE bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSE --native-eol CRLF
  1319. svn export ./README.md bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/README.md --native-eol CRLF
  1320. svn export ./Makefile bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Makefile --native-eol CRLF
  1321. svn export ./.clang-format bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/.clang-format --native-eol CRLF
  1322. svn export ./bin bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin --native-eol CRLF
  1323. svn export ./build/genie/def bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/genie/def --native-eol CRLF
  1324. svn export ./build/premake/def bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/premake/def --native-eol CRLF
  1325. svn export ./build/premake/inc bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/premake/inc --native-eol CRLF
  1326. svn export ./build/premake/lnk bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/premake/lnk --native-eol CRLF
  1327. svn export ./build/scriptlib bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/scriptlib --native-eol CRLF
  1328. svn export ./build/svn_version bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/svn_version --native-eol CRLF
  1329. svn export ./build/vs bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs --native-eol CRLF
  1330. svn export ./build/vs2017winxp bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2017winxp --native-eol CRLF
  1331. svn export ./build/vs2017win7 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2017win7 --native-eol CRLF
  1332. svn export ./build/vs2017win10 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2017win10 --native-eol CRLF
  1333. svn export ./build/vs2017uwp bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2017uwp --native-eol CRLF
  1334. svn export ./build/vs2019win7 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2019win7 --native-eol CRLF
  1335. svn export ./build/vs2019win81 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2019win81 --native-eol CRLF
  1336. svn export ./build/vs2019win10 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2019win10 --native-eol CRLF
  1337. svn export ./build/vs2019uwp bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2019uwp --native-eol CRLF
  1338. svn export ./build/vs2022win7 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2022win7 --native-eol CRLF
  1339. svn export ./build/vs2022win81 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2022win81 --native-eol CRLF
  1340. svn export ./build/vs2022win10 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2022win10 --native-eol CRLF
  1341. svn export ./build/vs2022uwp bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2022uwp --native-eol CRLF
  1342. svn export ./build/vs2022win10clang bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/vs2022win10clang --native-eol CRLF
  1343. svn export ./build/download_externals.cmd bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/download_externals.cmd --native-eol CRLF
  1344. svn export ./common bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/common --native-eol CRLF
  1345. svn export ./doc/contributing.md bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc/contributing.md --native-eol CRLF
  1346. svn export ./doc/libopenmpt_styleguide.md bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc/libopenmpt_styleguide.md --native-eol CRLF
  1347. svn export ./doc/module_formats.md bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/doc/module_formats.md --native-eol CRLF
  1348. svn export ./soundlib bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/soundlib --native-eol CRLF
  1349. svn export ./sounddsp bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/sounddsp --native-eol CRLF
  1350. svn export ./src/mpt/.clang-format bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/.clang-format --native-eol CRLF
  1351. svn export ./src/mpt/LICENSE.BSD-3-Clause.txt bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/LICENSE.BSD-3-Clause.txt --native-eol CRLF
  1352. svn export ./src/mpt/LICENSE.BSL-1.0.txt bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/LICENSE.BSL-1.0.txt --native-eol CRLF
  1353. svn export ./src/mpt/audio bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/audio --native-eol CRLF
  1354. svn export ./src/mpt/base bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/base --native-eol CRLF
  1355. svn export ./src/mpt/binary bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/binary --native-eol CRLF
  1356. svn export ./src/mpt/check bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/check --native-eol CRLF
  1357. svn export ./src/mpt/crc bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/crc --native-eol CRLF
  1358. #svn export ./src/mpt/crypto bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/crypto --native-eol CRLF
  1359. svn export ./src/mpt/detect bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/detect --native-eol CRLF
  1360. svn export ./src/mpt/endian bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/endian --native-eol CRLF
  1361. svn export ./src/mpt/environment bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/environment --native-eol CRLF
  1362. svn export ./src/mpt/exception_text bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/exception_text --native-eol CRLF
  1363. svn export ./src/mpt/format bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/format --native-eol CRLF
  1364. svn export ./src/mpt/io bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/io --native-eol CRLF
  1365. svn export ./src/mpt/io_read bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/io_read --native-eol CRLF
  1366. svn export ./src/mpt/io_write bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/io_write --native-eol CRLF
  1367. #svn export ./src/mpt/json bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/json --native-eol CRLF
  1368. #svn export ./src/mpt/library bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/library --native-eol CRLF
  1369. svn export ./src/mpt/mutex bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/mutex --native-eol CRLF
  1370. svn export ./src/mpt/out_of_memory bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/out_of_memory --native-eol CRLF
  1371. svn export ./src/mpt/osinfo bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/osinfo --native-eol CRLF
  1372. svn export ./src/mpt/parse bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/parse --native-eol CRLF
  1373. #svn export ./src/mpt/path bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/path --native-eol CRLF
  1374. svn export ./src/mpt/random bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/random --native-eol CRLF
  1375. svn export ./src/mpt/string bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/string --native-eol CRLF
  1376. svn export ./src/mpt/string_transcode bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/string_transcode --native-eol CRLF
  1377. svn export ./src/mpt/system_error bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/system_error --native-eol CRLF
  1378. svn export ./src/mpt/test bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/test --native-eol CRLF
  1379. svn export ./src/mpt/uuid bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/uuid --native-eol CRLF
  1380. #svn export ./src/mpt/uuid_namespace bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/mpt/uuid_namespace --native-eol CRLF
  1381. svn export ./src/openmpt/all bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/all --native-eol CRLF
  1382. svn export ./src/openmpt/base bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/base --native-eol CRLF
  1383. svn export ./src/openmpt/logging bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/logging --native-eol CRLF
  1384. svn export ./src/openmpt/random bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/random --native-eol CRLF
  1385. svn export ./src/openmpt/soundbase bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/src/openmpt/soundbase --native-eol CRLF
  1386. svn export ./test bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/test --native-eol CRLF
  1387. rm bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/test/mpt_tests_crypto.cpp
  1388. rm bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/test/mpt_tests_uuid_namespace.cpp
  1389. svn export ./libopenmpt bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/libopenmpt --native-eol CRLF
  1390. svn export ./examples bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/examples --native-eol CRLF
  1391. svn export ./openmpt123 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/openmpt123 --native-eol CRLF
  1392. svn export ./contrib bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/contrib --native-eol CRLF
  1393. svn export ./include/minimp3 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/minimp3 --native-eol CRLF
  1394. svn export ./include/miniz bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/miniz --native-eol CRLF
  1395. svn export ./include/mpg123 bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/mpg123 --native-eol CRLF
  1396. svn export ./include/flac bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/flac --native-eol CRLF
  1397. svn export ./include/portaudio bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/portaudio --native-eol CRLF
  1398. svn export ./include/ogg bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/ogg --native-eol CRLF
  1399. svn export ./include/pugixml bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/pugixml --native-eol CRLF
  1400. svn export ./include/stb_vorbis bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/stb_vorbis --native-eol CRLF
  1401. svn export ./include/vorbis bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/vorbis --native-eol CRLF
  1402. svn export ./include/winamp bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/winamp --native-eol CRLF
  1403. svn export ./include/xmplay bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/xmplay --native-eol CRLF
  1404. svn export ./include/zlib bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/include/zlib --native-eol CRLF
  1405. cp bin/dist.mk bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/dist.mk
  1406. cp bin/svn_version_dist.h bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/build/svn_version/svn_version.h
  1407. cd bin/dist-zip/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/ && zip -r ../libopenmpt-$(DIST_LIBOPENMPT_VERSION).msvc.zip --compression-method deflate -9 *
  1408. .PHONY: bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION).zip
  1409. bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION).zip: bin/svn_version_dist.h
  1410. mkdir -p bin/dist-zip
  1411. rm -rf bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)
  1412. svn export ./ bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)/ --native-eol CRLF
  1413. cp bin/svn_version_dist.h bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)/common/svn_version_default/svn_version.h
  1414. cd bin/dist-zip/OpenMPT-src-$(DIST_OPENMPT_VERSION)/ && zip -r ../OpenMPT-src-$(DIST_OPENMPT_VERSION).zip --compression-method deflate -9 *
  1415. .PHONY: bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION).dev.js.tar
  1416. bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION).dev.js.tar:
  1417. mkdir -p bin/dist-js
  1418. rm -rf bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1419. mkdir -p bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1420. mkdir -p bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/licenses
  1421. svn export ./LICENSE bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/license.txt
  1422. svn export ./src/mpt/LICENSE.BSD-3-Clause.txt bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/licenses/license.mpt.BSD-3-Clause.txt
  1423. svn export ./src/mpt/LICENSE.BSL-1.0.txt bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/licenses/license.mpt.BSL-1.0.txt
  1424. svn export ./include/minimp3/LICENSE bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/licenses/license.minimp3.txt
  1425. svn export ./include/miniz/miniz.c bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/licenses/license.miniz.txt
  1426. svn export ./include/stb_vorbis/stb_vorbis.c bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/licenses/license.stb_vorbis.txt
  1427. mkdir -p bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin
  1428. mkdir -p bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/all
  1429. cp bin/stage/all/libopenmpt.js bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/all/libopenmpt.js
  1430. cp bin/stage/all/libopenmpt.js.mem bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/all/libopenmpt.js.mem
  1431. cp bin/stage/all/libopenmpt.wasm bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/all/libopenmpt.wasm
  1432. cp bin/stage/all/libopenmpt.wasm.js bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/all/libopenmpt.wasm.js
  1433. mkdir -p bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/wasm
  1434. cp bin/stage/wasm/libopenmpt.js bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/wasm/libopenmpt.js
  1435. cp bin/stage/wasm/libopenmpt.wasm bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/wasm/libopenmpt.wasm
  1436. mkdir -p bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/js
  1437. cp bin/stage/js/libopenmpt.js bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/js/libopenmpt.js
  1438. cp bin/stage/js/libopenmpt.js.mem bin/dist-js/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/bin/js/libopenmpt.js.mem
  1439. cd bin/dist-js/ && tar cv --numeric-owner --owner=0 --group=0 libopenmpt-$(DIST_LIBOPENMPT_VERSION) > libopenmpt-$(DIST_LIBOPENMPT_VERSION).dev.js.tar
  1440. .PHONY: bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.dos.zip
  1441. bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.dos.zip:
  1442. mkdir -p bin/dist-dos
  1443. rm -rf bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1444. mkdir -p bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1445. mkdir -p bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES
  1446. svn export ./LICENSE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSE.TXT --native-eol CRLF
  1447. svn export ./src/mpt/LICENSE.BSD-3-Clause.txt bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/MPT_BSD3.TXT --native-eol CRLF
  1448. svn export ./src/mpt/LICENSE.BSL-1.0.txt bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/MPT_BSL1.TXT --native-eol CRLF
  1449. cp include/allegro42/readme.txt bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/ALLEGRO.TXT
  1450. cp include/cwsdpmi/bin/cwsdpmi.doc bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/CWSDPMI.TXT
  1451. ifeq ($(ALLOW_LGPL),1)
  1452. svn export ./include/mpg123/COPYING bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/MPG123.TXT --native-eol CRLF
  1453. svn export ./include/mpg123/AUTHORS bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/MPG123_A.TXT --native-eol CRLF
  1454. svn export ./include/vorbis/COPYING bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/VORBIS.TXT --native-eol CRLF
  1455. svn export ./include/zlib/README bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/ZLIB.TXT --native-eol CRLF
  1456. else
  1457. svn export ./include/minimp3/LICENSE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/MINIMP3.TXT --native-eol CRLF
  1458. svn export ./include/miniz/miniz.c bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/MINIZ.TXT --native-eol CRLF
  1459. svn export ./include/stb_vorbis/stb_vorbis.c bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSES/STBVORB.TXT --native-eol CRLF
  1460. endif
  1461. mkdir -p bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/SRC
  1462. cp build/externals/csdpmi7s.zip bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/SRC/CSDPMI7S.ZIP
  1463. mkdir -p bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN
  1464. cp bin/openmpt123.exe bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/OMPT123.EXE
  1465. cp include/cwsdpmi/bin/cwsdpmi.doc bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSDPMI.DOC
  1466. cp include/cwsdpmi/bin/CWSDPMI.EXE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSDPMI.EXE
  1467. cp include/cwsdpmi/bin/CWSDPR0.EXE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSDPR0.EXE
  1468. cp include/cwsdpmi/bin/cwsparam.doc bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSPARAM.DOC
  1469. cp include/cwsdpmi/bin/CWSPARAM.EXE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSPARAM.EXE
  1470. cp include/cwsdpmi/bin/CWSDSTUB.EXE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSDSTUB.EXE
  1471. cp include/cwsdpmi/bin/CWSDSTR0.EXE bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/BIN/CWSDSTR0.EXE
  1472. cd bin/dist-dos/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/ && zip -r ../libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.dos.zip --compression-method deflate -9 *
  1473. .PHONY: bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.retro.win9x.zip
  1474. bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.retro.win9x.zip:
  1475. mkdir -p bin/dist-retro-win9x
  1476. rm -rf bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1477. mkdir -p bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)
  1478. mkdir -p bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses
  1479. svn export ./LICENSE bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/LICENSE.TXT --native-eol CRLF
  1480. svn export ./libopenmpt/dox/changelog.md bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Changelog.txt --native-eol CRLF
  1481. svn export ./src/mpt/LICENSE.BSD-3-Clause.txt bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/license.mpt.BSD-3-Clause.txt --native-eol CRLF
  1482. svn export ./src/mpt/LICENSE.BSL-1.0.txt bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/license.mpt.BSL-1.0.txt --native-eol CRLF
  1483. ifeq ($(ALLOW_LGPL),1)
  1484. svn export ./include/mpg123/COPYING bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.mpg123.txt --native-eol CRLF
  1485. svn export ./include/mpg123/AUTHORS bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.Authors.txt --native-eol CRLF
  1486. svn export ./include/vorbis/COPYING bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.Vorbis.txt --native-eol CRLF
  1487. svn export ./include/zlib/README bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.zlib.txt --native-eol CRLF
  1488. else
  1489. svn export ./include/minimp3/LICENSE bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.minimp3.txt --native-eol CRLF
  1490. svn export ./include/miniz/miniz.c bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.miniz.txt --native-eol CRLF
  1491. svn export ./include/stb_vorbis/stb_vorbis.c bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Licenses/License.stb_vorbis.txt --native-eol CRLF
  1492. endif
  1493. mkdir -p bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/openmpt123
  1494. cp bin/openmpt123.exe bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/openmpt123/openmpt123.exe
  1495. mkdir -p bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/XMPlay
  1496. svn export ./libopenmpt/doc/xmp-openmpt.txt bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/XMPlay/xmp-openmpt.txt --native-eol CRLF
  1497. cp bin/xmp-openmpt.dll bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/XMPlay/xmp-openmpt.dll
  1498. mkdir -p bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Winamp
  1499. svn export ./libopenmpt/doc/in_openmpt.txt bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Winamp/in_openmpt.txt --native-eol CRLF
  1500. cp bin/in_openmpt.dll bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/Winamp/in_openmpt.dll
  1501. cd bin/dist-retro-win9x/libopenmpt-$(DIST_LIBOPENMPT_VERSION)/ && ../../../build/tools/7zip/7z a -tzip -mx=9 ../libopenmpt-$(DIST_LIBOPENMPT_VERSION).bin.retro.win9x.zip *
  1502. bin/libopenmpt.a: $(LIBOPENMPT_OBJECTS)
  1503. $(INFO) [AR] $@
  1504. $(SILENT)$(AR) $(ARFLAGS) $@ $^
  1505. bin/libopenmpt$(SOSUFFIX): $(LIBOPENMPT_OBJECTS)
  1506. $(INFO) [LD] $@
  1507. ifeq ($(NO_SHARED_LINKER_FLAG),1)
  1508. $(SILENT)$(LINK.cc) $(LIBOPENMPT_LDFLAGS) $(SO_LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
  1509. else
  1510. $(SILENT)$(LINK.cc) -shared $(LIBOPENMPT_LDFLAGS) $(SO_LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
  1511. endif
  1512. ifeq ($(SHARED_SONAME),1)
  1513. $(SILENT)mv bin/libopenmpt$(SOSUFFIX) bin/$(LIBOPENMPT_SONAME)
  1514. $(SILENT)ln -sf $(LIBOPENMPT_SONAME) bin/libopenmpt$(SOSUFFIX)
  1515. endif
  1516. bin/openmpt123.1: bin/openmpt123$(EXESUFFIX) openmpt123/openmpt123.h2m
  1517. $(INFO) [HELP2MAN] $@
  1518. $(SILENT)help2man --no-discard-stderr --no-info --version-option=--man-version --help-option=--man-help --include=openmpt123/openmpt123.h2m $< > $@
  1519. bin/in_openmpt$(SOSUFFIX): $(INOPENMPT_OBJECTS) $(LIBOPENMPT_OBJECTS)
  1520. $(INFO) [LD] $@
  1521. ifeq ($(NO_SHARED_LINKER_FLAG),1)
  1522. $(SILENT)$(LINK.cc) $(LIBOPENMPT_LDFLAGS) $(SO_LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
  1523. else
  1524. $(SILENT)$(LINK.cc) -shared $(LIBOPENMPT_LDFLAGS) $(SO_LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -o $@
  1525. endif
  1526. bin/xmp-openmpt$(SOSUFFIX): $(XMPOPENMPT_OBJECTS) $(LIBOPENMPT_OBJECTS)
  1527. $(INFO) [LD] $@
  1528. ifeq ($(NO_SHARED_LINKER_FLAG),1)
  1529. $(SILENT)$(LINK.cc) $(LIBOPENMPT_LDFLAGS) $(SO_LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -lgdi32 -o $@
  1530. else
  1531. $(SILENT)$(LINK.cc) -shared $(LIBOPENMPT_LDFLAGS) $(SO_LDFLAGS) $^ $(LOADLIBES) $(LDLIBS) -lgdi32 -o $@
  1532. endif
  1533. openmpt123/openmpt123.o: openmpt123/openmpt123.cpp
  1534. $(INFO) [CXX] $<
  1535. $(VERYSILENT)$(CXX) $(CXXFLAGS) $(CXXFLAGS_OPENMPT123) $(CPPFLAGS) $(CPPFLAGS_OPENMPT123) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1536. $(SILENT)$(COMPILE.cc) $(CXXFLAGS_OPENMPT123) $(CPPFLAGS_OPENMPT123) $(OUTPUT_OPTION) $<
  1537. bin/openmpt123$(EXESUFFIX): $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1538. $(INFO) [LD] $@
  1539. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_OPENMPT123) $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_OPENMPT123) -o $@
  1540. ifeq ($(HOST),unix)
  1541. ifeq ($(SHARED_LIB),1)
  1542. $(SILENT)mv $@ [email protected]
  1543. $(INFO) [LD] $@
  1544. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_OPENMPT123) $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_OPENMPT123) -o $@
  1545. endif
  1546. endif
  1547. contrib/fuzzing/fuzz.o: contrib/fuzzing/fuzz.c
  1548. $(INFO) [CC] $<
  1549. $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1550. $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $<
  1551. bin/fuzz$(EXESUFFIX): contrib/fuzzing/fuzz.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1552. $(INFO) [LD] $@
  1553. $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) contrib/fuzzing/fuzz.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1554. ifeq ($(HOST),unix)
  1555. ifeq ($(SHARED_LIB),1)
  1556. $(SILENT)mv $@ [email protected]
  1557. $(INFO) [LD] $@
  1558. $(SILENT)$(LINK.cc) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) contrib/fuzzing/fuzz.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1559. endif
  1560. endif
  1561. examples/libopenmpt_example_c.o: examples/libopenmpt_example_c.c
  1562. $(INFO) [CC] $<
  1563. $(VERYSILENT)$(CC) $(CFLAGS) $(CFLAGS_PORTAUDIO) $(CPPFLAGS) $(CPPFLAGS_PORTAUDIO) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1564. $(SILENT)$(COMPILE.c) $(CFLAGS_PORTAUDIO) $(CPPFLAGS_PORTAUDIO) $(OUTPUT_OPTION) $<
  1565. examples/libopenmpt_example_c_mem.o: examples/libopenmpt_example_c_mem.c
  1566. $(INFO) [CC] $<
  1567. $(VERYSILENT)$(CC) $(CFLAGS) $(CFLAGS_PORTAUDIO) $(CPPFLAGS) $(CPPFLAGS_PORTAUDIO) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1568. $(SILENT)$(COMPILE.c) $(CFLAGS_PORTAUDIO) $(CPPFLAGS_PORTAUDIO) $(OUTPUT_OPTION) $<
  1569. examples/libopenmpt_example_c_unsafe.o: examples/libopenmpt_example_c_unsafe.c
  1570. $(INFO) [CC] $<
  1571. $(VERYSILENT)$(CC) $(CFLAGS) $(CFLAGS_PORTAUDIO) $(CPPFLAGS) $(CPPFLAGS_PORTAUDIO) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1572. $(SILENT)$(COMPILE.c) $(CFLAGS_PORTAUDIO) $(CPPFLAGS_PORTAUDIO) $(OUTPUT_OPTION) $<
  1573. examples/libopenmpt_example_c_pipe.o: examples/libopenmpt_example_c_pipe.c
  1574. $(INFO) [CC] $<
  1575. $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1576. $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $<
  1577. examples/libopenmpt_example_c_stdout.o: examples/libopenmpt_example_c_stdout.c
  1578. $(INFO) [CC] $<
  1579. $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1580. $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $<
  1581. examples/libopenmpt_example_c_probe.o: examples/libopenmpt_example_c_probe.c
  1582. $(INFO) [CC] $<
  1583. $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1584. $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $<
  1585. examples/libopenmpt_example_cxx.o: examples/libopenmpt_example_cxx.cpp
  1586. $(INFO) [CXX] $<
  1587. $(VERYSILENT)$(CXX) $(CXXFLAGS) $(CXXFLAGS_PORTAUDIOCPP) $(CPPFLAGS) $(CPPFLAGS_PORTAUDIOCPP) $(TARGET_ARCH) -M -MT$@ $< > $*.d
  1588. $(SILENT)$(COMPILE.cc) $(CXXFLAGS_PORTAUDIOCPP) $(CPPFLAGS_PORTAUDIOCPP) $(OUTPUT_OPTION) $<
  1589. bin/libopenmpt_example_c$(EXESUFFIX): examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1590. $(INFO) [LD] $@
  1591. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIO) examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIO) -o $@
  1592. ifeq ($(HOST),unix)
  1593. ifeq ($(SHARED_LIB),1)
  1594. $(SILENT)mv $@ [email protected]
  1595. $(INFO) [LD] $@
  1596. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(BIN_LDFLAGS)$(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIO) examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIO) -o $@
  1597. endif
  1598. endif
  1599. bin/libopenmpt_example_c_mem$(EXESUFFIX): examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1600. $(INFO) [LD] $@
  1601. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIO) examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIO) -o $@
  1602. ifeq ($(HOST),unix)
  1603. ifeq ($(SHARED_LIB),1)
  1604. $(SILENT)mv $@ [email protected]
  1605. $(INFO) [LD] $@
  1606. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIO) examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIO) -o $@
  1607. endif
  1608. endif
  1609. bin/libopenmpt_example_c_unsafe$(EXESUFFIX): examples/libopenmpt_example_c_unsafe.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1610. $(INFO) [LD] $@
  1611. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIO) examples/libopenmpt_example_c_unsafe.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIO) -o $@
  1612. ifeq ($(HOST),unix)
  1613. ifeq ($(SHARED_LIB),1)
  1614. $(SILENT)mv $@ [email protected]
  1615. $(INFO) [LD] $@
  1616. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIO) examples/libopenmpt_example_c_unsafe.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIO) -o $@
  1617. endif
  1618. endif
  1619. bin/libopenmpt_example_c_pipe$(EXESUFFIX): examples/libopenmpt_example_c_pipe.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1620. $(INFO) [LD] $@
  1621. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) examples/libopenmpt_example_c_pipe.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1622. ifeq ($(HOST),unix)
  1623. ifeq ($(SHARED_LIB),1)
  1624. $(SILENT)mv $@ [email protected]
  1625. $(INFO) [LD] $@
  1626. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) examples/libopenmpt_example_c_pipe.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1627. endif
  1628. endif
  1629. bin/libopenmpt_example_c_stdout$(EXESUFFIX): examples/libopenmpt_example_c_stdout.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1630. $(INFO) [LD] $@
  1631. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) examples/libopenmpt_example_c_stdout.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1632. ifeq ($(HOST),unix)
  1633. ifeq ($(SHARED_LIB),1)
  1634. $(SILENT)mv $@ [email protected]
  1635. $(INFO) [LD] $@
  1636. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) examples/libopenmpt_example_c_stdout.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1637. endif
  1638. endif
  1639. bin/libopenmpt_example_c_probe$(EXESUFFIX): examples/libopenmpt_example_c_probe.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1640. $(INFO) [LD] $@
  1641. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) examples/libopenmpt_example_c_probe.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1642. ifeq ($(HOST),unix)
  1643. ifeq ($(SHARED_LIB),1)
  1644. $(SILENT)mv $@ [email protected]
  1645. $(INFO) [LD] $@
  1646. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) examples/libopenmpt_example_c_probe.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@
  1647. endif
  1648. endif
  1649. bin/libopenmpt_example_cxx$(EXESUFFIX): examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT)
  1650. $(INFO) [LD] $@
  1651. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIOCPP) examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIOCPP) -o $@
  1652. ifeq ($(HOST),unix)
  1653. ifeq ($(SHARED_LIB),1)
  1654. $(SILENT)mv $@ [email protected]
  1655. $(INFO) [LD] $@
  1656. $(SILENT)$(LINK.cc) $(BIN_LDFLAGS) $(LDFLAGS_RPATH) $(LDFLAGS_LIBOPENMPT) $(LDFLAGS_PORTAUDIOCPP) examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) $(LDLIBS_PORTAUDIOCPP) -o $@
  1657. endif
  1658. endif
  1659. .PHONY: cppcheck-libopenmpt
  1660. cppcheck-libopenmpt:
  1661. $(INFO) [CPPCHECK] libopenmpt
  1662. $(SILENT)$(CPPCHECK) -DCPPCHECK -DMPT_CPPCHECK_CUSTOM $(CPPCHECK_FLAGS) $(CPPCHECK_PLATFORM) --check-config --suppress=unmatchedSuppression $(LIBOPENMPT_CXX_SOURCES) $(LIBOPENMPT_C_SOURCES)
  1663. $(SILENT)$(CPPCHECK) -DCPPCHECK -DMPT_CPPCHECK_CUSTOM $(CPPCHECK_FLAGS) $(CPPCHECK_PLATFORM) $(LIBOPENMPT_CXX_SOURCES) $(LIBOPENMPT_C_SOURCES)
  1664. .PHONY: cppcheck-libopenmpt-test
  1665. cppcheck-libopenmpt-test:
  1666. $(INFO) [CPPCHECK] libopenmpt-test
  1667. $(SILENT)$(CPPCHECK) -DCPPCHECK -DMPT_CPPCHECK_CUSTOM $(CPPCHECK_FLAGS) $(CPPCHECK_PLATFORM) -DLIBOPENMPT_BUILD_TEST --check-config --suppress=unmatchedSuppression $(LIBOPENMPTTEST_CXX_SOURCES) $(LIBOPENMPTTEST_C_SOURCES)
  1668. $(SILENT)$(CPPCHECK) -DCPPCHECK -DMPT_CPPCHECK_CUSTOM $(CPPCHECK_FLAGS) $(CPPCHECK_PLATFORM) -DLIBOPENMPT_BUILD_TEST $(LIBOPENMPTTEST_CXX_SOURCES) $(LIBOPENMPTTEST_C_SOURCES)
  1669. .PHONY: cppcheck-openmpt123
  1670. cppcheck-openmpt123:
  1671. $(INFO) [CPPCHECK] openmpt123
  1672. $(SILENT)$(CPPCHECK) -DCPPCHECK -DMPT_CPPCHECK_CUSTOM $(CPPCHECK_FLAGS) $(CPPCHECK_PLATFORM) --check-config --suppress=unmatchedSuppression $(OPENMPT123_CXX_SOURCES)
  1673. $(SILENT)$(CPPCHECK) -DCPPCHECK -DMPT_CPPCHECK_CUSTOM $(CPPCHECK_FLAGS) $(CPPCHECK_PLATFORM) $(OPENMPT123_CXX_SOURCES)
  1674. .PHONY: cppcheck
  1675. cppcheck: cppcheck-libopenmpt cppcheck-libopenmpt-test cppcheck-openmpt123
  1676. .PHONY: clean
  1677. clean:
  1678. $(INFO) clean ...
  1679. $(SILENT)$(RM) $(call FIXPATH,$(OUTPUTS) $(ALL_OBJECTS) $(ALL_DEPENDS) $(MISC_OUTPUTS))
  1680. $(SILENT)$(RMTREE) $(call FIXPATH,$(MISC_OUTPUTDIRS))
  1681. .PHONY: clean-dist
  1682. clean-dist:
  1683. $(INFO) clean-dist ...
  1684. $(SILENT)$(RM) $(call FIXPATH,$(DIST_OUTPUTS))
  1685. $(SILENT)$(RMTREE) $(call FIXPATH,$(DIST_OUTPUTDIRS))
  1686. .PHONY: distversion
  1687. distversion:
  1688. $(SILENT)echo "$(DIST_LIBOPENMPT_VERSION)"
  1689. .PHONY: distversion-pure
  1690. distversion-pure:
  1691. $(SILENT)echo "$(DIST_LIBOPENMPT_VERSION_PURE)"
  1692. .PHONY: distversion-tarball
  1693. distversion-tarball:
  1694. $(SILENT)echo "$(DIST_LIBOPENMPT_TARBALL_VERSION)"