added Mac OS X application bundle (framework) building

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@14391 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Gilles Depeyrot 2002-02-24 18:02:51 +00:00
parent 67087ab455
commit ef7f21894c
8 changed files with 421 additions and 313 deletions

623
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -2515,6 +2515,7 @@ if test "$wxUSE_MAC" = 1; then
WX_ALL_INSTALLED="${WX_ALL_INSTALLED} preinstall_res"
AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez)
AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez)
MACOSX_BUNDLE="bundle"
LIBWXMACRES="\$(top_builddir)/lib/lib${WX_LIBRARY}.r"
LIBWXMACRESCOMP="\$(RESCOMP) Carbon.r -t APPL ${LIBWXMACRES} -o \$(BIN_PROGRAM)"
LIBWXMACRESWXCONFIG="${RESCOMP} Carbon.r -t APPL \${prefix}/lib/${WX_RESOURCES_MACOSX_COMPILED} -o"
@ -4818,6 +4819,7 @@ AC_SUBST(WX_RESOURCES_MACOSX_COMPILED)
dnl additional for Mac OS X
AC_SUBST(DEREZ)
AC_SUBST(MACOSX_BUNDLE)
AC_SUBST(LIBWXMACRES)
AC_SUBST(LIBWXMACRESCOMP)
AC_SUBST(LIBWXMACRESWXCONFIG)

36
src/mac/Info.plist.in Normal file
View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleIdentifier</key>
<string>org.wxwindows.IDENTIFIER</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>EXECUTABLE</string>
<key>CFBundleIconFile</key>
<string>EXECUTABLE.icns</string>
<key>CFBundleName</key>
<string>EXECUTABLE</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>VERSION</string>
<key>CFBundleShortVersionString</key>
<string>VERSION</string>
<key>CFBundleGetInfoString</key>
<string>EXECUTABLE version VERSION, (c) 2002 wxWindows</string>
<key>CFBundleLongVersionString</key>
<string>VERSION, (c) 2002 wxWindows</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright 2002 wxWindows</string>
<key>LSRequiresCarbon</key>
<true/>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
</plist>

View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
<plist version="0.9">
<dict>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleIdentifier</key>
<string>org.wxwindows.IDENTIFIER</string>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>EXECUTABLE</string>
<key>CFBundleIconFile</key>
<string>EXECUTABLE.icns</string>
<key>CFBundleName</key>
<string>EXECUTABLE</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>VERSION</string>
<key>CFBundleShortVersionString</key>
<string>VERSION</string>
<key>CFBundleGetInfoString</key>
<string>EXECUTABLE version VERSION, (c) 2002 wxWindows</string>
<key>CFBundleLongVersionString</key>
<string>VERSION, (c) 2002 wxWindows</string>
<key>NSHumanReadableCopyright</key>
<string>Copyright 2002 wxWindows</string>
<key>LSRequiresCarbon</key>
<true/>
<key>CSResourcesFileMapped</key>
<true/>
</dict>
</plist>

BIN
src/mac/carbon/wxmac.icns Normal file

Binary file not shown.

BIN
src/mac/wxmac.icns Normal file

Binary file not shown.

View File

@ -58,6 +58,11 @@ DEREZ = @DEREZ@
DLLTOOL = @DLLTOOL@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL@
########################### Flags #################################
CPPFLAGS = ${APPEXTRACPPFLAGS} @CPPFLAGS@ @TOOLCHAIN_DEFS@@TOOLCHAIN_DLL_DEFS@ @WXDEBUG_DEFINE@

View File

@ -4,6 +4,7 @@
PROGRAM_EXT = @PROGRAM_EXT@
BIN_PROGRAM = $(PROGRAM)$(PROGRAM_EXT)
RES_PROGRAM_OBJ = @RESPROGRAMOBJ@
BUNDLE = $(BIN_PROGRAM).app/Contents
%.o : %.c
$(CC) -c $(CFLAGS) $(APPEXTRADEFS) -o $@ $<
@ -26,18 +27,17 @@ 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
all: $(BIN_PROGRAM) @MACOSX_BUNDLE@ install_dirs install_data
$(BIN_PROGRAM): $(OBJECTS) $(top_builddir)/lib/@WX_TARGET_LIBRARY@ $(RES_PROGRAM_OBJ) @LIBWXMACRES@
$(CXX) $(LDFLAGS) -o $(BIN_PROGRAM) $(OBJECTS) $(LDLIBS) $(LIBRARIES) $(RES_PROGRAM_OBJ)
@LIBWXMACRESCOMP@
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 \
@ -48,3 +48,29 @@ install_data:
clean:
rm -f $(OBJECTS) $(DEPFILES) $(BIN_PROGRAM) $(RES_PROGRAM_OBJ) core
#
# Targets to build a Mac OS X application bundle
#
bundle: $(BUNDLE)/Info.plist $(BUNDLE)/PkgInfo $(BUNDLE)/MacOS/$(PROGRAM) $(BUNDLE)/Resources/$(PROGRAM).rsrc $(BUNDLE)/Resources/$(PROGRAM).icns
$(BUNDLE)/Info.plist: $(top_srcdir)/src/$(TOOLKITDIR)/Info.plist.in $(BIN_PROGRA)
@$(INSTALL) -d `dirname $@`
sed -e "s/IDENTIFIER/`echo $(program_dir) | sed 's,/,.,'`/" \
-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): $(BIN_PROGRAM)
@$(INSTALL) -d `dirname $@`
cp $< $@
$(BUNDLE)/Resources/$(PROGRAM).rsrc: $(top_builddir)/lib/@WX_RESOURCES_MACOSX@
@$(INSTALL) -d `dirname $@`
cp $< $@
$(BUNDLE)/Resources/$(PROGRAM).icns: $(top_srcdir)/src/$(TOOLKITDIR)/wxmac.icns
@$(INSTALL) -d `dirname $@`
cp $< $@