cvs commit: ports/Tools/portbuild/scripts portbuild

Kris Kennaway kris at FreeBSD.org
Sat Feb 11 02:01:38 PST 2006


kris        2006-02-11 10:01:37 UTC

  FreeBSD ports repository

  Modified files:
    Tools/portbuild/scripts portbuild 
  Log:
  Support for building ports in a jail instead of a chroot.  If use_jail=1
  in portbuild.conf (or per-machine .conf), then construct a 127.0.0.0/8
  IP address based on the build directory ID (i.e. unique for each
  build instance).  This is bound to the lo0 interface for the duration
  of the 'phase 2' build.
  
  We cannot build 'phase 1' in a jail since 'make fetch' doesn't always
  work through a proxy (e.g. squid sometimes mangles files fetched through
  FTP, I think by performing CR/LF translation in FTP ASCII mode).
  
  Pass in the HTTP_PROXY variable to the jail, if set.  This allows FTP/HTTP
  access from within the jail if the proxy is suitably configured (some ports
  legitimately need to fetch additional files during the build, e.g. if they
  have a BUILD_DEPENDS=...:configure target that needs to fetch additional
  distfiles).
  
  Not all ports can be built in jails (most notably the linux_base ports
  since they want to mount/umount linprocfs), so we will need to come up
  with a way to deal with this.
  
  Some ports require SYSV IPC, so security.jail.sysvipc_allowed=1 might be
  required.  Some other ports attempt to perform DNS lookups, ping, or
  outbound TCP connections during the build.
  
  When it works, this provides better compartmentalization of package builds,
  e.g. easier termination of builds without the possibility of daemonized
  processes staying active; no possibility of accidental interference
  between jails, etc.  It also allows for admin monitoring using jls(1).
  
  Revision  Changes    Path
  1.51      +14 -9     ports/Tools/portbuild/scripts/portbuild


More information about the cvs-all mailing list