From: Brian Candler on 13 Mar 2010 05:42 Are there are any tools for building FreeBSD packages in a chroot cleanroom environment? This is so that I can be sure that all dependencies are properly declared, and so that I can be sure that the built binaries don't accidentally link to libraries which happen to be available on my build system but won't be available on the target system (oh, the joy of autoconf) I found the documentation for pointyhat: http://www.freebsd.org/doc/en/articles/portbuild/article.html but I'd rather not go as far as building a whole pointyhat cluster :-) What I'm thinking of is a utility which will: - create a chroot environment (easy, just untar distribution) - build a chosen port, pulling in dependencies as packages where possible, otherwise building dependencies as packages too - keep the built packages and distfiles locally, to speed up future builds - reset the chroot environment back to its pristine state - if possible run as non-root I use this for Linux/RPM: http://thomas.apestaart.org/projects/mach/ but was wondering if there is something similar for the FreeBSD ports world. My requirement is to be able to build safe binaries on a central box for distribution out to FreeBSD cluster nodes, so they don't have to be compiled separately on each node. Thanks, Brian. _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
From: Kenyon Ralph on 13 Mar 2010 06:25 On 2010-03-13T10:42:40+0000, Brian Candler <B.Candler(a)pobox.com> wrote: > Are there are any tools for building FreeBSD packages in a chroot > cleanroom environment? This is so that I can be sure that all > dependencies are properly declared, and so that I can be sure that > the built binaries don't accidentally link to libraries which happen > to be available on my build system but won't be available on the > target system (oh, the joy of autoconf) Sounds like you want Tinderbox: http://www.freshports.org/search.php?query=tinderbox -- Kenyon Ralph
From: Dirk Meyer on 13 Mar 2010 09:27 Brian Candler schrieb:, > What I'm thinking of is a utility which will: > - create a chroot environment (easy, just untar distribution) > - build a chosen port, pulling in dependencies as packages where possible, > otherwise building dependencies as packages too > - keep the built packages and distfiles locally, to speed up future builds > - reset the chroot environment back to its pristine state This is very similar to the project I have done. You might find it usefull to read the papers: http://www.dinoex.de/schulungen/package-en.html http://www.dinoex.de/schulungen/package2-en.html The current version of the Tool can be fetched: http://people.freebsd.org/~dinoex/batch/README http://people.freebsd.org/~dinoex/batch/pkg_update http://people.freebsd.org/~dinoex/batch/pkg_jail > - if possible run as non-root This is not supported by pkg_update. but you can look into this oiptions for non root builds and installs. http://people.freebsd.org/~dinoex/howto/README > My requirement is to be able to build safe binaries on a central box for > distribution out to FreeBSD cluster nodes, so they don't have to be compiled > separately on each node. Exactly. I use a shared /usr/ports via NFS: you sould consider adding to /etc/make.conf: PACKAGES=${PORTSDIR}/packages/${OSVERSION}-${ARCH}/ USE_PACKAGE_DEPENDS=yes DEPENDS_TARGET=package kind regards Dirk - Dirk Meyer, Im Grund 4, 34317 Habichtswald, Germany - [dirk.meyer(a)dinoex.sub.org],[dirk.meyer(a)guug.de],[dinoex(a)FreeBSD.org] http://people.freebsd.org/~dinoex/errorlogs/ _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
From: Ion-Mihai Tetcu on 13 Mar 2010 10:45 On Sat, 13 Mar 2010 10:42:40 +0000 Brian Candler <B.Candler(a)pobox.com> wrote: > Are there are any tools for building FreeBSD packages in a chroot > cleanroom environment? This is so that I can be sure that all > dependencies are properly declared, and so that I can be sure that > the built binaries don't accidentally link to libraries which happen > to be available on my build system but won't be available on the > target system (oh, the joy of autoconf) > > I found the documentation for pointyhat: > http://www.freebsd.org/doc/en/articles/portbuild/article.html > but I'd rather not go as far as building a whole pointyhat cluster :-) > > What I'm thinking of is a utility which will: > - create a chroot environment (easy, just untar distribution) > - build a chosen port, pulling in dependencies as packages where > possible, otherwise building dependencies as packages too > - keep the built packages and distfiles locally, to speed up future > builds > - reset the chroot environment back to its pristine state > - if possible run as non-root > > I use this for Linux/RPM: http://thomas.apestaart.org/projects/mach/ > but was wondering if there is something similar for the FreeBSD ports > world. > > My requirement is to be able to build safe binaries on a central box > for distribution out to FreeBSD cluster nodes, so they don't have to > be compiled separately on each node. All that you want, and more, you can do with ports-mngmt/tinerbox. -- IOnut - Un^d^dregistered ;) FreeBSD "user" "Intellectual Property" is nowhere near as valuable as "Intellect" FreeBSD committer -> itetcu(a)FreeBSD.org, PGP Key ID 057E9F8B493A297B
From: Brian Candler on 13 Mar 2010 17:10 > All that you want, and more, you can do with ports-mngmt/tinerbox. Thank you - tinderbox seems to be just what I was looking for. Regards, Brian. _______________________________________________ freebsd-ports(a)freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscribe(a)freebsd.org"
|
Pages: 1 Prev: Full Unicode Support for FreeBSD Next: Firefox 3.6 installation problem |