]> git.saurik.com Git - wxWidgets.git/blobdiff - src/makeprog.env.in
better learn the operators...
[wxWidgets.git] / src / makeprog.env.in
index 9bad0a0c9ec634f7b5436c232c199edbee015cd9..3e33e6a51dd2bb96a7b67a2f95abe747959118de 100644 (file)
@@ -1,18 +1,55 @@
 # Make environment for making samples on Unix
 
-# Replace this with your own path if necessary
-WXDIR       = $(WXWIN)
+# Clears all default suffixes
+.SUFFIXES:     .o .cpp .c .cxx
 
-# this is for using the samples in ../samples/xxxxx
-pretop_srcdir = @top_srcdir@
-top_srcdir = ../$(pretop_srcdir)
-top_builddir = ../..
-include ../../src/make.env
+# The binary program extension, if any, including dots {e.g. '.exe'}
+PROGRAM_EXT = @PROGRAM_EXT@
+BIN_PROGRAM = ${PROGRAM}${PROGRAM_EXT}
+RES_PROGRAM = ${PROGRAM}_resources.o
+RES_PROGRAM_OPT = @RESPROGRAM@
 
-all:    $(PROGRAM)
+# To add resources to the Mac OS X applications
+LIBWX_MACRES = ${top_builddir}/lib/lib@WX_LIBRARY@-${WX_MAJOR_VERSION_NUMBER}.${WX_MINOR_VERSION_NUMBER}.r
+LIBWX_MACRESCOMP = ${RESCOMP} ${RESFLAGS} ${LIBWX_MACRES} -o ${BIN_PROGRAM}
 
-$(PROGRAM):    $(OBJECTS) ../../lib/$(WXLIB)
-       $(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJECTS) $(LDLIBS)
+.c.o :
+       ${CCC} -c @DEP_INFO_FLAGS@ ${CFLAGS} ${APPEXTRADEFS} -o $@ $<
+
+.cpp.o :
+       ${CC} -c @DEP_INFO_FLAGS@ ${CXXFLAGS} ${APPEXTRADEFS} -o $@ $<
+
+.cxx.o :
+       ${CC} -c @DEP_INFO_FLAGS@ ${CXXFLAGS} ${APPEXTRADEFS} -o $@ $<
+
+# the comment at the end of the next line is needed because otherwise autoconf
+# would remove this line completely - it contains a built-in hack to remove
+# any VPATH assignment not containing ':'
+VPATH = @PATH_IFS@${top_srcdir}/${program_dir} # ':' for autoconf
+
+# Set defaults from configure
+include ${top_builddir}/src/make.env
+
+all:    ${BIN_PROGRAM} install_dirs install_data
+
+${BIN_PROGRAM}:        ${OBJECTS} ${top_builddir}/lib/@WX_TARGET_LIBRARY@ ${RES_PROGRAM_OPT} @LIBWXMACRES@
+       ${CC} ${LDFLAGS} -o ${BIN_PROGRAM} ${OBJECTS} ${LDLIBS} ${LIBRARIES} ${RES_PROGRAM_OPT}
+       @LIBWXMACRESCOMP@
+
+${RES_PROGRAM}:  ${PROGRAM}.rc
+       ${RESCOMP} ${RCINPUTSWITCH} ${top_srcdir}/${program_dir}/${PROGRAM}.rc ${RCOUTPUTSWITCH} ${PROGRAM}_resources.o ${RESFLAGS}
+
+install_dirs:
+       @list='${DATADIRS}'; for p in $$list; do \
+         mkdir -p ${top_builddir}/${program_dir}/$$p; \
+       done
+       
+install_data:
+       @list='${DATAFILES}'; for p in $$list; do \
+         if test ! -s ${top_builddir}/${program_dir}/$$p; then \
+            cp -pRf ${top_srcdir}/${program_dir}/$$p ${top_builddir}/${program_dir}/$$p; \
+         fi; \
+       done
 
 clean:
-       rm -f $(OBJECTS) $(PROGRAM) core
+       rm -f ${OBJECTS} ${BIN_PROGRAM}  ${RES_PROGRAM} core