From: Lorenz Schori Date: Fri, 16 Oct 2009 14:29:00 +0000 (+0200) Subject: Don't download and build fakeroot as part of make -C platforms/osx X-Git-Tag: Release-7.0.0~2601^2^2 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=007e8c5af5f96b7c7f00f9973508771012ed31f1;p=bacula%2Fbacula Don't download and build fakeroot as part of make -C platforms/osx 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. --- diff --git a/bacula/platforms/osx/Makefile.in b/bacula/platforms/osx/Makefile.in index 1ef938b20f..3c7256f2af 100644 --- a/bacula/platforms/osx/Makefile.in +++ b/bacula/platforms/osx/Makefile.in @@ -12,10 +12,6 @@ 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: diff --git a/bacula/platforms/osx/README b/bacula/platforms/osx/README index a5ffaafa43..6b2a33c173 100644 --- a/bacula/platforms/osx/README +++ b/bacula/platforms/osx/README @@ -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.