[Zope-Checkins] SVN:
Zope/branches/philikon-zope32-integration/ start cleaning out the trash;
there is more...
Chris McDonough
chrism at plope.com
Sun Oct 30 21:11:08 EST 2005
Will there be a way to keep your srcdir "pristine" by running
"../path/to/configure; make; make install" in an empty directory? This
was a commonly requested feature and lots of people use it, which is why
build-base and friends were in there.
On Sun, 2005-10-30 at 16:01 -0500, Fred L. Drake, Jr. wrote:
> Log message for revision 39755:
> start cleaning out the trash; there is more...
> (the Zope 2 makefile does way too much...)
>
>
> Changed:
> U Zope/branches/philikon-zope32-integration/configure
> U Zope/branches/philikon-zope32-integration/inst/Makefile.in
> U Zope/branches/philikon-zope32-integration/inst/configure.py
>
> -=-
> Modified: Zope/branches/philikon-zope32-integration/configure
> ===================================================================
> --- Zope/branches/philikon-zope32-integration/configure 2005-10-30 20:41:09 UTC (rev 39754)
> +++ Zope/branches/philikon-zope32-integration/configure 2005-10-30 21:01:55 UTC (rev 39755)
> @@ -38,8 +38,7 @@
> {
> echo
> echo "configure [--help] [--quiet] [--with-python=path] [--prefix=path] "
> - echo " [--build-base=path] [--ignore-largefile] [--ignore-zlib]"
> - echo " [--optimize]"
> + echo " [--ignore-largefile] [--ignore-zlib] [--optimize]"
> echo
> echo " Creates a Makefile suitable for building and installing Zope"
> echo
> @@ -48,7 +47,6 @@
> echo " --quiet suppress nonessential output"
> echo " --with-python specify a path to a Python interpreter to use"
> echo " --prefix specify an installation path for binary data"
> - echo " --build-base specify a temporary path for build files"
> echo " --ignore-largefile ignore large file support warnings"
> echo " --ignore-expat ignore warnings about expat/pyexpat"
> echo " --ignore-zlib ignore warnings about zlib"
>
> Modified: Zope/branches/philikon-zope32-integration/inst/Makefile.in
> ===================================================================
> --- Zope/branches/philikon-zope32-integration/inst/Makefile.in 2005-10-30 20:41:09 UTC (rev 39754)
> +++ Zope/branches/philikon-zope32-integration/inst/Makefile.in 2005-10-30 21:01:55 UTC (rev 39755)
> @@ -10,17 +10,14 @@
> PACKAGE_NAME=${NAME}-${MAJOR_VERSION}.${MINOR_VERSION}-${RELEASE_TAG}
>
> PYTHON="<<PYTHON>>"
> +ZPKG=zpkg
> TMPDIR=/tmp
> PREFIX=<<PREFIX>>
> BASE_DIR=<<BASE_DIR>>
> -BUILD_BASE=<<BUILD_BASE>>
> DISTUTILS_OPTS=<<DISTUTILS_OPTS>>
> INSTALL_FLAGS=<<INSTALL_FLAGS>>
> TESTOPTS=-v
> -BUILD_FLAGS=--build-base="${BUILD_BASE}" \
> - --build-lib="${BUILD_BASE}/build-lib" \
> - --build-scripts="${BUILD_BASE}/build-scripts"\
> - --build-temp="${BUILD_BASE}/build-temp"
> +BUILD_FLAGS=-i
>
> RM=rm -f
> RMRF=rm -rf
> @@ -32,7 +29,7 @@
> TAR=tar
> MKDIR=mkdir -p
>
> -.PHONY : clean install instance untestinst testinst build unbuild
> +.PHONY : clean install instance untestinst testinst build
> .PHONY : default
>
> # default: The default step (invoked when make is called without a target)
> @@ -42,36 +39,22 @@
> @echo to run a Zope instance directly from the build directory\).
> @echo
>
> -# build: Do whatever 'setup.py build' implies
> +# build:
> build:
> ${PYTHON} "${BASE_DIR}/setup.py" \
> - ${DISTUTILS_OPTS} build ${BUILD_FLAGS}
> + ${DISTUTILS_OPTS} build_ext ${BUILD_FLAGS}
>
> -# unbuild: Remove the build directory (undo the make build step)
> -unbuild:
> - ${RMRF} ${BUILD_BASE}
> -
> # install: Install a software home.
> -install: build version_txt
> - ${PYTHON} "${BASE_DIR}/setup.py" ${DISTUTILS_OPTS} install \
> - --home="${PREFIX}" ${BUILD_FLAGS} ${INSTALL_FLAGS}
> +install: version_txt
> + ${PYTHON} "${BASE_DIR}/setup.py" ${DISTUTILS_OPTS} \
> + build_ext ${BUILD_FLAGS} \
> + install --skip-build --home="${PREFIX}" ${INSTALL_FLAGS}
> [ -f ${PREFIX}/bin/python ] || ${LN} ${PYTHON} ${PREFIX}/bin/python
> @echo
> @echo Zope binaries installed successfully.
> @echo Now run \'${PREFIX}/bin/mkzopeinstance.py\'
>
> # inplace: Install a software home into to the source directory.
> -#
> -# Note: We used to run 'build_ext -i' for 'inplace', but that was
> -# suboptimal because it had a tendency to try to rebuild all of the
> -# (possibly already-built) extensions that might be built during a
> -# previous 'make' step. built_ext doesn't understand '--build-base'
> -# and friends so we can't stop it from doing this easily. So instead,
> -# we rely on the stock install step and name the prefix as the current
> -# directory. This is a little less efficient than just building the
> -# extensions because it also compiles bytecode, but it's more intuitive and
> -# less expensive in the common case than letting distutils
> -# potentially rebuild the binaries when we've done that already.
> inplace: PREFIX=${BASE_DIR}
> inplace: install
>
> @@ -101,7 +84,7 @@
>
> # clean: Delete the build files and any binaries/bytecode files in
> # the source directory for good measure.
> -clean: unbuild
> +clean:
> ${FIND} "${BASE_DIR}" \
> -name '*.py[co]' -o -name '*.so' -o -name '*.o' | ${XARGS} ${RM}
>
> @@ -110,24 +93,10 @@
> printf "Zope ${MAJOR_VERSION}.${MINOR_VERSION}-${RELEASE_TAG}" >\
> "${BASE_DIR}/lib/python/version.txt"
>
> -# sdist: Create a source distribution file (implies clobber).
> -#
> -sdist: clobber sdist_tgz
> +# Building a source distribution requires that zpkg be available:
> +sdist:
> + ${ZPKG} -C ${BASE_DIR}/releases/Zope2.cfg
>
> -# sdist_tgz: Create a tgz archive file as a source distribution.
> -#
> -sdist_tgz: version_txt
> - ${MKDIR} ${TMPDIR}
> - ${CD} ${TMPDIR} && ${LN} ${BASE_DIR} ${PACKAGE_NAME} && \
> - ${TAR} czfh ${BASE_DIR}/${PACKAGE_NAME}.tgz \
> - --exclude=${PACKAGE_NAME}.tgz\
> - --exclude=.svn\
> - --exclude=makefile \
> - --exclude=build-base \
> - --exclude=*~ \
> - --exclude=.#* ${PACKAGE_NAME}
> - ${RMRF} ${TMPDIR}/${PACKAGE_NAME}
> -
> # clobber: Make the source tree 'pristine' again.
> clobber: clean uninstance
>
>
> Modified: Zope/branches/philikon-zope32-integration/inst/configure.py
> ===================================================================
> --- Zope/branches/philikon-zope32-integration/inst/configure.py 2005-10-30 20:41:09 UTC (rev 39754)
> +++ Zope/branches/philikon-zope32-integration/inst/configure.py 2005-10-30 21:01:55 UTC (rev 39755)
> @@ -33,7 +33,6 @@
> # below assumes this script is in the BASE_DIR/inst directory
> global PREFIX
> BASE_DIR=os.path.abspath(os.path.dirname(os.path.dirname(sys.argv[0])))
> - BUILD_BASE=os.path.join(os.getcwd(), 'build-base', 'python-%s.%s' % sys.version_info[:2])
> PYTHON=sys.executable
> MAKEFILE=open(os.path.join(BASE_DIR, 'inst', IN_MAKEFILE)).read()
> REQUIRE_LF_ENABLED = 1
> @@ -66,8 +65,6 @@
> INSTALL_FLAGS = '--optimize=1 --no-compile'
> if o == '--no-compile':
> INSTALL_FLAGS = '--no-compile'
> - if o == '--build-base':
> - BUILD_BASE = a
> if o == '--quiet':
> DISTUTILS_OPTS = '-q'
> global QUIET
> @@ -85,7 +82,6 @@
> '<<PYTHON>>':PYTHON,
> '<<PREFIX>>':PREFIX,
> '<<BASE_DIR>>':BASE_DIR,
> - '<<BUILD_BASE>>':BUILD_BASE,
> '<<INSTALL_FLAGS>>':INSTALL_FLAGS,
> '<<ZOPE_MAJOR_VERSION>>':versions.ZOPE_MAJOR_VERSION,
> '<<ZOPE_MINOR_VERSION>>':versions.ZOPE_MINOR_VERSION,
>
> _______________________________________________
> Zope-Checkins maillist - Zope-Checkins at zope.org
> http://mail.zope.org/mailman/listinfo/zope-checkins
>
More information about the Zope-Checkins
mailing list