]> git.sur5r.net Git - bacula/bacula/commitdiff
Don't download and build fakeroot as part of make -C platforms/osx
authorLorenz Schori <lo@znerol.ch>
Fri, 16 Oct 2009 14:29:00 +0000 (16:29 +0200)
committerKern Sibbald <kern@sibbald.com>
Fri, 16 Oct 2009 16:02:21 +0000 (18:02 +0200)
Because debian's ftp only hosts the source tarballs of packages currently included in one of their releases,
there is no way to point to a recent version of fakeroot permanently. Therefore the build process for OSX
now requires users to download, compile and install fakeroot manually before building the bacula OSX package.

bacula/platforms/osx/Makefile.in
bacula/platforms/osx/README

index 1ef938b20f78bdb404dbc81135052f3242df4276..3c7256f2af3917066d2a4847b5ae81fa8d34fec3 100644 (file)
 BACULA_VERSION:=@VERSION@
 BACULA_DL_URL:=http://downloads.sourceforge.net/project/bacula/bacula/${BACULA_VERSION}/bacula-${BACULA_VERSION}.tar.gz
 
-# fakeroot version and download site
-FAKEROOT_VERSION:=1.13
-FAKEROOT_DL_URL:=http://ftp.de.debian.org/debian/pool/main/f/fakeroot/fakeroot_${FAKEROOT_VERSION}.tar.gz
-
 # Build universal binary. Comment out when building versions of bacula < 3.0.0
 ARCHFLAGS:=-arch i386 -arch ppc
 MACOSX_SDK_SYSROOT:=/Developer/SDKs/MacOSX10.4u.sdk
@@ -26,6 +22,7 @@ PM:=/Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS/PackageMak
 MAKE:=/usr/bin/make
 CURL:=/usr/bin/curl
 TAR:=/usr/bin/tar
+FAKEROOT:=/usr/local/bin/fakeroot
 
 ########### you should not have to edit anything beyond this line ###########
 
@@ -33,7 +30,6 @@ TAR:=/usr/bin/tar
 DL_DIR:=dl
 BUILD_DIR:=build
 PRODUCTS_DIR:=products
-TOOLS_DIR:=tools
 
 WORKING_DIR:=${BUILD_DIR}/${BACULA_VERSION}
 BACULA_TAR:=${DL_DIR}/bacula-${BACULA_VERSION}.tar.gz
@@ -60,11 +56,6 @@ PACKAGE_DMG:=${PRODUCTS_DIR}/${PACKAGE_TITLE}.dmg
 PACKAGE_RESOURCES:=Description.plist ReadMe.html postflight preupgrade
 PACKAGE_XRESOURCES:=postflight preupgrade
 
-FAKEROOT_TAR:=${DL_DIR}/fakeroot-${FAKEROOT_VERSION}.tar.gz
-FAKEROOT_SOURCE:=${TOOLS_DIR}/fakeroot-${FAKEROOT_VERSION}
-FAKEROOT_DESTDIR:=${FAKEROOT_SOURCE}/destdir
-FAKEROOT:=${FAKEROOT_DESTDIR}/bin/fakeroot
-
 # Flags for the toolchain
 CONFIGFLAGS:=--enable-client-only --prefix=${BACULA_PREFIX} \
     --with-dir-password=@DIR_PW@ --with-fd-password=@FD_PW@ \
@@ -86,7 +77,7 @@ INFILE_SUBST=\
 dmg: pkg
        hdiutil create -srcfolder "${PACKAGE_DIR}" "${PACKAGE_DMG}"
 
-pkg: ${BACULA_DESTDIR} ${WORKING_DIR}/resources ${FAKEROOT_DESTDIR}
+pkg: ${BACULA_DESTDIR} ${WORKING_DIR}/resources
        mkdir -p "${PACKAGE_DIR}"
 
        sed ${INFILE_SUBST} \
@@ -138,22 +129,9 @@ ${BACULA_TAR}:
        mkdir -p "${DL_DIR}"
        ${CURL} -L -o "${BACULA_TAR}" "${BACULA_DL_URL}"
 
-${FAKEROOT_DESTDIR}: ${FAKEROOT_SOURCE}
-       (cd ${FAKEROOT_SOURCE} && ./configure --prefix=${CURDIR}/${FAKEROOT_DESTDIR})
-       ${MAKE} -C ${FAKEROOT_SOURCE}
-       ${MAKE} -C ${FAKEROOT_SOURCE} install
-
-${FAKEROOT_SOURCE}: ${FAKEROOT_TAR}
-       mkdir -p "${TOOLS_DIR}"
-       ${TAR} -xzf "${FAKEROOT_TAR}" -C "${TOOLS_DIR}"
-
-${FAKEROOT_TAR}:
-       mkdir -p "${DL_DIR}"
-       ${CURL} -L -o "${FAKEROOT_TAR}" "${FAKEROOT_DL_URL}"
-
 .PHONY: distclean
 distclean: clean
-       rm -rf "${DL_DIR}" "${PRODUCTS_DIR}" "${TOOLS_DIR}"
+       rm -rf "${DL_DIR}" "${PRODUCTS_DIR}"
 
 .PHONY: clean
 clean:
index a5ffaafa435fde73153d257a59fd2f02cb0e53e0..6b2a33c173559aca605d2050f83955e09f0086bc 100644 (file)
@@ -13,6 +13,8 @@ installation and file permissions are checked and corrected on upgrades.
 Requirements:
 * Mac OS X 10.4 or later
 * Mac OS X developer tools installed
+* fakeroot >= 1.13 (http://ftp.debian.org/debian/pool/main/f/fakeroot/)
+  The makefile expects the compiled binary at /usr/local/bin/fakeroot.
 
 Example (compile and create package from within bacula source tree):
 $ ./configure --enable-client-only
@@ -60,7 +62,7 @@ Additional notes on the build-script:
   * In order to build Mac OS X installer packages in a repeatable manner with
     the correct owner/group and permissions, PackageMakers's cheap and broken
     mechanism of applying recommended permissions is not used. Instead
-    Debian's fakeroot tool gets built and used during the packaging process to
-    ensure that the ownership of the files in the installer's Archive.pax.gz
-    is set to root and that permissions are kept exactly like "make install"
-    set them before.
+    Debian's fakeroot tool is used during package building phase to ensure
+    that the ownership of the files in the installer's Archive.pax.gz is set
+    to root and that permissions are kept exactly like "make install" set them
+    before.