]> git.saurik.com Git - wxWidgets.git/blobdiff - src/makeprog.env.in
Added chapter on collection and container classes to contents
[wxWidgets.git] / src / makeprog.env.in
index 9ae88ae94ac8f932a80549b4fc23ffa292ad7cb5..9ee384b81467a05bc70822577a4e0ea732709042 100644 (file)
@@ -3,24 +3,36 @@
 # 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@
+
 .c.o :
-       $(CCC) -c $(CFLAGS) -o $@ $<
+       $(CCC) -c $(CFLAGS) $(APPEXTRADEFS) -o $@ $<
 
 .cpp.o :
-       $(CC) -c $(CPPFLAGS) -o $@ $<
+       $(CC) -c $(CPPFLAGS) $(APPEXTRADEFS) -o $@ $<
 
 .cxx.o :
-       $(CC) -c $(CPPFLAGS) -o $@ $<
+       $(CC) -c $(CPPFLAGS) $(APPEXTRADEFS) -o $@ $<
 
-VPATH = :$(top_srcdir)/$(program_dir)
+# 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:    $(PROGRAM) install_dirs install_data
+all:    $(BIN_PROGRAM) install_dirs install_data
+
+$(BIN_PROGRAM):        $(OBJECTS) $(top_builddir)/lib/@WX_TARGET_LIBRARY@ $(RES_PROGRAM_OPT)
+       $(CC) $(LDFLAGS) -o $(BIN_PROGRAM) $(OBJECTS) $(LDLIBS) $(LIBRARIES) $(RES_PROGRAM_OPT)
 
-$(PROGRAM):    $(OBJECTS) $(top_builddir)/lib/@WX_TARGET_LIBRARY@
-       $(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJECTS) $(LDLIBS)
+$(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 \
@@ -29,10 +41,10 @@ install_dirs:
        
 install_data:
        @list='$(DATAFILES)'; for p in $$list; do \
-         if test ! -e $(top_builddir)/$(program_dir)/Makefile.in; then \
-            cp -u $(top_srcdir)/$(program_dir)/$$p $(top_builddir)/$(program_dir)/$$p; \
+         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