[tahoe-dev] [tahoe-lafs] #1168: make setup.py more easily patchable by OS packagers

Greg Troxel gdt at ir.bbn.com
Thu Aug 12 00:58:46 UTC 2010


I am not really understanding all the build machinery, which is because
I haven't spent enough time, so sorry if I am seeming dense.

pkgsrc does use --single-version-externally-managed on python
distributions which are eggs, and the install command looks like:

(cd /n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/allmydata-tahoe-1.8.0c1/ && /usr/bin/env PKGSRC_PYTHON_NO_EGG=defined DESTDIR=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.destdir USETOOLS=no PTHREAD_CFLAGS=\ -pthread\  PTHREAD_LDFLAGS=\ -pthread PTHREAD_LIBS= PTHREADBASE=/usr DL_CFLAGS=\ -pthread\  DL_LDFLAGS=\ -pthread DL_LIBS= PYTHON=/usr/pkg/bin/python2.6 CC=cc CFLAGS=-O2\ -I/usr/include\ -I/usr/pkg/include/python2.6 CPPFLAGS=-I/usr/include\ -I/usr/pkg/include/python2.6 CXX=c++ CXXFLAGS=-O2\ -I/usr/include\ -I/usr/pkg/include/python2.6 COMPILER_RPATH_FLAG=-Wl,-R F77=f77 FC=f77 FFLAGS=-O LANG=C LC_COLLATE=C LC_CTYPE=C LC_MESSAGES=C LC_MONETARY=C LC_NUMERIC=C LC_TIME=C LDFLAGS=-L/usr/lib\ -Wl,-R/usr/lib\ -L/usr/pkg/lib/python2.6/config\ -Wl,-R/usr/pkg/lib/python2.6/config\ -Wl,-R/usr/pkg/lib LINKER_RPATH_FLAG=-R PATH=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.wrapper/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.buildlink/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.ccache/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.gcc/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.tools/bin:/usr/pkg/bin:/usr/pkg/java/openjdk7-bin/bin:/usr/amanda/bin:/usr/amanda/sbin:/home/gdt/bin:/home/gdt/bin/i386-NetBSD:/usr/y0/sbin:/usr/y0/bin:/usr/pkg/sbin:/usr/pkg/bin:/usr/X11R7/bin:/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/pkg/bin:/usr/pkg/bin PREFIX=/usr/pkg PKG_SYSCONFDIR=/usr/pkg/etc CXXCPP=cpp HOME=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.home CPP=cpp LINK_ALL_LIBGCC_HACK= LOCALBASE=/usr/pkg NO_WHOLE_ARCHIVE_FLAG=-Wl,--no-whole-archive WHOLE_ARCHIVE_FLAG=-Wl,--whole-archive X11BASE=/usr/pkg X11PREFIX=/usr/pkg PKGMANDIR=man PKGINFODIR=info MAKECONF=/dev/null OBJECT_FMT=ELF USETOOLS=no BSD_INSTALL_PROGRAM=/usr/bin/install\ -c\ -s\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_SCRIPT=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_LIB=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_DATA=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 644 BSD_INSTALL_MAN=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 644 BSD_INSTALL=/usr/bin/install BSD_INSTALL_PROGRAM_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_SCRIPT_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_LIB_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_DATA_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_MAN_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_GAME=/usr/bin/install\ -c\ -s\ -o\ gdt\ -g\ ir\ -m\ 2555 BSD_INSTALL_GAME_DATA=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 664 BSD_INSTALL_GAME_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 775 INSTALL_INFO= MAKEINFO=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.tools/bin/makeinfo PKG_CONFIG= PKG_CONFIG_LIBDIR=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.buildlink/lib/pkgconfig:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.buildlink/share/pkgconfig PKG_CONFIG_LOG=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.pkg-config.log PKG_CONFIG_PATH= WRAPPER_DEBUG=no WRAPPER_UPDATE_CACHE=yes VIEWBASE=/usr/pkg  /usr/pkg/bin/python2.6 setup.py  "install"  -c -O1 --single-version-externally-managed --root=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.destdir)

So that part is ok, but during the build process, triggered like this:

