Files
wxWidgets/src/makeprog.env.in
Gilles Depeyrot 36825681b5 improved Mac resource creation step in order to allow samples to provide
specific Rez options (used in docview sample)
added separate Mac Finder flag modification step (using SetFile)


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@18963 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-01-27 22:18:18 +00:00

81 lines
2.6 KiB
Bash

# Make environment for making samples on Unix
# The binary program extension, if any, including dots (e.g. '.exe')
PROGRAM_EXT = @PROGRAM_EXT@
BIN_PROGRAM = $(PROGRAM)$(PROGRAM_EXT)
RES_PROGRAM_OBJ = @RESPROGRAMOBJ@
BUNDLE = $(BIN_PROGRAM).app/Contents
# NB: see remark in Makefile.in as to why we don't use %.foo: %.bar rules
.SUFFIXES: .o .c .cpp .cxx .rc _resources.o
.c.o:
$(CC) -c $(CFLAGS) $(APPEXTRADEFS) -o $@ $<
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(APPEXTRADEFS) -o $@ $<
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(APPEXTRADEFS) -o $@ $<
.rc_resources.o:
$(RESCOMP) -i $< -o $@ $(RESFLAGS)
# 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) @MACOSX_BUNDLE@ install_dirs install_data
$(BIN_PROGRAM): $(OBJECTS) $(top_builddir)/lib/@WX_TARGET_LIBRARY@ $(RES_PROGRAM_OBJ) @LIBWXMACRES@
$(CXX) $(LDFLAGS_EXE) -o $@ $(OBJECTS) $(LDLIBS) $(LIBRARIES) $(RES_PROGRAM_OBJ)
@MACRESCOMP@ $(BIN_PROGRAM) $(RESOPTIONS)
@MACSETFILE@ $(SETOPTIONS) $(BIN_PROGRAM)
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) $(DEPFILES) $(BIN_PROGRAM) $(RES_PROGRAM_OBJ) core
#
# Targets to build a Mac OS X application bundle
#
bundle: $(BUNDLE)/MacOS/$(PROGRAM) $(BUNDLE)/Info.plist $(BUNDLE)/PkgInfo $(BUNDLE)/Resources/$(PROGRAM).rsrc $(BUNDLE)/Resources/wxmac.icns
$(BUNDLE)/Info.plist: $(top_srcdir)/src/$(TOOLKITDIR)/Info.plist.in $(top_builddir)/lib/@WX_TARGET_LIBRARY@
@$(INSTALL) -d `dirname $@`
sed -e "s/IDENTIFIER/`echo $(program_dir) | sed 's,/,.,g'`/" \
-e "s/EXECUTABLE/$(PROGRAM)/" \
-e "s/VERSION/$(WX_MAJOR_VERSION_NUMBER).$(WX_MINOR_VERSION_NUMBER).$(WX_RELEASE_NUMBER)/" $< > $@
$(BUNDLE)/PkgInfo:
@$(INSTALL) -d `dirname $@`
echo -n "APPL????" > $@
$(BUNDLE)/MacOS/$(PROGRAM): $(OBJECTS) $(top_builddir)/lib/@WX_TARGET_LIBRARY@
@$(INSTALL) -d `dirname $@`
$(CXX) $(LDFLAGS_EXE) -o $@ $(OBJECTS) $(LDLIBS) $(LIBRARIES)
$(BUNDLE)/Resources/$(PROGRAM).rsrc: $(top_builddir)/lib/@WX_RESOURCES_MACOSX_DATA@
@$(INSTALL) -d `dirname $@`
cp $< $@
$(BUNDLE)/Resources/wxmac.icns: $(top_srcdir)/src/$(TOOLKITDIR)/wxmac.icns
@$(INSTALL) -d `dirname $@`
cp $< $@