From: <sag...@us...> - 2009-12-14 20:12:37
|
Revision: 442 http://modplug.svn.sourceforge.net/modplug/?rev=442&view=rev Author: saga-games Date: 2009-12-14 20:12:20 +0000 (Mon, 14 Dec 2009) Log Message: ----------- Added muParser (http://muparser.sourceforge.net/) to repository. To be used with upcoming new features. Added Paths: ----------- trunk/OpenMPT/muParser/ trunk/OpenMPT/muParser/License.txt trunk/OpenMPT/muParser/Makefile.in trunk/OpenMPT/muParser/build/ trunk/OpenMPT/muParser/build/autoconf/ trunk/OpenMPT/muParser/build/autoconf/aclocal.m4 trunk/OpenMPT/muParser/build/autoconf/acregen.sh trunk/OpenMPT/muParser/build/autoconf/autoconf_inc.m4 trunk/OpenMPT/muParser/build/autoconf/bakefile-presets.m4 trunk/OpenMPT/muParser/build/autoconf/config.guess trunk/OpenMPT/muParser/build/autoconf/config.sub trunk/OpenMPT/muParser/build/autoconf/configure.ac trunk/OpenMPT/muParser/build/autoconf/install-sh trunk/OpenMPT/muParser/build/autoconf/muparser.pc.in trunk/OpenMPT/muParser/build/makefile.bcc trunk/OpenMPT/muParser/build/makefile.mingw trunk/OpenMPT/muParser/build/makefile.vc trunk/OpenMPT/muParser/build/makefile.wat trunk/OpenMPT/muParser/build/msvc8/ trunk/OpenMPT/muParser/build/msvc8/muparser_dynamic.sln trunk/OpenMPT/muParser/build/msvc8/muparser_example1.dsp trunk/OpenMPT/muParser/build/msvc8/muparser_example1.vcproj trunk/OpenMPT/muParser/build/msvc8/muparser_example3.dsp trunk/OpenMPT/muParser/build/msvc8/muparser_example3.vcproj trunk/OpenMPT/muParser/build/msvc8/muparser_muParser.dsp trunk/OpenMPT/muParser/build/msvc8/muparser_muParser.vcproj trunk/OpenMPT/muParser/build/msvc8/muparser_static.sln trunk/OpenMPT/muParser/build/msvc9/ trunk/OpenMPT/muParser/build/msvc9/muparser_dynamic.sln trunk/OpenMPT/muParser/build/msvc9/muparser_example1.dsp trunk/OpenMPT/muParser/build/msvc9/muparser_example1.vcproj trunk/OpenMPT/muParser/build/msvc9/muparser_example3.dsp trunk/OpenMPT/muParser/build/msvc9/muparser_example3.vcproj trunk/OpenMPT/muParser/build/msvc9/muparser_muParser.dsp trunk/OpenMPT/muParser/build/msvc9/muparser_muParser.vcproj trunk/OpenMPT/muParser/build/msvc9/muparser_static.sln trunk/OpenMPT/muParser/build/obj/ trunk/OpenMPT/muParser/build/obj/Readme.txt trunk/OpenMPT/muParser/build/obj/bcc_obj/ trunk/OpenMPT/muParser/build/obj/bcc_obj/Readme.txt trunk/OpenMPT/muParser/configure trunk/OpenMPT/muParser/include/ trunk/OpenMPT/muParser/include/muParser.h trunk/OpenMPT/muParser/include/muParserBase.h trunk/OpenMPT/muParser/include/muParserBytecode.h trunk/OpenMPT/muParser/include/muParserCallback.h trunk/OpenMPT/muParser/include/muParserComplex.h trunk/OpenMPT/muParser/include/muParserDef.h trunk/OpenMPT/muParser/include/muParserError.h trunk/OpenMPT/muParser/include/muParserFixes.h trunk/OpenMPT/muParser/include/muParserInt.h trunk/OpenMPT/muParser/include/muParserStack.h trunk/OpenMPT/muParser/include/muParserTest.h trunk/OpenMPT/muParser/include/muParserToken.h trunk/OpenMPT/muParser/include/muParserTokenReader.h trunk/OpenMPT/muParser/lib/ trunk/OpenMPT/muParser/lib/Readme.txt trunk/OpenMPT/muParser/src/ trunk/OpenMPT/muParser/src/muParser.cpp trunk/OpenMPT/muParser/src/muParserBase.cpp trunk/OpenMPT/muParser/src/muParserBytecode.cpp trunk/OpenMPT/muParser/src/muParserCallback.cpp trunk/OpenMPT/muParser/src/muParserComplex.cpp trunk/OpenMPT/muParser/src/muParserError.cpp trunk/OpenMPT/muParser/src/muParserInt.cpp trunk/OpenMPT/muParser/src/muParserTest.cpp trunk/OpenMPT/muParser/src/muParserTokenReader.cpp Added: trunk/OpenMPT/muParser/License.txt =================================================================== --- trunk/OpenMPT/muParser/License.txt (rev 0) +++ trunk/OpenMPT/muParser/License.txt 2009-12-14 20:12:20 UTC (rev 442) @@ -0,0 +1,28 @@ + + __________ + _____ __ __\______ \_____ _______ ______ ____ _______ + / \ | | \| ___/\__ \ \_ __ \/ ___/_/ __ \\_ __ \ + | Y Y \| | /| | / __ \_| | \/\___ \ \ ___/ | | \/ + |__|_| /|____/ |____| (____ /|__| /____ > \___ >|__| + \/ \/ \/ \/ + + Version 1.27 + + Copyright (C) 2004-2006 Ingo Berg (ingo_berg{at}gmx.de) + + + Permission is hereby granted, free of charge, to any person obtaining a copy of this + software and associated documentation files (the "Software"), to deal in the Software + without restriction, including without limitation the rights to use, copy, modify, + merge, publish, distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT + NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + OR OTHER DEALINGS IN THE SOFTWARE. Added: trunk/OpenMPT/muParser/Makefile.in =================================================================== --- trunk/OpenMPT/muParser/Makefile.in (rev 0) +++ trunk/OpenMPT/muParser/Makefile.in 2009-12-14 20:12:20 UTC (rev 442) @@ -0,0 +1,345 @@ +# ========================================================================= +# This makefile was generated by +# Bakefile 0.2.1 (http://bakefile.sourceforge.net) +# Do not modify, all changes will be overwritten! +# ========================================================================= + + +@MAKE_SET@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +INSTALL = @INSTALL@ +SHARED_LD_CXX = @SHARED_LD_CXX@ +LIBEXT = @LIBEXT@ +LIBPREFIX = @LIBPREFIX@ +SO_SUFFIX = @SO_SUFFIX@ +DLLIMP_SUFFIX = @DLLIMP_SUFFIX@ +EXEEXT = @EXEEXT@ +LN_S = @LN_S@ +SETFILE = @SETFILE@ +PIC_FLAG = @PIC_FLAG@ +SONAME_FLAG = @SONAME_FLAG@ +STRIP = @STRIP@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_DIR = @INSTALL_DIR@ +BK_DEPS = @BK_DEPS@ +srcdir = @srcdir@ +top_builddir = @top_builddir@ +libdir = @libdir@ +DLLPREFIX = @DLLPREFIX@ +LIBS = @LIBS@ +AR = @AR@ +AROPTIONS = @AROPTIONS@ +RANLIB = @RANLIB@ +CXX = @CXX@ +CXXFLAGS = @CXXFLAGS@ +CPPFLAGS = @CPPFLAGS@ +LDFLAGS = @LDFLAGS@ + +### Variables: ### + +DESTDIR = +MUPARSER_LIB_CXXFLAGS = $(____DEBUG) $(____SHARED) $(____SHARED_0) \ + -I$(srcdir)/include $(CPPFLAGS) $(CXXFLAGS) +MUPARSER_LIB_OBJECTS = \ + muParser_lib_muParserBytecode.o \ + muParser_lib_muParserTest.o \ + muParser_lib_muParser.o \ + muParser_lib_muParserDLL.o \ + muParser_lib_muParserInt.o \ + muParser_lib_muParserTokenReader.o \ + muParser_lib_muParserError.o \ + muParser_lib_muParserCallback.o \ + muParser_lib_muParserBase.o +MUPARSER_LIB_HEADERS = \ + include/muParserError.h \ + include/muParserFixes.h \ + include/muParserStack.h \ + include/muParserBytecode.h \ + include/muParserToken.h \ + include/muParserBase.h \ + include/muParserTest.h \ + include/muParserTokenReader.h \ + include/muParserCallback.h \ + include/muParser.h \ + include/muParserDLL.h \ + include/muParserDef.h \ + include/muParserInt.h +MUPARSER_DLL_CXXFLAGS = $(____DEBUG) $(____SHARED) $(____SHARED_0) \ + -I$(srcdir)/include $(PIC_FLAG) $(CPPFLAGS) $(CXXFLAGS) +MUPARSER_DLL_OBJECTS = \ + muParser_dll_muParserBytecode.o \ + muParser_dll_muParserTest.o \ + muParser_dll_muParser.o \ + muParser_dll_muParserDLL.o \ + muParser_dll_muParserInt.o \ + muParser_dll_muParserTokenReader.o \ + muParser_dll_muParserError.o \ + muParser_dll_muParserCallback.o \ + muParser_dll_muParserBase.o +MUPARSER_DLL_HEADERS = \ + include/muParserError.h \ + include/muParserFixes.h \ + include/muParserStack.h \ + include/muParserBytecode.h \ + include/muParserToken.h \ + include/muParserBase.h \ + include/muParserTest.h \ + include/muParserTokenReader.h \ + include/muParserCallback.h \ + include/muParser.h \ + include/muParserDLL.h \ + include/muParserDef.h \ + include/muParserInt.h +EXAMPLE1_CXXFLAGS = $(____DEBUG) -I$(srcdir)/include $(CPPFLAGS) $(CXXFLAGS) +EXAMPLE1_OBJECTS = \ + example1_Example1.o + +### Conditionally set variables: ### + +@COND_DEPS_TRACKING_0@CXXC = $(CXX) +@COND_DEPS_TRACKING_1@CXXC = $(BK_DEPS) $(CXX) +@COND_DEBUG_0@DEBUG_BUILD_POSTFIX = +@COND_DEBUG_1@DEBUG_BUILD_POSTFIX = d +@COND_SHARED_0@__muParser_lib___depname = \ +@COND_SHARED_0@ $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(LIBEXT) +@COND_SHARED_0@__install_muParser_lib___depname = install_muParser_lib +@COND_SHARED_0@__uninstall_muParser_lib___depname = uninstall_muParser_lib +@COND_SHARED_0@__install_muParser_lib_headers___depname = \ +@COND_SHARED_0@ install_muParser_lib_headers +@COND_SHARED_0@__uninstall_muParser_lib_headers___depname = \ +@COND_SHARED_0@ uninstall_muParser_lib_headers +COND_SHARED_1___muParser_dll___depname = \ + $(top_builddir)/lib/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) +@COND_SHARED_1@__muParser_dll___depname = $(COND_SHARED_1___muParser_dll___depname) +@COND_SHARED_1@__install_muParser_dll___depname = install_muParser_dll +@COND_SHARED_1@__uninstall_muParser_dll___depname = uninstall_muParser_dll +COND_PLATFORM_MACOSX_1___muParser_dll___macinstnamecmd = -install_name \ + $(libdir)/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2) +@COND_PLATFORM_MACOSX_1@__muParser_dll___macinstnamecmd = $(COND_PLATFORM_MACOSX_1___muParser_dll___macinstnamecmd) +@COND_SHARED_1@__install_muParser_dll_headers___depname = \ +@COND_SHARED_1@ install_muParser_dll_headers +@COND_SHARED_1@__uninstall_muParser_dll_headers___depname = \ +@COND_SHARED_1@ uninstall_muParser_dll_headers +COND_PLATFORM_OS2_1___muParser_dll___importlib = -import \ + $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) +@COND_PLATFORM_OS2_1@__muParser_dll___importlib = $(COND_PLATFORM_OS2_1___muParser_dll___importlib) +COND_WINDOWS_IMPLIB_1___muParser_dll___importlib = \ + -Wl,--out-implib=$(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) +@COND_WINDOWS_IMPLIB_1@__muParser_dll___importlib = $(COND_WINDOWS_IMPLIB_1___muParser_dll___importlib) +@COND_PLATFORM_MACOSX_0_USE_SOVERSION_1@__muParser_dll___targetsuf2 \ +@COND_PLATFORM_MACOSX_0_USE_SOVERSION_1@ = .$(SO_SUFFIX).0 +@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@__muParser_dll___targetsuf2 \ +@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@ = .0.$(SO_SUFFIX) +@COND_USE_SOVERSION_0@__muParser_dll___targetsuf2 = .$(SO_SUFFIX) +@COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@__muParser_dll___targetsuf3 \ +@COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@ = \ +@COND_PLATFORM_MACOSX_0_USE_SOVERCYGWIN_0_USE_SOVERSION_1@ .$(SO_SUFFIX).0.0.0 +@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@__muParser_dll___targetsuf3 \ +@COND_PLATFORM_MACOSX_1_USE_SOVERSION_1@ = .0.0.0.$(SO_SUFFIX) +@COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1@__muParser_dll___targetsuf3 \ +@COND_USE_SOVERCYGWIN_1_USE_SOVERSION_1@ = -0.$(SO_SUFFIX) +@COND_USE_SOVERSION_0@__muParser_dll___targetsuf3 = .$(SO_SUFFIX) +COND_USE_SOVERLINUX_1___muParser_dll___soname_flags = \ + $(SONAME_FLAG)$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2) +@COND_USE_SOVERLINUX_1@__muParser_dll___soname_flags = $(COND_USE_SOVERLINUX_1___muParser_dll___soname_flags) +COND_USE_SOVERSOLARIS_1___muParser_dll___soname_flags = \ + $(SONAME_FLAG)$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) +@COND_USE_SOVERSOLARIS_1@__muParser_dll___soname_flags = $(COND_USE_SOVERSOLARIS_1___muParser_dll___soname_flags) +COND_USE_SOSYMLINKS_1___muParser_dll___so_symlinks_cmd = (cd \ + $(top_builddir)/lib/; rm -f \ + $(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2); \ + $(LN_S) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2); \ + $(LN_S) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2) \ + $(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX)) +@COND_USE_SOSYMLINKS_1@__muParser_dll___so_symlinks_cmd = $(COND_USE_SOSYMLINKS_1___muParser_dll___so_symlinks_cmd) +COND_USE_SOSYMLINKS_1___muParser_dll___so_symlinks_inst_cmd = rm -f \ + $(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2); \ + $(LN_S) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2); \ + $(LN_S) \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2) \ + $(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) +@COND_USE_SOSYMLINKS_1@__muParser_dll___so_symlinks_inst_cmd = $(COND_USE_SOSYMLINKS_1___muParser_dll___so_symlinks_inst_cmd) +COND_USE_SOSYMLINKS_1___muParser_dll___so_symlinks_uninst_cmd = rm -f \ + $(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2) \ + $(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) +@COND_USE_SOSYMLINKS_1@__muParser_dll___so_symlinks_uninst_cmd = $(COND_USE_SOSYMLINKS_1___muParser_dll___so_symlinks_uninst_cmd) +@COND_PLATFORM_MACOSX_1@__muParser_dll___macver = \ +@COND_PLATFORM_MACOSX_1@ -compatibility_version 1 -current_version 1 +@COND_SAMPLES_1@__example1___depname = \ +@COND_SAMPLES_1@ $(top_builddir)/samples/example1/example1$(EXEEXT) +@COND_PLATFORM_MAC_1@__example1___mac_setfilecmd = \ +@COND_PLATFORM_MAC_1@ $(SETFILE) -t APPL \ +@COND_PLATFORM_MAC_1@ $(top_builddir)/samples/example1/example1$(EXEEXT) +@COND_SHARED_0@____SHARED = +@COND_SHARED_1@____SHARED = -DMUPARSER_DLL +@COND_SHARED_0@____SHARED_0 = +@COND_SHARED_1@____SHARED_0 = -DMUPARSERLIB_EXPORTS +@COND_DEBUG_0@____DEBUG = -DNDEBUG +@COND_DEBUG_1@____DEBUG = + +### Targets: ### + +all: $(__muParser_lib___depname) $(__muParser_dll___depname) $(__example1___depname) + +install: all $(__install_muParser_lib___depname) $(__install_muParser_lib_headers___depname) $(__install_muParser_dll___depname) $(__install_muParser_dll_headers___depname) + $(INSTALL_DIR) $(libdir)/pkgconfig + $(INSTALL_DATA) build/autoconf/muparser.pc $(libdir)/pkgconfig + +uninstall: $(__uninstall_muParser_lib___depname) $(__uninstall_muParser_lib_headers___depname) $(__uninstall_muParser_dll___depname) $(__uninstall_muParser_dll_headers___depname) + +install-strip: install + $(STRIP) $(DESTDIR)$(libdir)/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) + +clean: + rm -rf ./.deps ./.pch + rm -f ./*.o + rm -f $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(LIBEXT) + rm -f $(top_builddir)/lib/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) + rm -f $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) + rm -f $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) $(top_builddir)/lib/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf2) + rm -f $(top_builddir)/samples/example1/example1$(EXEEXT) + +distclean: clean + rm -f config.cache config.log config.status bk-deps bk-make-pch shared-ld-sh Makefile + rm -f build/autoconf/muparser.pc + +@COND_SHARED_0@$(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(LIBEXT): $(MUPARSER_LIB_OBJECTS) +@COND_SHARED_0@ rm -f $@ +@COND_SHARED_0@ $(AR) $(AROPTIONS) $@ $(MUPARSER_LIB_OBJECTS) +@COND_SHARED_0@ $(RANLIB) $@ + +@COND_SHARED_0@install_muParser_lib: +@COND_SHARED_0@ $(INSTALL_DIR) $(DESTDIR)$(libdir) +@COND_SHARED_0@ $(INSTALL_DATA) $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(LIBEXT) $(DESTDIR)$(libdir) + +@COND_SHARED_0@uninstall_muParser_lib: +@COND_SHARED_0@ rm -f $(DESTDIR)$(libdir)/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(LIBEXT) + +@COND_SHARED_0@install_muParser_lib_headers: +@COND_SHARED_0@ $(INSTALL_DIR) $(DESTDIR)$(prefix) +@COND_SHARED_0@ for f in $(MUPARSER_LIB_HEADERS); do \ +@COND_SHARED_0@ if test ! -d $(DESTDIR)$(prefix)/`dirname $$f` ; then \ +@COND_SHARED_0@ $(INSTALL_DIR) $(DESTDIR)$(prefix)/`dirname $$f`; \ +@COND_SHARED_0@ fi; \ +@COND_SHARED_0@ $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(prefix)/$$f; \ +@COND_SHARED_0@ done + +@COND_SHARED_0@uninstall_muParser_lib_headers: +@COND_SHARED_0@ for f in $(MUPARSER_LIB_HEADERS); do \ +@COND_SHARED_0@ rm -f $(DESTDIR)$(prefix)/$$f; \ +@COND_SHARED_0@ done + +@COND_SHARED_1@$(top_builddir)/lib/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3): $(MUPARSER_DLL_OBJECTS) +@COND_SHARED_1@ $(SHARED_LD_CXX) $@ $(MUPARSER_DLL_OBJECTS) $(LDFLAGS) $(__muParser_dll___macinstnamecmd) $(__muParser_dll___importlib) $(__muParser_dll___soname_flags) $(__muParser_dll___macver) $(LIBS) +@COND_SHARED_1@ +@COND_SHARED_1@ $(__muParser_dll___so_symlinks_cmd) + +@COND_SHARED_1@install_muParser_dll: +@COND_SHARED_1@ $(INSTALL_DIR) $(DESTDIR)$(libdir) +@COND_SHARED_1@ $(INSTALL_DATA) $(top_builddir)/lib/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) $(DESTDIR)$(libdir) +@COND_SHARED_1@ $(INSTALL_PROGRAM) $(top_builddir)/lib/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) $(DESTDIR)$(libdir) +@COND_SHARED_1@ (cd $(DESTDIR)$(libdir) ; $(__muParser_dll___so_symlinks_inst_cmd)) + +@COND_SHARED_1@uninstall_muParser_dll: +@COND_SHARED_1@ rm -f $(DESTDIR)$(libdir)/$(LIBPREFIX)muparser$(DEBUG_BUILD_POSTFIX).$(DLLIMP_SUFFIX) +@COND_SHARED_1@ rm -f $(DESTDIR)$(libdir)/$(DLLPREFIX)muparser$(DEBUG_BUILD_POSTFIX)$(__muParser_dll___targetsuf3) +@COND_SHARED_1@ (cd $(DESTDIR)$(libdir) ; $(__muParser_dll___so_symlinks_uninst_cmd)) + +@COND_SHARED_1@install_muParser_dll_headers: +@COND_SHARED_1@ $(INSTALL_DIR) $(DESTDIR)$(prefix) +@COND_SHARED_1@ for f in $(MUPARSER_DLL_HEADERS); do \ +@COND_SHARED_1@ if test ! -d $(DESTDIR)$(prefix)/`dirname $$f` ; then \ +@COND_SHARED_1@ $(INSTALL_DIR) $(DESTDIR)$(prefix)/`dirname $$f`; \ +@COND_SHARED_1@ fi; \ +@COND_SHARED_1@ $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(prefix)/$$f; \ +@COND_SHARED_1@ done + +@COND_SHARED_1@uninstall_muParser_dll_headers: +@COND_SHARED_1@ for f in $(MUPARSER_DLL_HEADERS); do \ +@COND_SHARED_1@ rm -f $(DESTDIR)$(prefix)/$$f; \ +@COND_SHARED_1@ done + +@COND_SAMPLES_1@$(top_builddir)/samples/example1/example1$(EXEEXT): $(EXAMPLE1_OBJECTS) $(__muParser_lib___depname) +@COND_SAMPLES_1@ $(CXX) -o $@ $(EXAMPLE1_OBJECTS) -L$(top_builddir)/lib $(LDFLAGS) -L$(srcdir)/lib $(LIBS) -lmuparser$(DEBUG_BUILD_POSTFIX) +@COND_SAMPLES_1@ +@COND_SAMPLES_1@ $(__example1___mac_setfilecmd) + +lib: $(__muParser_lib___depname) $(__muParser_dll___depname) + +samples: $(__example1___depname) + +documentation: + ( cd $(srcdir)/docs && doxygen ) + +muParser_lib_muParserBytecode.o: $(srcdir)/src/muParserBytecode.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserBytecode.cpp + +muParser_lib_muParserTest.o: $(srcdir)/src/muParserTest.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserTest.cpp + +muParser_lib_muParser.o: $(srcdir)/src/muParser.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParser.cpp + +muParser_lib_muParserDLL.o: $(srcdir)/src/muParserDLL.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserDLL.cpp + +muParser_lib_muParserInt.o: $(srcdir)/src/muParserInt.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserInt.cpp + +muParser_lib_muParserTokenReader.o: $(srcdir)/src/muParserTokenReader.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserTokenReader.cpp + +muParser_lib_muParserError.o: $(srcdir)/src/muParserError.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserError.cpp + +muParser_lib_muParserCallback.o: $(srcdir)/src/muParserCallback.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserCallback.cpp + +muParser_lib_muParserBase.o: $(srcdir)/src/muParserBase.cpp + $(CXXC) -c -o $@ $(MUPARSER_LIB_CXXFLAGS) $(srcdir)/src/muParserBase.cpp + +muParser_dll_muParserBytecode.o: $(srcdir)/src/muParserBytecode.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserBytecode.cpp + +muParser_dll_muParserTest.o: $(srcdir)/src/muParserTest.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserTest.cpp + +muParser_dll_muParser.o: $(srcdir)/src/muParser.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParser.cpp + +muParser_dll_muParserDLL.o: $(srcdir)/src/muParserDLL.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserDLL.cpp + +muParser_dll_muParserInt.o: $(srcdir)/src/muParserInt.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserInt.cpp + +muParser_dll_muParserTokenReader.o: $(srcdir)/src/muParserTokenReader.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserTokenReader.cpp + +muParser_dll_muParserError.o: $(srcdir)/src/muParserError.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserError.cpp + +muParser_dll_muParserCallback.o: $(srcdir)/src/muParserCallback.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserCallback.cpp + +muParser_dll_muParserBase.o: $(srcdir)/src/muParserBase.cpp + $(CXXC) -c -o $@ $(MUPARSER_DLL_CXXFLAGS) $(srcdir)/src/muParserBase.cpp + +example1_Example1.o: $(srcdir)/samples/example1/Example1.cpp + $(CXXC) -c -o $@ $(EXAMPLE1_CXXFLAGS) $(srcdir)/samples/example1/Example1.cpp + + +# Include dependency info, if present: +@IF_GNU_MAKE@-include .deps/*.d + +.PHONY: all install uninstall clean distclean install_muParser_lib uninstall_muParser_lib install_muParser_lib_headers uninstall_muParser_lib_headers install_muParser_dll uninstall_muParser_dll install_muParser_dll_headers uninstall_muParser_dll_headers lib samples Added: trunk/OpenMPT/muParser/build/autoconf/aclocal.m4 =================================================================== --- trunk/OpenMPT/muParser/build/autoconf/aclocal.m4 (rev 0) +++ trunk/OpenMPT/muParser/build/autoconf/aclocal.m4 2009-12-14 20:12:20 UTC (rev 442) @@ -0,0 +1,1593 @@ +# generated automatically by aclocal 1.9.6 -*- Autoconf -*- + +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, +# 2005 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +dnl --------------------------------------------------------------------------- +dnl Support macros for makefiles generated by BAKEFILE. +dnl --------------------------------------------------------------------------- + +dnl Lots of compiler & linker detection code contained here was taken from +dnl wxWindows configure.in script (see http://www.wxwindows.org) + + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_GNUMAKE +dnl +dnl Detects GNU make +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_GNUMAKE], +[ + dnl does make support "-include" (only GNU make does AFAIK)? + AC_CACHE_CHECK([if make is GNU make], bakefile_cv_prog_makeisgnu, + [ + if ( ${SHELL-sh} -c "${MAKE-make} --version" 2> /dev/null | + egrep -s GNU > /dev/null); then + bakefile_cv_prog_makeisgnu="yes" + else + bakefile_cv_prog_makeisgnu="no" + fi + ]) + + if test "x$bakefile_cv_prog_makeisgnu" = "xyes"; then + IF_GNU_MAKE="" + else + IF_GNU_MAKE="#" + fi + AC_SUBST(IF_GNU_MAKE) +]) + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_PLATFORM +dnl +dnl Detects platform and sets PLATFORM_XXX variables accordingly +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_PLATFORM], +[ + PLATFORM_UNIX=0 + PLATFORM_WIN32=0 + PLATFORM_MSDOS=0 + PLATFORM_MAC=0 + PLATFORM_MACOS=0 + PLATFORM_MACOSX=0 + PLATFORM_OS2=0 + PLATFORM_BEOS=0 + + if test "x$BAKEFILE_FORCE_PLATFORM" = "x"; then + case "${BAKEFILE_HOST}" in + *-*-mingw32* ) + PLATFORM_WIN32=1 + ;; + *-pc-msdosdjgpp ) + PLATFORM_MSDOS=1 + ;; + *-pc-os2_emx | *-pc-os2-emx ) + PLATFORM_OS2=1 + ;; + *-*-darwin* ) + PLATFORM_MAC=1 + PLATFORM_MACOSX=1 + ;; + *-*-beos* ) + PLATFORM_BEOS=1 + ;; + powerpc-apple-macos* ) + PLATFORM_MAC=1 + PLATFORM_MACOS=1 + ;; + * ) + PLATFORM_UNIX=1 + ;; + esac + else + case "$BAKEFILE_FORCE_PLATFORM" in + win32 ) + PLATFORM_WIN32=1 + ;; + msdos ) + PLATFORM_MSDOS=1 + ;; + os2 ) + PLATFORM_OS2=1 + ;; + darwin ) + PLATFORM_MAC=1 + PLATFORM_MACOSX=1 + ;; + unix ) + PLATFORM_UNIX=1 + ;; + beos ) + PLATFORM_BEOS=1 + ;; + * ) + AC_MSG_ERROR([Unknown platform: $BAKEFILE_FORCE_PLATFORM]) + ;; + esac + fi + + AC_SUBST(PLATFORM_UNIX) + AC_SUBST(PLATFORM_WIN32) + AC_SUBST(PLATFORM_MSDOS) + AC_SUBST(PLATFORM_MAC) + AC_SUBST(PLATFORM_MACOS) + AC_SUBST(PLATFORM_MACOSX) + AC_SUBST(PLATFORM_OS2) + AC_SUBST(PLATFORM_BEOS) +]) + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_PLATFORM_SPECIFICS +dnl +dnl Sets misc platform-specific settings +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_PLATFORM_SPECIFICS], +[ + AC_ARG_ENABLE([omf], AS_HELP_STRING([--enable-omf], + [use OMF object format (OS/2)]), + [bk_os2_use_omf="$enableval"]) + + case "${BAKEFILE_HOST}" in + *-*-darwin* ) + dnl For Unix to MacOS X porting instructions, see: + dnl http://fink.sourceforge.net/doc/porting/porting.html + if test "x$GCC" = "xyes"; then + CFLAGS="$CFLAGS -fno-common" + CXXFLAGS="$CXXFLAGS -fno-common" + fi + if test "x$XLCC" = "xyes"; then + CFLAGS="$CFLAGS -qnocommon" + CXXFLAGS="$CXXFLAGS -qnocommon" + fi + ;; + + *-pc-os2_emx | *-pc-os2-emx ) + if test "x$bk_os2_use_omf" = "xyes" ; then + AR=emxomfar + RANLIB=: + LDFLAGS="-Zomf $LDFLAGS" + CFLAGS="-Zomf $CFLAGS" + CXXFLAGS="-Zomf $CXXFLAGS" + OS2_LIBEXT="lib" + else + OS2_LIBEXT="a" + fi + ;; + + i*86-*-beos* ) + LDFLAGS="-L/boot/develop/lib/x86 $LDFLAGS" + ;; + esac +]) + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_SUFFIXES +dnl +dnl Detects shared various suffixes for shared libraries, libraries, programs, +dnl plugins etc. +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_SUFFIXES], +[ + SO_SUFFIX="so" + SO_SUFFIX_MODULE="so" + EXEEXT="" + LIBPREFIX="lib" + LIBEXT=".a" + DLLPREFIX="lib" + DLLPREFIX_MODULE="" + DLLIMP_SUFFIX="" + dlldir="$libdir" + + case "${BAKEFILE_HOST}" in + *-hp-hpux* ) + SO_SUFFIX="sl" + SO_SUFFIX_MODULE="sl" + ;; + *-*-aix* ) + dnl quoting from + dnl http://www-1.ibm.com/servers/esdd/articles/gnu.html: + dnl Both archive libraries and shared libraries on AIX have an + dnl .a extension. This will explain why you can't link with an + dnl .so and why it works with the name changed to .a. + SO_SUFFIX="a" + SO_SUFFIX_MODULE="a" + ;; + *-*-cygwin* ) + SO_SUFFIX="dll" + SO_SUFFIX_MODULE="dll" + DLLIMP_SUFFIX="dll.a" + EXEEXT=".exe" + DLLPREFIX="cyg" + dlldir="$bindir" + ;; + *-*-mingw32* ) + SO_SUFFIX="dll" + SO_SUFFIX_MODULE="dll" + DLLIMP_SUFFIX="dll.a" + EXEEXT=".exe" + DLLPREFIX="" + dlldir="$bindir" + ;; + *-pc-msdosdjgpp ) + EXEEXT=".exe" + DLLPREFIX="" + dlldir="$bindir" + ;; + *-pc-os2_emx | *-pc-os2-emx ) + SO_SUFFIX="dll" + SO_SUFFIX_MODULE="dll" + DLLIMP_SUFFIX=$OS2_LIBEXT + EXEEXT=".exe" + DLLPREFIX="" + LIBPREFIX="" + LIBEXT=".$OS2_LIBEXT" + dlldir="$bindir" + ;; + *-*-darwin* ) + SO_SUFFIX="dylib" + SO_SUFFIX_MODULE="bundle" + ;; + esac + + if test "x$DLLIMP_SUFFIX" = "x" ; then + DLLIMP_SUFFIX="$SO_SUFFIX" + fi + + AC_SUBST(SO_SUFFIX) + AC_SUBST(SO_SUFFIX_MODULE) + AC_SUBST(DLLIMP_SUFFIX) + AC_SUBST(EXEEXT) + AC_SUBST(LIBPREFIX) + AC_SUBST(LIBEXT) + AC_SUBST(DLLPREFIX) + AC_SUBST(DLLPREFIX_MODULE) + AC_SUBST(dlldir) +]) + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_SHARED_LD +dnl +dnl Detects command for making shared libraries, substitutes SHARED_LD_CC +dnl and SHARED_LD_CXX. +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_SHARED_LD], +[ + dnl the extra compiler flags needed for compilation of shared library + PIC_FLAG="" + if test "x$GCC" = "xyes"; then + dnl the switch for gcc is the same under all platforms + PIC_FLAG="-fPIC" + fi + + dnl Defaults for GCC and ELF .so shared libs: + SHARED_LD_CC="\$(CC) -shared ${PIC_FLAG} -o" + SHARED_LD_CXX="\$(CXX) -shared ${PIC_FLAG} -o" + WINDOWS_IMPLIB=0 + + case "${BAKEFILE_HOST}" in + *-hp-hpux* ) + dnl default settings are good for gcc but not for the native HP-UX + if test "x$GCC" != "xyes"; then + dnl no idea why it wants it, but it does + LDFLAGS="$LDFLAGS -L/usr/lib" + + SHARED_LD_CC="${CC} -b -o" + SHARED_LD_CXX="${CXX} -b -o" + PIC_FLAG="+Z" + fi + ;; + + *-*-linux* ) + if test "x$GCC" != "xyes"; then + AC_CACHE_CHECK([for Intel compiler], bakefile_cv_prog_icc, + [ + AC_TRY_COMPILE([], + [ + #ifndef __INTEL_COMPILER + This is not ICC + #endif + ], + bakefile_cv_prog_icc=yes, + bakefile_cv_prog_icc=no + ) + ]) + if test "$bakefile_cv_prog_icc" = "yes"; then + PIC_FLAG="-KPIC" + fi + fi + ;; + + *-*-solaris2* ) + if test "x$GCC" != xyes ; then + SHARED_LD_CC="${CC} -G -o" + SHARED_LD_CXX="${CXX} -G -o" + PIC_FLAG="-KPIC" + fi + ;; + + *-*-darwin* ) + AC_BAKEFILE_CREATE_FILE_SHARED_LD_SH + chmod +x shared-ld-sh + + SHARED_LD_MODULE_CC="`pwd`/shared-ld-sh -bundle -headerpad_max_install_names -o" + SHARED_LD_MODULE_CXX="$SHARED_LD_MODULE_CC" + + dnl Most apps benefit from being fully binded (its faster and static + dnl variables initialized at startup work). + dnl This can be done either with the exe linker flag -Wl,-bind_at_load + dnl or with a double stage link in order to create a single module + dnl "-init _wxWindowsDylibInit" not useful with lazy linking solved + + dnl If using newer dev tools then there is a -single_module flag that + dnl we can use to do this for dylibs, otherwise we'll need to use a helper + dnl script. Check the version of gcc to see which way we can go: + AC_CACHE_CHECK([for gcc 3.1 or later], bakefile_cv_gcc31, [ + AC_TRY_COMPILE([], + [ + #if (__GNUC__ < 3) || \ + ((__GNUC__ == 3) && (__GNUC_MINOR__ < 1)) + This is old gcc + #endif + ], + [ + bakefile_cv_gcc31=yes + ], + [ + bakefile_cv_gcc31=no + ] + ) + ]) + if test "$bakefile_cv_gcc31" = "no"; then + dnl Use the shared-ld-sh helper script + SHARED_LD_CC="`pwd`/shared-ld-sh -dynamiclib -headerpad_max_install_names -o" + SHARED_LD_CXX="$SHARED_LD_CC" + else + dnl Use the -single_module flag and let the linker do it for us + SHARED_LD_CC="\${CC} -dynamiclib -single_module -headerpad_max_install_names -o" + SHARED_LD_CXX="\${CXX} -dynamiclib -single_module -headerpad_max_install_names -o" + fi + + if test "x$GCC" == "xyes"; then + PIC_FLAG="-dynamic -fPIC" + fi + if test "x$XLCC" = "xyes"; then + PIC_FLAG="-dynamic -DPIC" + fi + ;; + + *-*-aix* ) + if test "x$GCC" = "xyes"; then + dnl at least gcc 2.95 warns that -fPIC is ignored when + dnl compiling each and every file under AIX which is annoying, + dnl so don't use it there (it's useless as AIX runs on + dnl position-independent architectures only anyhow) + PIC_FLAG="" + + dnl -bexpfull is needed by AIX linker to export all symbols (by + dnl default it doesn't export any and even with -bexpall it + dnl doesn't export all C++ support symbols, e.g. vtable + dnl pointers) but it's only available starting from 5.1 (with + dnl maintenance pack 2, whatever this is), see + dnl http://www-128.ibm.com/developerworks/eserver/articles/gnu.html + case "${BAKEFILE_HOST}" in + *-*-aix5* ) + LD_EXPFULL="-Wl,-bexpfull" + ;; + esac + + SHARED_LD_CC="\$(CC) -shared $LD_EXPFULL -o" + SHARED_LD_CXX="\$(CXX) -shared $LD_EXPFULL -o" + else + dnl FIXME: makeC++SharedLib is obsolete, what should we do for + dnl recent AIX versions? + AC_CHECK_PROG(AIX_CXX_LD, makeC++SharedLib, + makeC++SharedLib, /usr/lpp/xlC/bin/makeC++SharedLib) + SHARED_LD_CC="$AIX_CC_LD -p 0 -o" + SHARED_LD_CXX="$AIX_CXX_LD -p 0 -o" + fi + ;; + + *-*-beos* ) + dnl can't use gcc under BeOS for shared library creation because it + dnl complains about missing 'main' + SHARED_LD_CC="${LD} -nostart -o" + SHARED_LD_CXX="${LD} -nostart -o" + ;; + + *-*-irix* ) + dnl default settings are ok for gcc + if test "x$GCC" != "xyes"; then + PIC_FLAG="-KPIC" + fi + ;; + + *-*-cygwin* | *-*-mingw32* ) + PIC_FLAG="" + SHARED_LD_CC="\$(CC) -shared -o" + SHARED_LD_CXX="\$(CXX) -shared -o" + WINDOWS_IMPLIB=1 + ;; + + *-pc-os2_emx | *-pc-os2-emx ) + SHARED_LD_CC="`pwd`/dllar.sh -libf INITINSTANCE -libf TERMINSTANCE -o" + SHARED_LD_CXX="`pwd`/dllar.sh -libf INITINSTANCE -libf TERMINSTANCE -o" + PIC_FLAG="" + AC_BAKEFILE_CREATE_FILE_DLLAR_SH + chmod +x dllar.sh + ;; + + powerpc-apple-macos* | \ + *-*-freebsd* | *-*-openbsd* | *-*-netbsd* | *-*-k*bsd*-gnu | \ + *-*-mirbsd* | \ + *-*-sunos4* | \ + *-*-osf* | \ + *-*-dgux5* | \ + *-*-sysv5* | \ + *-pc-msdosdjgpp ) + dnl defaults are ok + ;; + + *) + AC_MSG_ERROR(unknown system type $BAKEFILE_HOST.) + esac + + if test "x$PIC_FLAG" != "x" ; then + PIC_FLAG="$PIC_FLAG -DPIC" + fi + + if test "x$SHARED_LD_MODULE_CC" = "x" ; then + SHARED_LD_MODULE_CC="$SHARED_LD_CC" + fi + if test "x$SHARED_LD_MODULE_CXX" = "x" ; then + SHARED_LD_MODULE_CXX="$SHARED_LD_CXX" + fi + + AC_SUBST(SHARED_LD_CC) + AC_SUBST(SHARED_LD_CXX) + AC_SUBST(SHARED_LD_MODULE_CC) + AC_SUBST(SHARED_LD_MODULE_CXX) + AC_SUBST(PIC_FLAG) + AC_SUBST(WINDOWS_IMPLIB) +]) + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_SHARED_VERSIONS +dnl +dnl Detects linker options for attaching versions (sonames) to shared libs. +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_SHARED_VERSIONS], +[ + USE_SOVERSION=0 + USE_SOVERLINUX=0 + USE_SOVERSOLARIS=0 + USE_SOVERCYGWIN=0 + USE_SOSYMLINKS=0 + USE_MACVERSION=0 + SONAME_FLAG= + + case "${BAKEFILE_HOST}" in + *-*-linux* | *-*-freebsd* | *-*-k*bsd*-gnu ) + SONAME_FLAG="-Wl,-soname," + USE_SOVERSION=1 + USE_SOVERLINUX=1 + USE_SOSYMLINKS=1 + ;; + + *-*-solaris2* ) + SONAME_FLAG="-h " + USE_SOVERSION=1 + USE_SOVERSOLARIS=1 + USE_SOSYMLINKS=1 + ;; + + *-*-darwin* ) + USE_MACVERSION=1 + USE_SOVERSION=1 + USE_SOSYMLINKS=1 + ;; + + *-*-cygwin* ) + USE_SOVERSION=1 + USE_SOVERCYGWIN=1 + ;; + esac + + AC_SUBST(USE_SOVERSION) + AC_SUBST(USE_SOVERLINUX) + AC_SUBST(USE_SOVERSOLARIS) + AC_SUBST(USE_SOVERCYGWIN) + AC_SUBST(USE_MACVERSION) + AC_SUBST(USE_SOSYMLINKS) + AC_SUBST(SONAME_FLAG) +]) + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_DEPS +dnl +dnl Detects available C/C++ dependency tracking options +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_DEPS], +[ + AC_ARG_ENABLE([dependency-tracking], + AS_HELP_STRING([--disable-dependency-tracking], + [don't use dependency tracking even if the compiler can]), + [bk_use_trackdeps="$enableval"]) + + AC_MSG_CHECKING([for dependency tracking method]) + + BK_DEPS="" + if test "x$bk_use_trackdeps" = "xno" ; then + DEPS_TRACKING=0 + AC_MSG_RESULT([disabled]) + else + DEPS_TRACKING=1 + + if test "x$GCC" = "xyes"; then + DEPSMODE=gcc + case "${BAKEFILE_HOST}" in + *-*-darwin* ) + dnl -cpp-precomp (the default) conflicts with -MMD option + dnl used by bk-deps (see also http://developer.apple.com/documentation/Darwin/Conceptual/PortingUnix/compiling/chapter_4_section_3.html) + DEPSFLAG="-no-cpp-precomp -MMD" + ;; + * ) + DEPSFLAG="-MMD" + ;; + esac + AC_MSG_RESULT([gcc]) + elif test "x$MWCC" = "xyes"; then + DEPSMODE=mwcc + DEPSFLAG="-MM" + AC_MSG_RESULT([mwcc]) + elif test "x$SUNCC" = "xyes"; then + DEPSMODE=unixcc + DEPSFLAG="-xM1" + AC_MSG_RESULT([Sun cc]) + elif test "x$SGICC" = "xyes"; then + DEPSMODE=unixcc + DEPSFLAG="-M" + AC_MSG_RESULT([SGI cc]) + elif test "x$HPCC" = "xyes"; then + DEPSMODE=unixcc + DEPSFLAG="+make" + AC_MSG_RESULT([HP cc]) + elif test "x$COMPAQCC" = "xyes"; then + DEPSMODE=gcc + DEPSFLAG="-MD" + AC_MSG_RESULT([Compaq cc]) + else + DEPS_TRACKING=0 + AC_MSG_RESULT([none]) + fi + + if test $DEPS_TRACKING = 1 ; then + AC_BAKEFILE_CREATE_FILE_BK_DEPS + chmod +x bk-deps + dnl FIXME: make this $(top_builddir)/bk-deps once autoconf-2.60 + dnl is required (and so top_builddir is never empty): + BK_DEPS="`pwd`/bk-deps" + fi + fi + + AC_SUBST(DEPS_TRACKING) + AC_SUBST(BK_DEPS) +]) + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_CHECK_BASIC_STUFF +dnl +dnl Checks for presence of basic programs, such as C and C++ compiler, "ranlib" +dnl or "install" +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_CHECK_BASIC_STUFF], +[ + AC_PROG_RANLIB + AC_PROG_INSTALL + AC_PROG_LN_S + + AC_PROG_MAKE_SET + AC_SUBST(MAKE_SET) + + if test "x$SUNCXX" = "xyes"; then + dnl Sun C++ compiler requires special way of creating static libs; + dnl see here for more details: + dnl https://sourceforge.net/tracker/?func=detail&atid=109863&aid=1229751&group_id=9863 + AR=$CXX + AC_SUBST(AR) + AROPTIONS="-xar -o" + else + AC_CHECK_TOOL(AR, ar, ar) + AROPTIONS=rcu + fi + AC_SUBST(AROPTIONS) + + AC_CHECK_TOOL(STRIP, strip, :) + AC_CHECK_TOOL(NM, nm, :) + + case ${BAKEFILE_HOST} in + *-hp-hpux* ) + dnl HP-UX install doesn't handle the "-d" switch so don't + dnl use it there + INSTALL_DIR="mkdir -p" + ;; + * ) + dnl we must refer to makefile's $(INSTALL) variable and not + dnl current value of shell variable, hence the single quoting: + INSTALL_DIR='$(INSTALL) -d' + ;; + esac + AC_SUBST(INSTALL_DIR) + + LDFLAGS_GUI= + case ${BAKEFILE_HOST} in + *-*-cygwin* | *-*-mingw32* ) + LDFLAGS_GUI="-mwindows" + esac + AC_SUBST(LDFLAGS_GUI) +]) + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_RES_COMPILERS +dnl +dnl Checks for presence of resource compilers for win32 or mac +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_RES_COMPILERS], +[ + case ${BAKEFILE_HOST} in + *-*-cygwin* | *-*-mingw32* ) + dnl Check for win32 resources compiler: + AC_CHECK_TOOL(WINDRES, windres) + ;; + + *-*-darwin* | powerpc-apple-macos* ) + AC_CHECK_PROG(REZ, Rez, Rez, /Developer/Tools/Rez) + AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile) + ;; + esac + + AC_SUBST(WINDRES) + AC_SUBST(REZ) + AC_SUBST(SETFILE) +]) + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE_PRECOMP_HEADERS +dnl +dnl Check for precompiled headers support (GCC >= 3.4) +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_PRECOMP_HEADERS], +[ + + AC_ARG_ENABLE([precomp-headers], + AS_HELP_STRING([--disable-precomp-headers], + [don't use precompiled headers even if compiler can]), + [bk_use_pch="$enableval"]) + + GCC_PCH=0 + ICC_PCH=0 + USE_PCH=0 + BK_MAKE_PCH="" + + case ${BAKEFILE_HOST} in + *-*-cygwin* ) + dnl PCH support is broken in cygwin gcc because of unportable + dnl assumptions about mmap() in gcc code which make PCH generation + dnl fail erratically; disable PCH completely until this is fixed + bk_use_pch="no" + ;; + esac + + if test "x$bk_use_pch" = "x" -o "x$bk_use_pch" = "xyes" ; then + if test "x$GCC" = "xyes"; then + dnl test if we have gcc-3.4: + AC_MSG_CHECKING([if the compiler supports precompiled headers]) + AC_TRY_COMPILE([], + [ + #if !defined(__GNUC__) || !defined(__GNUC_MINOR__) + There is no PCH support + #endif + #if (__GNUC__ < 3) + There is no PCH support + #endif + #if (__GNUC__ == 3) && \ + ((!defined(__APPLE_CC__) && (__GNUC_MINOR__ < 4)) || \ + ( defined(__APPLE_CC__) && (__GNUC_MINOR__ < 3))) || \ + ( defined(__INTEL_COMPILER) ) + There is no PCH support + #endif + ], + [ + AC_MSG_RESULT([yes]) + GCC_PCH=1 + ], + [ + AC_TRY_COMPILE([], + [ + #if !defined(__INTEL_COMPILER) || \ + (__INTEL_COMPILER < 800) + There is no PCH support + #endif + ], + [ + AC_MSG_RESULT([yes]) + ICC_PCH=1 + ], + [ + AC_MSG_RESULT([no]) + ]) + ]) + if test $GCC_PCH = 1 -o $ICC_PCH = 1 ; then + USE_PCH=1 + AC_BAKEFILE_CREATE_FILE_BK_MAKE_PCH + chmod +x bk-make-pch + dnl FIXME: make this $(top_builddir)/bk-make-pch once + dnl autoconf-2.60 is required (and so top_builddir is + dnl never empty): + BK_MAKE_PCH="`pwd`/bk-make-pch" + fi + fi + fi + + AC_SUBST(GCC_PCH) + AC_SUBST(ICC_PCH) + AC_SUBST(BK_MAKE_PCH) +]) + + + +dnl --------------------------------------------------------------------------- +dnl AC_BAKEFILE([autoconf_inc.m4 inclusion]) +dnl +dnl To be used in configure.in of any project using Bakefile-generated mks +dnl +dnl Behaviour can be modified by setting following variables: +dnl BAKEFILE_CHECK_BASICS set to "no" if you don't want bakefile to +dnl to perform check for basic tools like ranlib +dnl BAKEFILE_HOST set this to override host detection, defaults +dnl to ${host} +dnl BAKEFILE_FORCE_PLATFORM set to override platform detection +dnl +dnl Example usage: +dnl +dnl AC_BAKEFILE([FOO(autoconf_inc.m4)]) +dnl +dnl (replace FOO with m4_include above, aclocal would die otherwise) +dnl (yes, it's ugly, but thanks to a bug in aclocal, it's the only thing +dnl we can do...) +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE], +[ + AC_PREREQ([2.58]) + + if test "x$BAKEFILE_HOST" = "x"; then + if test "x${host}" = "x" ; then + AC_MSG_ERROR([You must call the autoconf "CANONICAL_HOST" macro in your configure.ac (or .in) file.]) + fi + + BAKEFILE_HOST="${host}" + fi + + if test "x$BAKEFILE_CHECK_BASICS" != "xno"; then + AC_BAKEFILE_CHECK_BASIC_STUFF + fi + AC_BAKEFILE_GNUMAKE + AC_BAKEFILE_PLATFORM + AC_BAKEFILE_PLATFORM_SPECIFICS + AC_BAKEFILE_SUFFIXES + AC_BAKEFILE_SHARED_LD + AC_BAKEFILE_SHARED_VERSIONS + AC_BAKEFILE_DEPS + AC_BAKEFILE_RES_COMPILERS + + BAKEFILE_BAKEFILE_M4_VERSION="0.2.1" + + dnl includes autoconf_inc.m4: + $1 + + if test "$BAKEFILE_AUTOCONF_INC_M4_VERSION" = "" ; then + AC_MSG_ERROR([No version found in autoconf_inc.m4 - bakefile macro was changed to take additional argument, perhaps configure.in wasn't updated (see the documentation)?]) + fi + + if test "$BAKEFILE_BAKEFILE_M4_VERSION" != "$BAKEFILE_AUTOCONF_INC_M4_VERSION" ; then + AC_MSG_ERROR([Versions of Bakefile used to generate makefiles ($BAKEFILE_AUTOCONF_INC_M4_VERSION) and configure ($BAKEFILE_BAKEFILE_M4_VERSION) do not match.]) + fi +]) + + +dnl --------------------------------------------------------------------------- +dnl Embedded copies of helper scripts follow: +dnl --------------------------------------------------------------------------- + +AC_DEFUN([AC_BAKEFILE_CREATE_FILE_DLLAR_SH], +[ +dnl ===================== dllar.sh begins here ===================== +dnl (Created by merge-scripts.py from dllar.sh +dnl file do not edit here!) +D='$' +cat <<EOF >dllar.sh +#!/bin/sh +# +# dllar - a tool to build both a .dll and an .a file +# from a set of object (.o) files for EMX/OS2. +# +# Written by Andrew Zabolotny, bi...@fr... +# Ported to Unix like shell by Stefan Neis, Ste...@t-... +# +# This script will accept a set of files on the command line. +# All the public symbols from the .o files will be exported into +# a .DEF file, then linker will be run (through gcc) against them to +# build a shared library consisting of all given .o files. All libraries +# (.a) will be first decompressed into component .o files then act as +# described above. You can optionally give a description (-d "description") +# which will be put into .DLL. To see the list of accepted options (as well +# as command-line format) simply run this program without options. The .DLL +# is built to be imported by name (there is no guarantee that new versions +# of the library you build will have same ordinals for same symbols). +# +# dllar is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# dllar is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with dllar; see the file COPYING. If not, write to the Free +# Software Foundation, 59 Temple Place - Suite 330, Boston, MA +# 02111-1307, USA. + +# To successfuly run this program you will need: +# - Current drive should have LFN support (HPFS, ext2, network, etc) +# (Sometimes dllar generates filenames which won't fit 8.3 scheme) +# - gcc +# (used to build the .dll) +# - emxexp +# (used to create .def file from .o files) +# - emximp +# (used to create .a file from .def file) +# - GNU text utilites (cat, sort, uniq) +# used to process emxexp output +# - GNU file utilities (mv, rm) +# - GNU sed +# - lxlite (optional, see flag below) +# (used for general .dll cleanup) +# + +flag_USE_LXLITE=1; + +# +# helper functions +# basnam, variant of basename, which does _not_ remove the path, _iff_ +# second argument (suffix to remove) is given +basnam(){ + case ${D}# in + 1) + echo ${D}1 | sed 's/.*\\///' | sed 's/.*\\\\//' + ;; + 2) + echo ${D}1 | sed 's/'${D}2'${D}//' + ;; + *) + echo "error in basnam ${D}*" + exit 8 + ;; + esac +} + +# Cleanup temporary files and output +CleanUp() { + cd ${D}curDir + for i in ${D}inputFiles ; do + case ${D}i in + *!) + rm -rf \`basnam ${D}i !\` + ;; + *) + ;; + esac + done + + # Kill result in case of failure as there is just to many stupid make/nmake + # things out there which doesn't do this. + if @<:@ ${D}# -eq 0 @:>@; then + rm -f ${D}arcFile ${D}arcFile2 ${D}defFile ${D}dllFile + fi +} + +# Print usage and exit script with rc=1. +PrintHelp() { + echo 'Usage: dllar.sh @<:@-o@<:@utput@:>@ output_file@:>@ @<:@-i@<:@mport@:>@ importlib_name@:>@' + echo ' @<:@-name-mangler-script script.sh@:>@' + echo ' @<:@-d@<:@escription@:>@ "dll descrption"@:>@ @<:@-cc "CC"@:>@ @<:@-f@<:@lags@:>@ "CFLAGS"@:>@' + echo ' @<:@-ord@<:@inals@:>@@:>@ -ex@<:@clude@:>@ "symbol(s)"' + echo ' @<:@-libf@<:@lags@:>@ "{INIT|TERM}{GLOBAL|INSTANCE}"@:>@ @<:@-nocrt@<:@dll@:>@@:>@ @<:@-nolxl@<:@ite@:>@@:>@' + echo ' @<:@*.o@:>@ @<:@*.a@:>@' + echo '*> "output_file" should have no extension.' + echo ' If it has the .o, .a or .dll extension, it is automatically removed.' + echo ' The import library name is derived from this and is set to "name".a,' + echo ' unless overridden by -import' + echo '*> "importlib_name" should have no extension.' + echo ' If it has the .o, or .a extension, it is automatically removed.' + echo ' This name is used as the import library name and may be longer and' + echo ' more descriptive than the DLL name which has to follow the old ' + echo ' 8.3 convention of FAT.' + echo '*> "script.sh may be given to override the output_file name by a' + echo ' different name. It is mainly useful if the regular make process' + echo ' of some package does not take into account OS/2 restriction of' + echo ' DLL name lengths. It takes the importlib name as input and is' + echo ' supposed to procude a shorter name as output. The script should' + echo ' expect to get importlib_name without extension and should produce' + echo ' a (max.) 8 letter name without extension.' + echo '*> "cc" is used to use another GCC executable. (default: gcc.exe)' + echo '*> "flags" should be any set of valid GCC flags. (default: -s -Zcrtdll)' + echo ' These flags will be put at the start of GCC command line.' + echo '*> -ord@<:@inals@:>@ tells dllar to export entries by ordinals. Be careful.' + echo '*> -ex@<:@clude@:>@ defines symbols which will not be exported. You can define' + echo ' multiple symbols, for example -ex "myfunc yourfunc _GLOBAL*".' + echo ' If the last character of a symbol is "*", all symbols beginning' + echo ' with the prefix before "*" will be exclude, (see _GLOBAL* above).' + echo '*> -libf@<:@lags@:>@ can be used to add INITGLOBAL/INITINSTANCE and/or' + echo ' TERMGLOBAL/TERMINSTANCE flags to the dynamically-linked library.' + echo '*> -nocrt@<:@dll@:>@ switch will disable linking the library against emx''s' + echo ' C runtime DLLs.' + echo '*> -nolxl@<:@ite@:>@ switch will disable running lxlite on the resulting DLL.' + echo '*> All other switches (for example -L./ or -lmylib) will be passed' + echo ' unchanged to GCC at the end of command line.' + echo '*> If you create a DLL from a library and you do not specify -o,' + echo ' the basename for DLL and import library will be set to library name,' + echo ' the initial library will be renamed to 'name'_s.a (_s for static)' + echo ' i.e. "dllar gcc.a" will create gcc.dll and gcc.a, and the initial' + echo ' library will be renamed into gcc_s.a.' + echo '--------' + echo 'Example:' + echo ' dllar -o gcc290.dll libgcc.a -d "GNU C runtime library" -ord' + echo ' -ex "__main __ctordtor*" -libf "INITINSTANCE TERMINSTANCE"' + CleanUp + exit 1 +} + +# Execute a command. +# If exit code of the commnad <> 0 CleanUp() is called and we'll exit the script. +# @Uses Whatever CleanUp() uses. +doCommand() { + echo "${D}*" + eval ${D}* + rcCmd=${D}? + + if @<:@ ${D}rcCmd -ne 0 @:>@; then + echo "command failed, exit code="${D}rcCmd + CleanUp + exit ${D}rcCmd + fi +} + +# main routine +# setup globals +cmdLine=${D}* +outFile="" +outimpFile="" +inputFiles="" +renameScript="" +description="" +CC=gcc.exe +CFLAGS="-s -Zcrtdll" +EXTRA_CFLAGS="" +EXPORT_BY_ORDINALS=0 +exclude_symbols="" +library_flags="" +curDir=\`pwd\` +curDirS=curDir +case ${D}curDirS in +*/) + ;; +*) + curDirS=${D}{curDirS}"/" + ;; +esac +# Parse commandline +libsToLink=0 +omfLinking=0 +while @<:@ ${D}1 @:>@; do + case ${D}1 in + -ord*) + EXPORT_BY_ORDINALS=1; + ;; + -o*) + shift + outFile=${D}1 + ;; + -i*) + shift + outimpFile=${D}1 + ;; + -name-mangler-script) + shift + renameScript=${D}1 + ;; + -d*) + shift + description=${D}1 + ;; + -f*) + shift + CFLAGS=${D}1 + ;; + -c*) + shift + CC=${D}1 + ;; + -h*) + PrintHelp + ;; + -ex*) + shift + exclude_symbols=${D}{exclude_symbols}${D}1" " + ;; + -libf*) + shift + library_flags=${D}{library_flags}${D}1" " + ;; + -nocrt*) + CFLAGS="-s" + ;; + -nolxl*) + flag_USE_LXLITE=0 + ;; + -* | /*) + case ${D}1 in + -L* | -l*) + libsToLink=1 + ;; + -Zomf) + omfLinking=1 + ;; + *) + ;; + esac + EXTRA_CFLAGS=${D}{EXTRA_CFLAGS}" "${D}1 + ;; + *.dll) + EXTRA_CFLAGS="${D}{EXTRA_CFLAGS} \`basnam ${D}1 .dll\`" + if @<:@ ${D}omfLinking -eq 1 @:>@; then + EXTRA_CFLAGS="${D}{EXTRA_CFLAGS}.lib" + else + EXTRA_CFLAGS="${D}{EXTRA_CFLAGS}.a" + fi + ;; + *) + found=0; + if @<:@ ${D}libsToLink -ne 0 @:>@; then + EXTRA_CFLAGS=${D}{EXTRA_CFLAGS}" "${D}1 + else + for file in ${D}1 ; do + if @<:@ -f ${D}file @:>@; then + inputFiles="${D}{inputFiles} ${D}file" + found=1 + fi + done + if @<:@ ${D}found -eq 0 @:>@; then + echo "ERROR: No file(s) found: "${D}1 + exit 8 + fi + fi + ;; + esac + shift +done # iterate cmdline words + +# +if @<:@ -z "${D}inputFiles" @:>@; then + echo "dllar: no input files" + PrintHelp +fi + +# Now extract all .o files from .a files +newInputFiles="" +for file in ${D}inputFiles ; do + case ${D}file in + *.a | *.lib) + case ${D}file in + *.a) + suffix=".a" + AR="ar" + ;; + *.lib) + suffix=".lib" + AR="emxomfar" + EXTRA_CFLAGS="${D}EXTRA_CFLAGS -Zomf" + ;; + *) + ;; + esac + dirname=\`basnam ${D}file ${D}suffix\`"_%" + mkdir ${D}dirname + if @<:@ ${D}? -ne 0 @:>@; then + echo "Failed to create subdirectory ./${D}dirname" + CleanUp + exit 8; + fi + # Append '!' to indicate archive + newInputFiles="${D}newInputFiles ${D}{dirname}!" + doCommand "cd ${D}dirname; ${D}AR x ../${D}file" + cd ${D}curDir + found=0; + for subfile in ${D}dirname/*.o* ; do + if @<:@ -f ${D}subfile @:>@; then + found=1 + if @<:@ -s ${D}subfile @:>@; then + # FIXME: This should be: is file size > 32 byte, _not_ > 0! + newInputFiles="${D}newInputFiles ${D}subfile" + fi + fi + done + if @<:@ ${D}found -eq 0 @:>@; then + echo "WARNING: there are no files in archive \\'${D}file\\'" + fi + ;; + *) + newInputFiles="${D}{newInputFiles} ${D}file" + ;; + esac +done +inputFiles="${D}newInputFiles" + +# Output filename(s). +do_backup=0; +if @<:@ -z ${D}outFile @:>@; then + do_backup=1; + set outFile ${D}inputFiles; outFile=${D}2 +fi + +# If it is an archive, remove the '!' and the '_%' suffixes +case ${D}outFile in +*_%!) + outFile=\`basnam ${D}outFile _%!\` + ;; +*) + ;; +esac +case ${D}outFile in +*.dll) + outFile=\`basnam ${D}outFile .dll\` + ;; +*.DLL) + outFile=\`basnam ${D}outFile .DLL\` + ;; +*.o) + outFile=\`basnam ${D}outFile .o\` + ;; +*.obj) +... [truncated message content] |