top_builddir = .. top_srcdir = @srcdir@/.. srcdir = @srcdir@ VPATH = @srcdir@ CXX=@CXX@ CXXFLAGS=@CXXFLAGS@ @INCLTDL@ LDFLAGS=@LDFLAGS@ @LT_LDFLAGS@ LIBS=@LIBS@ LTDL_STATIC_LIB=${top_builddir}/libltdl/.libs/libltdlc.al LIBTOOL=@LIBTOOL@ RPATH=`pwd`/lib # select whether to use libtool or win32-specific target. # This should either be all_libtool or all_win32_dlltool. all: @PLUGIN_MAKEFILE_TARGET@ ########### libtool makefile for all platforms except win32 ########### all_libtool: uselib libmodule1.la libmodule2.la uselib: main.lo $(LIBTOOL) $(CXX) -export-dynamic $(LDFLAGS) -o uselib main.lo $(LIBS) @LIBLTDL@ lib%.la: %.lo $(LIBTOOL) $(CXX) -module $(LDFLAGS) -o $@ $< -rpath ${RPATH} mkdir -p lib bin $(LIBTOOL) cp $@ ${RPATH} %.lo: %.cc $(LIBTOOL) $(CXX) $(CXXFLAGS) -c $< ####################################################################### ############# makefile for building plugin DLLs for win32 ############# all_win32_dlltool: uselib.exe module1.dll module2.dll uselib.exe: main.cc main.h $(CXX) $(CXXFLAGS) -c -DDLL_EXPORT -o main.o ${srcdir}/main.cc dlltool --output-def uselib.def main.o dlltool --dllname uselib.exe --def uselib.def --output-lib uselib.a dlltool --dllname uselib.exe --output-exp uselib.exp --def uselib.def $(CXX) $(CXXFLAGS) -o uselib.exe uselib.exp main.o ${LIBS} ${LTDL_STATIC_LIB} #rm uselib.exp uselib.def %.dll: %.o uselib.exe $(CXX) $(CXXFLAGS) -shared -o $@ $< uselib.a %.o: %.cc $(CXX) $(CXXFLAGS) -c $< ####################################################################### include ${top_srcdir}/common-make-defs.txt clean: clean-common