aboutsummaryrefslogtreecommitdiff
path: root/ports.mk
diff options
context:
space:
mode:
Diffstat (limited to 'ports.mk')
-rw-r--r--ports.mk58
1 files changed, 52 insertions, 6 deletions
diff --git a/ports.mk b/ports.mk
index 0eb94264de..dce5a5d153 100644
--- a/ports.mk
+++ b/ports.mk
@@ -53,8 +53,43 @@ ifdef DYNAMIC_MODULES
endif
# Special target to create a application wrapper for Mac OS X
+
+ifdef USE_DOCKTILEPLUGIN
+
+# The NsDockTilePlugIn needs to be compiled in both 32 and 64 bits irrespective of how ScummVM itself is compiled.
+# Therefore do not use $(CXXFLAGS) and $(LDFLAGS).
+
+ScummVMDockTilePlugin32.o:
+ $(CXX) -mmacosx-version-min=10.6 -arch i386 -O2 -c $(srcdir)/backends/taskbar/macosx/dockplugin/dockplugin.m -o ScummVMDockTilePlugin32.o
+
+ScummVMDockTilePlugin32: ScummVMDockTilePlugin32.o
+ $(CXX) -mmacosx-version-min=10.6 -arch i386 -bundle -framework Foundation -framework AppKit -fobjc-link-runtime ScummVMDockTilePlugin32.o -o ScummVMDockTilePlugin32
+
+ScummVMDockTilePlugin64.o:
+ $(CXX) -mmacosx-version-min=10.6 -arch x86_64 -O2 -c $(srcdir)/backends/taskbar/macosx/dockplugin/dockplugin.m -o ScummVMDockTilePlugin64.o
+
+ScummVMDockTilePlugin64: ScummVMDockTilePlugin64.o
+ $(CXX) -mmacosx-version-min=10.6 -arch x86_64 -bundle -framework Foundation -framework AppKit -fobjc-link-runtime ScummVMDockTilePlugin64.o -o ScummVMDockTilePlugin64
+
+ScummVMDockTilePlugin: ScummVMDockTilePlugin32 ScummVMDockTilePlugin64
+ lipo -create ScummVMDockTilePlugin32 ScummVMDockTilePlugin64 -output ScummVMDockTilePlugin
+
+scummvm.docktileplugin: ScummVMDockTilePlugin
+ mkdir -p scummvm.docktileplugin/Contents
+ cp $(srcdir)/dists/macosx/dockplugin/Info.plist scummvm.docktileplugin/Contents
+ mkdir -p scummvm.docktileplugin/Contents/MacOS
+ cp ScummVMDockTilePlugIn scummvm.docktileplugin/Contents/MacOS/
+ chmod 644 scummvm.docktileplugin/Contents/MacOS/ScummVMDockTilePlugIn
+
+endif
+
bundle_name = ScummVM.app
+
+ifdef USE_DOCKTILEPLUGIN
+bundle: scummvm-static scummvm.docktileplugin
+else
bundle: scummvm-static
+endif
mkdir -p $(bundle_name)/Contents/MacOS
mkdir -p $(bundle_name)/Contents/Resources
echo "APPL????" > $(bundle_name)/Contents/PkgInfo
@@ -62,7 +97,8 @@ bundle: scummvm-static
ifdef USE_SPARKLE
mkdir -p $(bundle_name)/Contents/Frameworks
cp $(srcdir)/dists/macosx/dsa_pub.pem $(bundle_name)/Contents/Resources/
- cp -R $(STATICLIBPATH)/Sparkle.framework $(bundle_name)/Contents/Frameworks/
+ rm -rf $(bundle_name)/Contents/Frameworks/Sparkle.framework
+ cp -R $(SPARKLEPATH)/Sparkle.framework $(bundle_name)/Contents/Frameworks/
endif
cp $(srcdir)/icons/scummvm.icns $(bundle_name)/Contents/Resources/
cp $(DIST_FILES_DOCS) $(bundle_name)/
@@ -75,6 +111,10 @@ endif
cp scummvm-static $(bundle_name)/Contents/MacOS/scummvm
chmod 755 $(bundle_name)/Contents/MacOS/scummvm
$(STRIP) $(bundle_name)/Contents/MacOS/scummvm
+ifdef USE_DOCKTILEPLUGIN
+ mkdir -p $(bundle_name)/Contents/PlugIns
+ cp -r scummvm.docktileplugin $(bundle_name)/Contents/PlugIns/
+endif
iphonebundle: iphone
mkdir -p $(bundle_name)
@@ -290,7 +330,10 @@ OSX_ZLIB ?= $(STATICLIBPATH)/lib/libz.a
endif
ifdef USE_SPARKLE
-OSX_STATIC_LIBS += -framework Sparkle -F$(STATICLIBPATH)
+ifneq ($(SPARKLEPATH),)
+OSX_STATIC_LIBS += -F$(SPARKLEPATH)
+endif
+OSX_STATIC_LIBS += -framework Sparkle -Wl,-rpath,@loader_path/../Frameworks
endif
# Special target to create a static linked binary for Mac OS X.
@@ -363,6 +406,9 @@ osxsnap: bundle
ScummVM-snapshot.dmg
rm -rf ScummVM-snapshot
+publish-appcast:
+ scp dists/macosx/scummvm_appcast.xml www.scummvm.org:/var/www/html/appcasts/macosx/release.xml
+
#
# Windows specific
#
@@ -441,12 +487,12 @@ CUR_BRANCH := $(shell cd $(srcdir); git describe --all |cut -d '-' -f 4-)
ideprojects: devtools/create_project
ifeq ($(VER_DIRTY), -dirty)
- $(error You have uncommitted changes)
-endif
+ $(error You have uncommitted changes)
+endif
ifeq "$(CUR_BRANCH)" "heads/master"
- $(error You cannot do it on master)
+ $(error You cannot do it on master)
else ifeq "$(CUR_BRANCH)" ""
- $(error You must be on a release branch)
+ $(error You must be on a release branch)
endif
@echo Creating Code::Blocks project files...
@cd $(srcdir)/dists/codeblocks && ../../devtools/create_project/create_project ../.. --codeblocks >/dev/null && git add -f engines/plugins_table.h *.workspace *.cbp