# Clears all default suffixes
.SUFFIXES: .o .cpp .c .cxx
+# 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@
+
+# 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}
+
.c.o :
- $(CCC) -c $(CFLAGS) -o $@ $<
+ ${CCC} -c @DEP_INFO_FLAGS@ ${CFLAGS} ${APPEXTRADEFS} -o $@ $<
.cpp.o :
- $(CC) -c $(CPPFLAGS) -o $@ $<
+ ${CC} -c @DEP_INFO_FLAGS@ ${CXXFLAGS} ${APPEXTRADEFS} -o $@ $<
.cxx.o :
- $(CC) -c $(CPPFLAGS) -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
+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@
-all: $(PROGRAM)
+${RES_PROGRAM}: ${PROGRAM}.rc
+ ${RESCOMP} ${RCINPUTSWITCH} ${top_srcdir}/${program_dir}/${PROGRAM}.rc ${RCOUTPUTSWITCH} ${PROGRAM}_resources.o ${RESFLAGS}
-$(PROGRAM): $(OBJECTS) $(top_builddir)/lib/@WX_TARGET_LIBRARY@
- $(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJECTS) $(LDLIBS)
+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