Extend osx makefile to allow building of a working GNUstep application,

for testing purposes. Add GNUstep version of Info.plist, remove
app-skeleton directory and move contents up.

Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 1813
This commit is contained in:
Simon Howard 2010-01-15 18:13:05 +00:00
parent df6a794052
commit f176ac404a
12 changed files with 71 additions and 15 deletions

View file

@ -120,6 +120,7 @@ pcsound/Makefile
pkg/Makefile
pkg/config.make
pkg/osx/Info.plist
pkg/osx/Info-GNUstep.plist
setup/Makefile
setup/setup-res.rc
src/Makefile

View file

@ -1,14 +1,15 @@
OSX_FILES= \
osx/app-skeleton/Contents/PkgInfo \
osx/app-skeleton/Contents/Resources/128x128.png \
osx/app-skeleton/Contents/Resources/app.icns \
osx/app-skeleton/Contents/Resources/wadfile.icns \
osx/app-skeleton/Contents/Resources/launcher.nib/classes.nib \
osx/app-skeleton/Contents/Resources/launcher.nib/info.nib \
osx/app-skeleton/Contents/Resources/launcher.nib/keyedobjects.nib \
osx/Resources/128x128.png \
osx/Resources/app.icns \
osx/Resources/app.png \
osx/Resources/wadfile.icns \
osx/Resources/launcher.nib/classes.nib \
osx/Resources/launcher.nib/info.nib \
osx/Resources/launcher.nib/keyedobjects.nib \
osx/GNUmakefile \
osx/Info.plist.in \
osx/Info.plist.in osx/Info-GNUstep.plist.in \
osx/PkgInfo \
osx/cp-with-libs \
osx/main.m \
osx/AppController.m osx/AppController.h \

View file

@ -1,4 +1,9 @@
# Makefile for building the OS X launcher program and DMG package.
# It is also possible to build and run the launcher under Unix
# systems using GNUstep, although this is only here for development
# and debugging purposes.
include ../config.make
STAGING_DIR=staging
@ -20,17 +25,37 @@ endif
# Staging dir build for package:
APP_DIR=$(STAGING_DIR)/$(PACKAGE_NAME).app
APP_BIN_DIR=$(APP_DIR)/Contents/MacOS/
# OS X and GNUstep apps have a slightly different internal structure:
# OS X apps have their files within a containing "Contents" directory
# that does not exist in GNUstep apps. Similarly, the binaries are
# installed at the top level, rather than in a "MacOS" directory.
# Finally, we must install a different Info.plist file.
ifdef GNUSTEP_MAKEFILES
APP_TOP_DIR=$(APP_DIR)
APP_BIN_DIR=$(APP_DIR)
SRC_INFO_PLIST=Info-GNUstep.plist
else
APP_TOP_DIR=$(APP_DIR)/Contents
APP_BIN_DIR=$(APP_DIR)/Contents/MacOS
SRC_INFO_PLIST=Info.plist
endif
$(STAGING_DIR): launcher $(TOPLEVEL_DOCS)
rm -rf $(STAGING_DIR)
mkdir $(STAGING_DIR)
cp -R app-skeleton "$(APP_DIR)"
mkdir "$(APP_BIN_DIR)"
cp Info.plist "$(APP_DIR)/Contents/"
cp $(TOPLEVEL_DOCS) "$(STAGING_DIR)"
cp launcher "$(APP_BIN_DIR)/"
mkdir -p "$(APP_TOP_DIR)"
cp -R Resources "$(APP_TOP_DIR)"
cp PkgInfo "$(APP_TOP_DIR)"
cp $(SRC_INFO_PLIST) "$(APP_TOP_DIR)/Info.plist"
mkdir -p "$(APP_BIN_DIR)"
cp launcher "$(APP_BIN_DIR)"
$(STRIP) "$(APP_BIN_DIR)/launcher"
./cp-with-libs $(TOPLEVEL)/src/$(PACKAGE_TARNAME) "$(APP_BIN_DIR)"
@ -38,8 +63,6 @@ $(STAGING_DIR): launcher $(TOPLEVEL_DOCS)
./cp-with-libs $(TOPLEVEL)/setup/chocolate-setup "$(APP_BIN_DIR)"
$(STRIP) "$(APP_BIN_DIR)/chocolate-setup"
cp $(TOPLEVEL_DOCS) "$(STAGING_DIR)"
find $(STAGING_DIR) -name .svn -delete -exec rm -rf {} \; || true
clean : launcher_clean

View file

@ -0,0 +1,31 @@
{
ApplicationDescription = "@PACKAGE_NAME@";
ApplicationIcon = app.png;
ApplicationName = "@PACKAGE_NAME@";
ApplicationRelease = @PACKAGE_VERSION@;
Copyright = "Copyright (C) 2009-2010";
CopyrightDescription = "GNU General Public License, version 2";
FullVersionID = @PACKAGE_VERSION@;
GSMainMarkupFile = "";
NSExecutable = "launcher";
NSIcon = app.png;
NSMainNibFile = launcher.nib;
NSPrincipalClass = NSApplication;
NSRole = Application;
NSTypes = (
{
NSHumanReadableName = "Doom WAD file";
NSUnixExtensions = ( wad );
NSRole = Viewer;
NSMimeTypes = (
"application/x-doom"
);
},
{
NSHumanReadableName = "Dehacked patch";
NSUnixExtensions = ( deh );
NSRole = Viewer;
NSIcon = "wadfile.png";
}
);
}

View file

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

BIN
pkg/osx/Resources/app.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.5 KiB