(cd /n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/allmydata-tahoe-1.8.0c1/ && /usr/bin/env USETOOLS=no PTHREAD_CFLAGS=\ -pthread\  PTHREAD_LDFLAGS=\ -pthread PTHREAD_LIBS= PTHREADBASE=/usr DL_CFLAGS=\ -pthread\  DL_LDFLAGS=\ -pthread DL_LIBS= PYTHON=/usr/pkg/bin/python2.6 CC=cc CFLAGS=-O2\ -I/usr/include\ -I/usr/pkg/include/python2.6 CPPFLAGS=-I/usr/include\ -I/usr/pkg/include/python2.6 CXX=c++ CXXFLAGS=-O2\ -I/usr/include\ -I/usr/pkg/include/python2.6 COMPILER_RPATH_FLAG=-Wl,-R F77=f77 FC=f77 FFLAGS=-O LANG=C LC_COLLATE=C LC_CTYPE=C LC_MESSAGES=C LC_MONETARY=C LC_NUMERIC=C LC_TIME=C LDFLAGS=-L/usr/lib\ -Wl,-R/usr/lib\ -L/usr/pkg/lib/python2.6/config\ -Wl,-R/usr/pkg/lib/python2.6/config\ -Wl,-R/usr/pkg/lib LINKER_RPATH_FLAG=-R PATH=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.wrapper/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.buildlink/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.ccache/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.gcc/bin:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.tools/bin:/usr/pkg/bin:/usr/pkg/java/openjdk7-bin/bin:/usr/amanda/bin:/usr/amanda/sbin:/home/gdt/bin:/home/gdt/bin/i386-NetBSD:/usr/y0/sbin:/usr/y0/bin:/usr/pkg/sbin:/usr/pkg/bin:/usr/X11R7/bin:/usr/local/sbin:/usr/local/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/pkg/bin:/usr/pkg/bin PREFIX=/usr/pkg PKG_SYSCONFDIR=/usr/pkg/etc CXXCPP=cpp HOME=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.home CPP=cpp LINK_ALL_LIBGCC_HACK= LOCALBASE=/usr/pkg NO_WHOLE_ARCHIVE_FLAG=-Wl,--no-whole-archive WHOLE_ARCHIVE_FLAG=-Wl,--whole-archive X11BASE=/usr/pkg X11PREFIX=/usr/pkg PKGMANDIR=man PKGINFODIR=info MAKECONF=/dev/null OBJECT_FMT=ELF USETOOLS=no BSD_INSTALL_PROGRAM=/usr/bin/install\ -c\ -s\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_SCRIPT=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_LIB=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_DATA=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 644 BSD_INSTALL_MAN=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 644 BSD_INSTALL=/usr/bin/install BSD_INSTALL_PROGRAM_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_SCRIPT_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_LIB_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_DATA_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_MAN_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 755 BSD_INSTALL_GAME=/usr/bin/install\ -c\ -s\ -o\ gdt\ -g\ ir\ -m\ 2555 BSD_INSTALL_GAME_DATA=/usr/bin/install\ -c\ -o\ gdt\ -g\ ir\ -m\ 664 BSD_INSTALL_GAME_DIR=/usr/bin/install\ -d\ -o\ gdt\ -g\ ir\ -m\ 775 INSTALL_INFO= MAKEINFO=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.tools/bin/makeinfo PKG_CONFIG= PKG_CONFIG_LIBDIR=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.buildlink/lib/pkgconfig:/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.buildlink/share/pkgconfig PKG_CONFIG_LOG=/n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/.pkg-config.log PKG_CONFIG_PATH= WRAPPER_DEBUG=no WRAPPER_UPDATE_CACHE=yes VIEWBASE=/usr/pkg /usr/pkg/bin/python2.6  setup.py  build )

I see things installed from eggs:


Installed /n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/allmydata-tahoe-1.8.0c1/setuptools_darcs-1.2.9-py2.6.egg

Installed /n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/allmydata-tahoe-1.8.0c1/support/lib/python2.6/site-packages/setuptools-0.6c16dev.egg

Installed /n0/gdt/NetBSD-current/pkgsrc/filesystems/tahoe-lafs/work/allmydata-tahoe-1.8.0c1/src
Processing dependencies for allmydata-tahoe==1.8.0c1
Searching for pyasn1==0.0.11a
Best match: pyasn1 0.0.11a
Adding pyasn1 0.0.11a to easy-install.pth file

Before I added the pyasn1 package, it would download pyasn1 at this point.

Are you saying that --single-version-externally-managed should be passed
to build as well?


I should point out that at thins point I think the package is healthy.
It's just that I find it unnerving to have a build download things.

obtahoe: I put the build output on the pubgrid.  It took a really long
time to write, but it finally finished.  Get it at:

URI:CHK:oojo6qyjyp3zvojwnzymbocvsi:2bjc5avwhbkkufjte2o3kccwkbeurzjimhbzx23fpjrph7xwwleq:2:7:101411
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
URL: <http://tahoe-lafs.org/pipermail/tahoe-dev/attachments/20100811/0605ff38/attachment-0001.pgp>


More information about the tahoe-dev mailing list