summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
authorManuel M T Chakravarty <chak@cse.unsw.edu.au>2008-02-05 03:00:47 +0000
committerManuel M T Chakravarty <chak@cse.unsw.edu.au>2008-02-05 03:00:47 +0000
commitc72f2cb1f7eb299f9289b7a33233174d470cfa0f (patch)
treedf01296c1d6e760366bc6f523ff77c7958f7ebad /Makefile
parentc222ce6d2dcde7dcef36d95fc225fd65d56bdb63 (diff)
downloadhaskell-c72f2cb1f7eb299f9289b7a33233174d470cfa0f.tar.gz
xcode build target for fixed /Library/Frameworks inst
- Also moving all MacOS-specific Makefile components into distrib/MacOS/Makefile
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile62
1 files changed, 29 insertions, 33 deletions
diff --git a/Makefile b/Makefile
index 527707148a..b89257fe38 100644
--- a/Makefile
+++ b/Makefile
@@ -37,6 +37,14 @@
# binary-dist
# Builds a binary distribution
#
+# framework-pkg [MacOS only]
+# Builds /Library/Frameworks/GHC.framework wrapped into a Mac
+# installer package
+#
+# framework-binary-dist [MacOS only]
+# Builds GHC.framework encapsulating a binary distribution
+# (to give a relocatable framework)
+#
# hc-file-bundle
# Builds an HC-file bundle, for bootstrapping
#
@@ -227,7 +235,7 @@ install-docs ::
# -----------------------------------------------------------------------------
# Making a binary distribution
#
-# `dist' `binary-dist' `binary-dist-macos'
+# `dist' `binary-dist'
# Create a distribution tar file for this program. The tar file
# should be set up so that the file names in the tar file start with
# a subdirectory name which is the name of the package it is a
@@ -244,9 +252,7 @@ install-docs ::
# that are in the distribution, to make sure they are up to date in
# the distribution. See Making Releases.
#
-# binary-dist is a GHC addition for binary distributions and
-# binary-dist-macos is the Mac OS X-specific variant creating an
-# installer package for GHC.framework.
+# binary-dist is a GHC addition for binary distributions
#
binary-dist::
@@ -301,7 +307,7 @@ ifeq "$(darwin_TARGET_OS)" "1"
BIN_DIST_TOP+=mk/fix_install_names.sh
endif
-.PHONY: binary-dist-pre% binary-dist binary-dist-macos
+.PHONY: binary-dist-pre% binary-dist
binary-dist:: binary-dist-pre
@@ -419,36 +425,26 @@ publish-binary-dist ::
binary-dist::
@echo "Mechanical and super-natty! Inspect the result and *if* happy; freeze, sell and get some sleep!"
+# -----------------------------------------------------------------------------
+# Building MacOS installer packages
+#
+# 'framework-pkg'
+# Create an installer package for /Library/Frameworks/GHC.framework
+#
+# 'framework-binary-dist'
+# Create an installer package for GHC.framework encapsulating a
+# binary-dist to make it relocatable
+# FIXME: This is only partially implemented so far
+
ifeq "$(darwin_TARGET_OS)" "1"
-# Wrap a binary dist as a MacOS framework and put it into an installer package.
-
-# The ProjectVersionInt is GHC's idea of an API version and hence determines
-# the framework version.
-FRAMEWORK_VERSION = $(ProjectVersionInt)
-
-# Xcode requires CURRENT_PROJECT_VERSION to be an int or float. We use this
-# only as the build version (aka CFBundleVersion).
-CURRENT_PROJECT_VERSION = $(ProjectVersionInt).$(ProjectPatchLevel)
-
-# The user-visible CFBundleShortVersionString is set to the standard GHC
-# version number.
-SHORT_VERSION_STRING = $(ProjectVersion)
-
-# Instead of making 'binary-dist' a Makefile dependency, we let xcodebuild call
-# 'make binary-dist'. This has the advantage that xcode knows the framework
-# path into which the distribution should be installed and can instruct
-# binary-dist to put it into the right place without copying the whole tree yet
-# another time.
-#
-binary-dist-macos:
- (cd distrib/MacOS; \
- xcodebuild CURRENT_PROJECT_VERSION=$(CURRENT_PROJECT_VERSION)\
- SHORT_VERSION_STRING=$(SHORT_VERSION_STRING)\
- FRAMEWORK_VERSION=$(FRAMEWORK_VERSION)\
- CURRENT_LIBRARY_VERSION=$(FRAMEWORK_VERSION))
- (cd distrib/MacOS; \
- !!!Call the packager!!! )
+.PHONY: framework-pkg, framework-binary-dist
+
+framework-pkg:
+ $(MAKE) -C distrib/MacOS framework-pkg
+
+framework-binary-dist:
+ $(MAKE) -C distrib/MacOS framework-binary-dist
endif