From: <man...@us...> - 2013-12-05 12:05:22
|
Revision: 3374 http://sourceforge.net/p/modplug/code/3374 Author: manxorist Date: 2013-12-05 12:05:14 +0000 (Thu, 05 Dec 2013) Log Message: ----------- [Mod] libopenmpt: Move Makefile from openmpt/Makefile to top-level Makefile. Move binaries from openmpt/bin/ to bin/. Move makefile configurations from openmpt123/ into build/make/. Modified Paths: -------------- trunk/OpenMPT/README Added Paths: ----------- trunk/OpenMPT/Makefile trunk/OpenMPT/build/make/ trunk/OpenMPT/build/make/Makefile.config.clang trunk/OpenMPT/build/make/Makefile.config.defaults trunk/OpenMPT/build/make/Makefile.config.macosx trunk/OpenMPT/build/make/Makefile.config.mingw64-win32 trunk/OpenMPT/build/make/Makefile.config.mingw64-win64 Removed Paths: ------------- trunk/OpenMPT/openmpt123/Makefile trunk/OpenMPT/openmpt123/Makefile.config.defaults trunk/OpenMPT/openmpt123/Makefile.config.llvm trunk/OpenMPT/openmpt123/Makefile.config.macosx trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win32 trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win64 trunk/OpenMPT/openmpt123/bin/ Copied: trunk/OpenMPT/Makefile (from rev 3373, trunk/OpenMPT/openmpt123/Makefile) =================================================================== --- trunk/OpenMPT/Makefile (rev 0) +++ trunk/OpenMPT/Makefile 2013-12-05 12:05:14 UTC (rev 3374) @@ -0,0 +1,345 @@ + +INFO = @echo +SILENT = @ +VERYSILENT = @ + + +ifeq ($(VERBOSE),2) +INFO = @true +SILENT = +VERYSILENT = +endif + +ifeq ($(VERBOSE),1) +INFO = @true +SILENT = +VERYSILENT = @ +endif + + +ifeq ($(QUIET),1) +INFO = @true +SILENT = @ +VERYSILENT = @ +endif + + +DYNLINK=1 +SHARED_LIB=1 +STATIC_LIB=1 +EXAMPLES=1 +OPENMPT123=1 + + +# get commandline or defaults + +CPPFLAGS := $(CPPFLAGS) +CXXFLAGS := $(CXXFLAGS) +CFLAGS := $(CFLAGS) +LDFLAGS := $(LDFLAGS) +LDLIBS := $(LDLIBS) +ARFLAGS := $(ARFLAGS) + + +# compiler setup + +ifeq ($(CONFIG)x,x) + +include build/make/Makefile.config.defaults + +else + +include build/make/Makefile.config.$(CONFIG) + +endif + + +# host setup + +ifeq ($(HOST),windows) + +RM = del /q /f + +else + +RM = rm -f + +endif + + + +# build setup + +CPPFLAGS += -Icommon -I. -Iinclude/modplug/include -Iinclude +CXXFLAGS += -fvisibility=hidden +CFLAGS += -fvisibility=hidden +LDFLAGS += +LDLIBS += -lm +ARFLAGS += + +ifeq ($(DEBUG),1) +CXXFLAGS += -O0 -g +CFLAGS += -O0 -g +else +CXXFLAGS += -O3 -fno-strict-aliasing -ffast-math +CFLAGS += -O3 -fno-strict-aliasing -ffast-math +endif + +ifeq ($(TEST),1) +CPPFLAGS += -DLIBOPENMPT_BUILD_TEST +endif + +CXXFLAGS += -Wall -Wextra -Wcast-align +CFLAGS += -Wall -Wextra -Wcast-align + +ifeq ($(DYNLINK),1) +LDFLAGS += -Wl,-rpath,./bin -Wl,-rpath,../bin +LDFLAGS_LIBOPENMPT += -Lbin +LDLIBS_LIBOPENMPT += -lopenmpt +endif + +#CXXFLAGS += -mtune=generic +#CFLAGS += -mtune=generic + +ifeq ($(NO_ZLIB),1) +CPPFLAGS += -DNO_ZLIB +else +#LDLIBS += -lz +ifeq ($(shell pkg-config --exists zlib && echo yes),yes) +CPPFLAGS += -DMPT_WITH_ZLIB +CPPFLAGS += $(shell pkg-config --cflags-only-I zlib ) +LDFLAGS += $(shell pkg-config --libs-only-other zlib ) +LDFLAGS += $(shell pkg-config --libs-only-L zlib ) +LDLIBS += $(shell pkg-config --libs-only-l zlib ) +endif +endif + +ifeq ($(USE_SDL),1) +#LDLIBS += -lsdl +ifeq ($(shell pkg-config --exists sdl && echo yes),yes) +CPPFLAGS += -DMPT_WITH_SDL +CPPFLAGS += $(shell pkg-config --cflags-only-I sdl ) +LDFLAGS += $(shell pkg-config --libs-only-other sdl ) +LDFLAGS += $(shell pkg-config --libs-only-L sdl ) +LDLIBS += $(shell pkg-config --libs-only-l sdl ) +endif +endif + +ifeq ($(NO_PORTAUDIO),1) +else +#LDLIBS += -lportaudio +ifeq ($(shell pkg-config --exists portaudio-2.0 && echo yes),yes) +CPPFLAGS += -DMPT_WITH_PORTAUDIO +CPPFLAGS += $(shell pkg-config --cflags-only-I portaudio-2.0 ) +LDFLAGS += $(shell pkg-config --libs-only-other portaudio-2.0 ) +LDFLAGS += $(shell pkg-config --libs-only-L portaudio-2.0 ) +LDLIBS += $(shell pkg-config --libs-only-l portaudio-2.0 ) +endif +endif + +ifeq ($(NO_FLAC),1) +else +#LDLIBS += -lFLAC +ifeq ($(shell pkg-config --exists flac && echo yes),yes) +CPPFLAGS += -DMPT_WITH_FLAC +CPPFLAGS += $(shell pkg-config --cflags-only-I flac ) +LDFLAGS += $(shell pkg-config --libs-only-other flac ) +LDFLAGS += $(shell pkg-config --libs-only-L flac ) +LDLIBS += $(shell pkg-config --libs-only-l flac ) +endif +endif + +ifeq ($(NO_WAVPACK),1) +else +#LDLIBS += -lwavpack +ifeq ($(shell pkg-config --exists wavpack && echo yes),yes) +CPPFLAGS += -DMPT_WITH_WAVPACK +CPPFLAGS += $(shell pkg-config --cflags-only-I wavpack ) +LDFLAGS += $(shell pkg-config --libs-only-other wavpack ) +LDFLAGS += $(shell pkg-config --libs-only-L wavpack ) +LDLIBS += $(shell pkg-config --libs-only-l wavpack ) +endif +endif + +ifeq ($(NO_SNDFILE),1) +else +#LDLIBS += -lsndfile +ifeq ($(shell pkg-config --exists sndfile && echo yes),yes) +CPPFLAGS += -DMPT_WITH_SNDFILE +CPPFLAGS += $(shell pkg-config --cflags-only-I sndfile ) +LDFLAGS += $(shell pkg-config --libs-only-other sndfile ) +LDFLAGS += $(shell pkg-config --libs-only-L sndfile ) +LDLIBS += $(shell pkg-config --libs-only-l sndfile ) +endif +endif + +%: %.o + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) -o $@ + +%.o: %.cpp + $(INFO) [CXX] $< + $(VERYSILENT)$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d + $(SILENT)$(COMPILE.cc) $(OUTPUT_OPTION) $< + +%.o: %.c + $(INFO) [CC ] $< + $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d + $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $< + + +BUILD_SVNVERSION = $(shell svnversion -n . ) +CPPFLAGS += -Icommon/svn_version_svnversion -D BUILD_SVNVERSION=\"$(BUILD_SVNVERSION)\" +#CPPFLAGS += -Icommon/svn_version_default + + +CPPFLAGS += -DLIBOPENMPT_BUILD + + +COMMON_CXX_SOURCES += \ + $(wildcard common/*.cpp) \ + +SOUNDLIB_CXX_SOURCES += \ + $(COMMON_CXX_SOURCES) \ + $(wildcard soundlib/*.cpp) \ + + + +LIBOPENMPT_CXX_SOURCES += \ + $(SOUNDLIB_CXX_SOURCES) \ + $(wildcard test/*.cpp) \ + libopenmpt/libopenmpt_c.cpp \ + libopenmpt/libopenmpt_cxx.cpp \ + libopenmpt/libopenmpt_impl.cpp \ + libopenmpt/libopenmpt_interactive.cpp \ + +ifeq ($(NO_ZLIB),1) +LIBOPENMPT_C_SOURCES += include/miniz/miniz.c +endif + +LIBOPENMPT_OBJECTS += $(LIBOPENMPT_CXX_SOURCES:.cpp=.o) $(LIBOPENMPT_C_SOURCES:.c=.o) +LIBOPENMPT_DEPENDS = $(LIBOPENMPT_OBJECTS:.o=.d) +ALL_OBJECTS += $(LIBOPENMPT_OBJECTS) +ALL_DEPENDS += $(LIBOPENMPT_DEPENDS) + +ifeq ($(DYNLINK),1) +OUTPUT_LIBOPENMPT += bin/libopenmpt.so +else +OBJECTS_LIBOPENMPT += $(LIBOPENMPT_OBJECTS) +endif + + +LIBOPENMPT_MODPLUG_C_SOURCES += \ + libopenmpt/libopenmpt_modplug.c \ + +LIBOPENMPT_MODPLUG_OBJECTS = $(LIBOPENMPT_MODPLUG_C_SOURCES:.c=.o) +LIBOPENMPT_MODPLUG_DEPENDS = $(LIBOPENMPT_MODPLUG_OBJECTS:.o=.d) +ALL_OBJECTS += $(LIBOPENMPT_MODPLUG_OBJECTS) +ALL_DEPENDS += $(LIBOPENMPT_MODPLUG_DEPENDS) + + +OPENMPT123_CXX_SOURCES += \ + $(wildcard openmpt123/*.cpp) \ + +OPENMPT123_OBJECTS += $(OPENMPT123_CXX_SOURCES:.cpp=.o) +OPENMPT123_DEPENDS = $(OPENMPT123_OBJECTS:.o=.d) +ALL_OBJECTS += $(OPENMPT123_OBJECTS) +ALL_DEPENDS += $(OPENMPT123_DEPENDS) + + +LIBOPENMPTTEST_CXX_SOURCES += \ + libopenmpt/libopenmpt_test.cpp \ + +LIBOPENMPTTEST_OBJECTS += $(LIBOPENMPTTEST_CXX_SOURCES:.cpp=.o) $(LIBOPENMPTTEST_C_SOURCES:.c=.o) +LIBOPENMPTTEST_DEPENDS = $(LIBOPENMPTEST_OBJECTS:.o=.d) +ALL_OBJECTS += $(LIBOPENMPTTEST_OBJECTS) +ALL_DEPENDS += $(LIBOPENMPTTEST_DEPENDS) + + +EXAMPLES_CXX_SOURCES += $(wildcard libopenmpt/examples/*.cpp) +EXAMPLES_C_SOURCES += $(wildcard libopenmpt/examples/*.c) + +EXAMPLES_OBJECTS += $(EXAMPLES_CXX_SOURCES:.cpp=.o) +EXAMPLES_OBJECTS += $(EXAMPLES_C_SOURCES:.c=.o) +EXAMPLES_DEPENDS = $(EXAMPLES_OBJECTS:.o=.d) +ALL_OBJECTS += $(EXAMPLES_OBJECTS) +ALL_DEPENDS += $(EXAMPLES_DEPENDS) + + +.PHONY: all +all: + +-include $(ALL_DEPENDS) + +ifeq ($(DYNLINK),1) +OUTPUTS += bin/libopenmpt.so +OUTPUTS += bin/libopenmpt_modplug.so +endif +ifeq ($(SHARED_LIB),1) +OUTPUTS += bin/libopenmpt.so +endif +ifeq ($(STATIC_LIB),1) +OUTPUTS += bin/openmpt.a +endif +ifeq ($(OPENMPT123),1) +OUTPUTS += bin/openmpt123$(EXESUFFIX) +endif +ifeq ($(NO_PORTAUDIO),1) +else +ifeq ($(EXAMPLES),1) +OUTPUTS += bin/libopenmpt_example_c$(EXESUFFIX) +OUTPUTS += bin/libopenmpt_example_c_mem$(EXESUFFIX) +OUTPUTS += bin/libopenmpt_example_cxx$(EXESUFFIX) +endif +endif +ifeq ($(TEST),1) +OUTPUTS += bin/libopenmpt_test$(EXESUFFIX) +endif + +all: $(OUTPUTS) + +.PHONY: test +test: bin/libopenmpt_test$(EXESUFFIX) + bin/libopenmpt_test$(EXESUFFIX) + +bin/libopenmpt_test$(EXESUFFIX): $(LIBOPENMPTTEST_OBJECTS) $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) $(LIBOPENMPTTEST_OBJECTS) $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ + +bin/openmpt.a: $(LIBOPENMPT_OBJECTS) + $(INFO) [AR ] $@ + $(SILENT)$(AR) $(ARFLAGS) $@ $^ + +bin/libopenmpt.so: $(LIBOPENMPT_OBJECTS) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) -shared $^ $(LOADLIBES) $(LDLIBS) -o $@ + +bin/libopenmpt_modplug.so: $(LIBOPENMPT_MODPLUG_OBJECTS) $(OUTPUT_LIBOPENMPT) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) -shared $(LDFLAGS_LIBOPENMPT) $^ $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ + +bin/openmpt123$(EXESUFFIX): $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ + +bin/libopenmpt_example_c$(EXESUFFIX): libopenmpt/examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) libopenmpt/examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ + +bin/libopenmpt_example_c_mem$(EXESUFFIX): libopenmpt/examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) libopenmpt/examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ + +bin/libopenmpt_example_cxx$(EXESUFFIX): libopenmpt/examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) + $(INFO) [LD ] $@ + $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) libopenmpt/examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ + +ifeq ($(HOST),windows) +clean: + $(INFO) clean ... + $(SILENT)$(RM) $(subst /,\,$(OUTPUTS) $(ALL_OBJECTS) $(ALL_DEPENDS) ) +else +clean: + $(INFO) clean ... + $(SILENT)$(RM) $(OUTPUTS) $(ALL_OBJECTS) $(ALL_DEPENDS) +endif Modified: trunk/OpenMPT/README =================================================================== --- trunk/OpenMPT/README 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/README 2013-12-05 12:05:14 UTC (rev 3374) @@ -46,8 +46,6 @@ You can disable xmp-openmpt in the solution configuration. - The openmpt123 solution is in openmpt123/openmpt123.sln. - Makefile - The makefile resides in openmpt123/Makefile. You should cd into openmpt123 - for using it. The makefile supports different build environments and targets via HOST= and CONFIG= parameters directly to the make invocation. Use 'make CONFIG=$newconfig clean' when switching between different configs @@ -56,13 +54,13 @@ invocations. - mingw-w64 (on windows): The required version should be at least 4.4. Only 4.6 and up are tested. - - cd openmpt123 ; mingw32-make HOST=windows CONFIG=mingw64-win32 - - cd openmpt123 ; mingw32-make HOST=windows CONFIG=mingw64-win64 + - mingw32-make HOST=windows CONFIG=mingw64-win32 + - mingw32-make HOST=windows CONFIG=mingw64-win64 depending on whether you want win32 or win64 builds. - mingw-w64 (on unix): The required version should be at least 4.4. Only 4.6 and up are tested. - - cd openmpt123 ; make CONFIG=mingw64-win32 - - cd openmpt123 ; make CONFIG=mingw64-win64 + - make CONFIG=mingw64-win32 + - make CONFIG=mingw64-win64 depending on whether you want win32 or win64 builds. - gcc or clang (on unix, including Mac OS X with MacPorts): The minimum required compiler versions are: @@ -73,9 +71,9 @@ openmpt123 can optionally use libflac, libwavpack and libsndfile to render PCM files to disk. When using gcc, you should simply do: - - cd openmpt123 ; make + - make When using clang, it is recommended to do: - - cd openmpt123 ; make CONFIG=llvm + - make CONFIG=clang The Makefile supports some customizations. You might want to read the top which should get you some possible make settings, like e.g. make DYNLINK=0 or similar. Cross compiling or different compiler would best be implemented Copied: trunk/OpenMPT/build/make/Makefile.config.clang (from rev 3373, trunk/OpenMPT/openmpt123/Makefile.config.llvm) =================================================================== --- trunk/OpenMPT/build/make/Makefile.config.clang (rev 0) +++ trunk/OpenMPT/build/make/Makefile.config.clang 2013-12-05 12:05:14 UTC (rev 3374) @@ -0,0 +1,15 @@ + +CC = clang +CXX = clang++ +LD = clang++ +AR = ar + +#CPPFLAGS += -DMPT_COMPILER_GENERIC +CPPFLAGS += +CXXFLAGS += -std=c++0x -fPIC +CFLAGS += -std=c99 -fPIC +LDFLAGS += +LDLIBS += -lm +ARFLAGS := rcs + +EXESUFFIX= Copied: trunk/OpenMPT/build/make/Makefile.config.defaults (from rev 3373, trunk/OpenMPT/openmpt123/Makefile.config.defaults) =================================================================== --- trunk/OpenMPT/build/make/Makefile.config.defaults (rev 0) +++ trunk/OpenMPT/build/make/Makefile.config.defaults 2013-12-05 12:05:14 UTC (rev 3374) @@ -0,0 +1,15 @@ + +CC = gcc +CXX = g++ +LD = g++ +AR = ar + +#CPPFLAGS += -DMPT_COMPILER_GENERIC +CPPFLAGS += +CXXFLAGS += -std=c++0x -fPIC +CFLAGS += -std=c99 -fPIC +LDFLAGS += +LDLIBS += -lm +ARFLAGS := rcs + +EXESUFFIX= Copied: trunk/OpenMPT/build/make/Makefile.config.macosx (from rev 3373, trunk/OpenMPT/openmpt123/Makefile.config.macosx) =================================================================== --- trunk/OpenMPT/build/make/Makefile.config.macosx (rev 0) +++ trunk/OpenMPT/build/make/Makefile.config.macosx 2013-12-05 12:05:14 UTC (rev 3374) @@ -0,0 +1,9 @@ + +include Makefile.config.defaults + +#LDLIBS += -liconv +#CPPFLAGS += -DMPT_ICONV_NO_WCHAR + +CPPFLAGS += -DMPT_CHARSET_CPP + +DYNLINK=0 Copied: trunk/OpenMPT/build/make/Makefile.config.mingw64-win32 (from rev 3373, trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win32) =================================================================== --- trunk/OpenMPT/build/make/Makefile.config.mingw64-win32 (rev 0) +++ trunk/OpenMPT/build/make/Makefile.config.mingw64-win32 2013-12-05 12:05:14 UTC (rev 3374) @@ -0,0 +1,24 @@ + +CC = i686-w64-mingw32-gcc +CXX = i686-w64-mingw32-g++ +LD = i686-w64-mingw32-g++ +AR = i686-w64-mingw32-ar + +CPPFLAGS += -DWIN32 -D_WIN32 +CXXFLAGS += -std=c++0x -municode -mconsole +CFLAGS += -std=c99 -municode -mconsole +LDFLAGS += +LDLIBS += -lm -lwinmm +ARFLAGS := rcs + +EXESUFFIX=.exe + +DYNLINK=0 +SHARED_LIB=0 +STATIC_LIB=0 + +NO_ZLIB=1 +NO_PORTAUDIO=1 +NO_SNDFILE=1 +NO_FLAC=1 +NO_WAVPACK=1 Copied: trunk/OpenMPT/build/make/Makefile.config.mingw64-win64 (from rev 3373, trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win64) =================================================================== --- trunk/OpenMPT/build/make/Makefile.config.mingw64-win64 (rev 0) +++ trunk/OpenMPT/build/make/Makefile.config.mingw64-win64 2013-12-05 12:05:14 UTC (rev 3374) @@ -0,0 +1,24 @@ + +CC = x86_64-w64-mingw32-gcc +CXX = x86_64-w64-mingw32-g++ +LD = x86_64-w64-mingw32-g++ +AR = x86_64-w64-mingw32-ar + +CPPFLAGS += -DWIN32 -D_WIN32 -DWIN64 -D_WIN64 +CXXFLAGS += -std=c++0x -municode -mconsole +CFLAGS += -std=c99 -municode -mconsole +LDFLAGS += +LDLIBS += -lm -lwinmm +ARFLAGS := rcs + +EXESUFFIX=.exe + +DYNLINK=0 +SHARED_LIB=0 +STATIC_LIB=0 + +NO_ZLIB=1 +NO_PORTAUDIO=1 +NO_SNDFILE=1 +NO_FLAC=1 +NO_WAVPACK=1 Deleted: trunk/OpenMPT/openmpt123/Makefile =================================================================== --- trunk/OpenMPT/openmpt123/Makefile 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/openmpt123/Makefile 2013-12-05 12:05:14 UTC (rev 3374) @@ -1,345 +0,0 @@ - -INFO = @echo -SILENT = @ -VERYSILENT = @ - - -ifeq ($(VERBOSE),2) -INFO = @true -SILENT = -VERYSILENT = -endif - -ifeq ($(VERBOSE),1) -INFO = @true -SILENT = -VERYSILENT = @ -endif - - -ifeq ($(QUIET),1) -INFO = @true -SILENT = @ -VERYSILENT = @ -endif - - -DYNLINK=1 -SHARED_LIB=1 -STATIC_LIB=1 -EXAMPLES=1 -OPENMPT123=1 - - -# get commandline or defaults - -CPPFLAGS := $(CPPFLAGS) -CXXFLAGS := $(CXXFLAGS) -CFLAGS := $(CFLAGS) -LDFLAGS := $(LDFLAGS) -LDLIBS := $(LDLIBS) -ARFLAGS := $(ARFLAGS) - - -# compiler setup - -ifeq ($(CONFIG)x,x) - -include Makefile.config.defaults - -else - -include Makefile.config.$(CONFIG) - -endif - - -# host setup - -ifeq ($(HOST),windows) - -RM = del /q /f - -else - -RM = rm -f - -endif - - - -# build setup - -CPPFLAGS += -I../common -I.. -I../include/modplug/include -I../include -CXXFLAGS += -fvisibility=hidden -CFLAGS += -fvisibility=hidden -LDFLAGS += -LDLIBS += -lm -ARFLAGS += - -ifeq ($(DEBUG),1) -CXXFLAGS += -O0 -g -CFLAGS += -O0 -g -else -CXXFLAGS += -O3 -fno-strict-aliasing -ffast-math -CFLAGS += -O3 -fno-strict-aliasing -ffast-math -endif - -ifeq ($(TEST),1) -CPPFLAGS += -DLIBOPENMPT_BUILD_TEST -endif - -CXXFLAGS += -Wall -Wextra -Wcast-align -CFLAGS += -Wall -Wextra -Wcast-align - -ifeq ($(DYNLINK),1) -LDFLAGS += -Wl,-rpath,./bin -Wl,-rpath,../bin -Wl,-rpath,./openmpt123/bin -LDFLAGS_LIBOPENMPT += -Lbin -LDLIBS_LIBOPENMPT += -lopenmpt -endif - -#CXXFLAGS += -mtune=generic -#CFLAGS += -mtune=generic - -ifeq ($(NO_ZLIB),1) -CPPFLAGS += -DNO_ZLIB -else -#LDLIBS += -lz -ifeq ($(shell pkg-config --exists zlib && echo yes),yes) -CPPFLAGS += -DMPT_WITH_ZLIB -CPPFLAGS += $(shell pkg-config --cflags-only-I zlib ) -LDFLAGS += $(shell pkg-config --libs-only-other zlib ) -LDFLAGS += $(shell pkg-config --libs-only-L zlib ) -LDLIBS += $(shell pkg-config --libs-only-l zlib ) -endif -endif - -ifeq ($(USE_SDL),1) -#LDLIBS += -lsdl -ifeq ($(shell pkg-config --exists sdl && echo yes),yes) -CPPFLAGS += -DMPT_WITH_SDL -CPPFLAGS += $(shell pkg-config --cflags-only-I sdl ) -LDFLAGS += $(shell pkg-config --libs-only-other sdl ) -LDFLAGS += $(shell pkg-config --libs-only-L sdl ) -LDLIBS += $(shell pkg-config --libs-only-l sdl ) -endif -endif - -ifeq ($(NO_PORTAUDIO),1) -else -#LDLIBS += -lportaudio -ifeq ($(shell pkg-config --exists portaudio-2.0 && echo yes),yes) -CPPFLAGS += -DMPT_WITH_PORTAUDIO -CPPFLAGS += $(shell pkg-config --cflags-only-I portaudio-2.0 ) -LDFLAGS += $(shell pkg-config --libs-only-other portaudio-2.0 ) -LDFLAGS += $(shell pkg-config --libs-only-L portaudio-2.0 ) -LDLIBS += $(shell pkg-config --libs-only-l portaudio-2.0 ) -endif -endif - -ifeq ($(NO_FLAC),1) -else -#LDLIBS += -lFLAC -ifeq ($(shell pkg-config --exists flac && echo yes),yes) -CPPFLAGS += -DMPT_WITH_FLAC -CPPFLAGS += $(shell pkg-config --cflags-only-I flac ) -LDFLAGS += $(shell pkg-config --libs-only-other flac ) -LDFLAGS += $(shell pkg-config --libs-only-L flac ) -LDLIBS += $(shell pkg-config --libs-only-l flac ) -endif -endif - -ifeq ($(NO_WAVPACK),1) -else -#LDLIBS += -lwavpack -ifeq ($(shell pkg-config --exists wavpack && echo yes),yes) -CPPFLAGS += -DMPT_WITH_WAVPACK -CPPFLAGS += $(shell pkg-config --cflags-only-I wavpack ) -LDFLAGS += $(shell pkg-config --libs-only-other wavpack ) -LDFLAGS += $(shell pkg-config --libs-only-L wavpack ) -LDLIBS += $(shell pkg-config --libs-only-l wavpack ) -endif -endif - -ifeq ($(NO_SNDFILE),1) -else -#LDLIBS += -lsndfile -ifeq ($(shell pkg-config --exists sndfile && echo yes),yes) -CPPFLAGS += -DMPT_WITH_SNDFILE -CPPFLAGS += $(shell pkg-config --cflags-only-I sndfile ) -LDFLAGS += $(shell pkg-config --libs-only-other sndfile ) -LDFLAGS += $(shell pkg-config --libs-only-L sndfile ) -LDLIBS += $(shell pkg-config --libs-only-l sndfile ) -endif -endif - -%: %.o - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) -o $@ - -%.o: %.cpp - $(INFO) [CXX] $< - $(VERYSILENT)$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d - $(SILENT)$(COMPILE.cc) $(OUTPUT_OPTION) $< - -%.o: %.c - $(INFO) [CC ] $< - $(VERYSILENT)$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -M -MT$@ $< > $*.d - $(SILENT)$(COMPILE.c) $(OUTPUT_OPTION) $< - - -BUILD_SVNVERSION = $(shell svnversion -n .. ) -CPPFLAGS += -I../common/svn_version_svnversion -D BUILD_SVNVERSION=\"$(BUILD_SVNVERSION)\" -#CPPFLAGS += -I../common/svn_version_default - - -CPPFLAGS += -DLIBOPENMPT_BUILD - - -COMMON_CXX_SOURCES += \ - $(wildcard ../common/*.cpp) \ - -SOUNDLIB_CXX_SOURCES += \ - $(COMMON_CXX_SOURCES) \ - $(wildcard ../soundlib/*.cpp) \ - - - -LIBOPENMPT_CXX_SOURCES += \ - $(SOUNDLIB_CXX_SOURCES) \ - $(wildcard ../test/*.cpp) \ - ../libopenmpt/libopenmpt_c.cpp \ - ../libopenmpt/libopenmpt_cxx.cpp \ - ../libopenmpt/libopenmpt_impl.cpp \ - ../libopenmpt/libopenmpt_interactive.cpp \ - -ifeq ($(NO_ZLIB),1) -LIBOPENMPT_C_SOURCES += ../include/miniz/miniz.c -endif - -LIBOPENMPT_OBJECTS += $(LIBOPENMPT_CXX_SOURCES:.cpp=.o) $(LIBOPENMPT_C_SOURCES:.c=.o) -LIBOPENMPT_DEPENDS = $(LIBOPENMPT_OBJECTS:.o=.d) -ALL_OBJECTS += $(LIBOPENMPT_OBJECTS) -ALL_DEPENDS += $(LIBOPENMPT_DEPENDS) - -ifeq ($(DYNLINK),1) -OUTPUT_LIBOPENMPT += bin/libopenmpt.so -else -OBJECTS_LIBOPENMPT += $(LIBOPENMPT_OBJECTS) -endif - - -LIBOPENMPT_MODPLUG_C_SOURCES += \ - ../libopenmpt/libopenmpt_modplug.c \ - -LIBOPENMPT_MODPLUG_OBJECTS = $(LIBOPENMPT_MODPLUG_C_SOURCES:.c=.o) -LIBOPENMPT_MODPLUG_DEPENDS = $(LIBOPENMPT_MODPLUG_OBJECTS:.o=.d) -ALL_OBJECTS += $(LIBOPENMPT_MODPLUG_OBJECTS) -ALL_DEPENDS += $(LIBOPENMPT_MODPLUG_DEPENDS) - - -OPENMPT123_CXX_SOURCES += \ - $(wildcard ../openmpt123/*.cpp) \ - -OPENMPT123_OBJECTS += $(OPENMPT123_CXX_SOURCES:.cpp=.o) -OPENMPT123_DEPENDS = $(OPENMPT123_OBJECTS:.o=.d) -ALL_OBJECTS += $(OPENMPT123_OBJECTS) -ALL_DEPENDS += $(OPENMPT123_DEPENDS) - - -LIBOPENMPTTEST_CXX_SOURCES += \ - ../libopenmpt/libopenmpt_test.cpp \ - -LIBOPENMPTTEST_OBJECTS += $(LIBOPENMPTTEST_CXX_SOURCES:.cpp=.o) $(LIBOPENMPTTEST_C_SOURCES:.c=.o) -LIBOPENMPTTEST_DEPENDS = $(LIBOPENMPTEST_OBJECTS:.o=.d) -ALL_OBJECTS += $(LIBOPENMPTTEST_OBJECTS) -ALL_DEPENDS += $(LIBOPENMPTTEST_DEPENDS) - - -EXAMPLES_CXX_SOURCES += $(wildcard ../libopenmpt/examples/*.cpp) -EXAMPLES_C_SOURCES += $(wildcard ../libopenmpt/examples/*.c) - -EXAMPLES_OBJECTS += $(EXAMPLES_CXX_SOURCES:.cpp=.o) -EXAMPLES_OBJECTS += $(EXAMPLES_C_SOURCES:.c=.o) -EXAMPLES_DEPENDS = $(EXAMPLES_OBJECTS:.o=.d) -ALL_OBJECTS += $(EXAMPLES_OBJECTS) -ALL_DEPENDS += $(EXAMPLES_DEPENDS) - - -.PHONY: all -all: - --include $(ALL_DEPENDS) - -ifeq ($(DYNLINK),1) -OUTPUTS += bin/libopenmpt.so -OUTPUTS += bin/libopenmpt_modplug.so -endif -ifeq ($(SHARED_LIB),1) -OUTPUTS += bin/libopenmpt.so -endif -ifeq ($(STATIC_LIB),1) -OUTPUTS += bin/openmpt.a -endif -ifeq ($(OPENMPT123),1) -OUTPUTS += bin/openmpt123$(EXESUFFIX) -endif -ifeq ($(NO_PORTAUDIO),1) -else -ifeq ($(EXAMPLES),1) -OUTPUTS += bin/libopenmpt_example_c$(EXESUFFIX) -OUTPUTS += bin/libopenmpt_example_c_mem$(EXESUFFIX) -OUTPUTS += bin/libopenmpt_example_cxx$(EXESUFFIX) -endif -endif -ifeq ($(TEST),1) -OUTPUTS += bin/libopenmpt_test$(EXESUFFIX) -endif - -all: $(OUTPUTS) - -.PHONY: test -test: bin/libopenmpt_test$(EXESUFFIX) - ( cd .. && openmpt123/bin/libopenmpt_test$(EXESUFFIX) ) - -bin/libopenmpt_test$(EXESUFFIX): $(LIBOPENMPTTEST_OBJECTS) $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) $(LIBOPENMPTTEST_OBJECTS) $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ - -bin/openmpt.a: $(LIBOPENMPT_OBJECTS) - $(INFO) [AR ] $@ - $(SILENT)$(AR) $(ARFLAGS) $@ $^ - -bin/libopenmpt.so: $(LIBOPENMPT_OBJECTS) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) -shared $^ $(LOADLIBES) $(LDLIBS) -o $@ - -bin/libopenmpt_modplug.so: $(LIBOPENMPT_MODPLUG_OBJECTS) $(OUTPUT_LIBOPENMPT) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) -shared $(LDFLAGS_LIBOPENMPT) $^ $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ - -bin/openmpt123$(EXESUFFIX): $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) $(OPENMPT123_OBJECTS) $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ - -bin/libopenmpt_example_c$(EXESUFFIX): ../libopenmpt/examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) ../libopenmpt/examples/libopenmpt_example_c.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ - -bin/libopenmpt_example_c_mem$(EXESUFFIX): ../libopenmpt/examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) ../libopenmpt/examples/libopenmpt_example_c_mem.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ - -bin/libopenmpt_example_cxx$(EXESUFFIX): ../libopenmpt/examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(OUTPUT_LIBOPENMPT) - $(INFO) [LD ] $@ - $(SILENT)$(LINK.cc) $(LDFLAGS_LIBOPENMPT) ../libopenmpt/examples/libopenmpt_example_cxx.o $(OBJECTS_LIBOPENMPT) $(LOADLIBES) $(LDLIBS) $(LDLIBS_LIBOPENMPT) -o $@ - -ifeq ($(HOST),windows) -clean: - $(INFO) clean ... - $(SILENT)$(RM) $(subst /,\,$(OUTPUTS) $(ALL_OBJECTS) $(ALL_DEPENDS) ) -else -clean: - $(INFO) clean ... - $(SILENT)$(RM) $(OUTPUTS) $(ALL_OBJECTS) $(ALL_DEPENDS) -endif Deleted: trunk/OpenMPT/openmpt123/Makefile.config.defaults =================================================================== --- trunk/OpenMPT/openmpt123/Makefile.config.defaults 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/openmpt123/Makefile.config.defaults 2013-12-05 12:05:14 UTC (rev 3374) @@ -1,15 +0,0 @@ - -CC = gcc -CXX = g++ -LD = g++ -AR = ar - -#CPPFLAGS += -DMPT_COMPILER_GENERIC -CPPFLAGS += -CXXFLAGS += -std=c++0x -fPIC -CFLAGS += -std=c99 -fPIC -LDFLAGS += -LDLIBS += -lm -ARFLAGS := rcs - -EXESUFFIX= Deleted: trunk/OpenMPT/openmpt123/Makefile.config.llvm =================================================================== --- trunk/OpenMPT/openmpt123/Makefile.config.llvm 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/openmpt123/Makefile.config.llvm 2013-12-05 12:05:14 UTC (rev 3374) @@ -1,15 +0,0 @@ - -CC = clang -CXX = clang++ -LD = clang++ -AR = ar - -#CPPFLAGS += -DMPT_COMPILER_GENERIC -CPPFLAGS += -CXXFLAGS += -std=c++0x -fPIC -CFLAGS += -std=c99 -fPIC -LDFLAGS += -LDLIBS += -lm -ARFLAGS := rcs - -EXESUFFIX= Deleted: trunk/OpenMPT/openmpt123/Makefile.config.macosx =================================================================== --- trunk/OpenMPT/openmpt123/Makefile.config.macosx 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/openmpt123/Makefile.config.macosx 2013-12-05 12:05:14 UTC (rev 3374) @@ -1,9 +0,0 @@ - -include Makefile.config.defaults - -#LDLIBS += -liconv -#CPPFLAGS += -DMPT_ICONV_NO_WCHAR - -CPPFLAGS += -DMPT_CHARSET_CPP - -DYNLINK=0 Deleted: trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win32 =================================================================== --- trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win32 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win32 2013-12-05 12:05:14 UTC (rev 3374) @@ -1,24 +0,0 @@ - -CC = i686-w64-mingw32-gcc -CXX = i686-w64-mingw32-g++ -LD = i686-w64-mingw32-g++ -AR = i686-w64-mingw32-ar - -CPPFLAGS += -DWIN32 -D_WIN32 -CXXFLAGS += -std=c++0x -municode -mconsole -CFLAGS += -std=c99 -municode -mconsole -LDFLAGS += -LDLIBS += -lm -lwinmm -ARFLAGS := rcs - -EXESUFFIX=.exe - -DYNLINK=0 -SHARED_LIB=0 -STATIC_LIB=0 - -NO_ZLIB=1 -NO_PORTAUDIO=1 -NO_SNDFILE=1 -NO_FLAC=1 -NO_WAVPACK=1 Deleted: trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win64 =================================================================== --- trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win64 2013-12-05 10:51:46 UTC (rev 3373) +++ trunk/OpenMPT/openmpt123/Makefile.config.mingw64-win64 2013-12-05 12:05:14 UTC (rev 3374) @@ -1,24 +0,0 @@ - -CC = x86_64-w64-mingw32-gcc -CXX = x86_64-w64-mingw32-g++ -LD = x86_64-w64-mingw32-g++ -AR = x86_64-w64-mingw32-ar - -CPPFLAGS += -DWIN32 -D_WIN32 -DWIN64 -D_WIN64 -CXXFLAGS += -std=c++0x -municode -mconsole -CFLAGS += -std=c99 -municode -mconsole -LDFLAGS += -LDLIBS += -lm -lwinmm -ARFLAGS := rcs - -EXESUFFIX=.exe - -DYNLINK=0 -SHARED_LIB=0 -STATIC_LIB=0 - -NO_ZLIB=1 -NO_PORTAUDIO=1 -NO_SNDFILE=1 -NO_FLAC=1 -NO_WAVPACK=1 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |