Commit graph

294 commits

Author SHA1 Message Date
joerg
7a696b5fe4 For developer mode, warn about packages without destdir support. 2009-05-23 23:48:44 +00:00
wiz
5721e5be04 Fix previous:
Actually check what you want to check -- both for "yes" and "no", not
only for "no".
2009-05-19 09:33:53 +00:00
joerg
bac1d48f72 Sanity check that USE_DESTDIR is either yes or no after downgrading
USE_DESTDIR=full. This makes setting USE_DESTDIR=full on the command
line an explicit error as side effect.
2009-05-17 23:44:53 +00:00
joerg
39688c1a79 Make USE_DESTDIR=full the default value and retire the option. 2009-05-09 14:59:08 +00:00
joerg
419c5ad860 Clear USE_LANGUAGES for meta packages. 2009-04-08 23:03:14 +00:00
joerg
28475e7501 Disable CHECK_PERMS by default for meta-packages. 2009-04-08 23:02:03 +00:00
cube
403e256ff6 Merge cube-native-xorg, so that pkgsrc-current can be used with the native
X.Org found in NetBSD-current.

Thanks a lot to all who helped, especially Matthias Scheler who did
repeated tests on Mac OS X and older versions of NetBSD to make sure the
support for those platforms wouldn't be broken (or at least, not fatally,
as I would still expect a few hiccups here and there, because there is
only so much one can test in such limited time).

On the infrastructure side, this branch brings pkgconfig-builtin.mk, in
order to write very easily new builtin.mk files.  It can actually handle
more than just pkgconfig files, but it will provide a version if it finds
such a file.  x11.builtin.mk has also been made more useful and now all
existing (and future!) native-X11-related builtin.mk files should include
it.
2008-10-05 21:36:32 +00:00
tron
ed5b1cca8d X11 is located in "/usr/X11" under Mac OS X Leopard, "/usr/X11R6" is just
a symlink. Use the correct directory because the buildlink framework will
otherwise remove compiler options like "-I/usr/X11/include/pixman-1".
2008-09-16 11:40:10 +00:00
tnn
b41681c446 Simplify the logic that avoids using compat_headers during bootstrap. 2008-06-22 16:25:32 +00:00
joerg
d092c3def3 Make it more explicit that PKG_DESTDIR_SUPPORT and as side effect
META_PACKAGE must be set before including bsd.prefs.mk.
2008-06-16 15:10:48 +00:00
joerg
3ba79d294e Move META_PACKAGE logic from bsd.pkg.mk to bds.prefs.mk, otherwise it
can't define destdir support.
2008-06-12 01:09:01 +00:00
tnn
27e964b1b8 Adjust path for compat_headers. 2008-05-24 03:40:35 +00:00
tnn
83290ab733 Daniel Horecki pointed out on irc that all USE_INET6 references have been
purged from pkgsrc-wip, so remove the support code for that.
2008-05-22 15:48:13 +00:00
tnn
1fdd0b4cdd Avoid pulling in pkgtools/posix_headers when bootstrapping on HP-UX. 2008-04-16 12:28:48 +00:00
tnn
3d06b8fdd5 Kill _OPSYS_NEEDS_XPKGWEDGE. It was only used by two platforms and they
will default to USE_XPKGWEDGE anyway.
2008-02-21 04:23:58 +00:00
tnn
1984db0948 Fix a miss that made the hpux bootstrap erronously pull in posix_headers. 2008-02-07 16:43:18 +00:00
tnn
24ede5a9fa Recognise Solaris/xen as i386 2008-02-06 18:23:47 +00:00
tnn
b748976509 Simplify LOWER_OS_VERSION handling by using the :tl modifier. 2008-01-29 13:04:05 +00:00
tnn
a970f2bc58 Provide a mechanism for enabling use of pkgtools/posix_headers. 2008-01-16 03:16:39 +00:00
joerg
f30bc9ac38 If LOWER_ARCH is x86_64 on Linux, force it for MACHINE_ARCH as well.
On a Core 2 Xeon, it breaks a lot of things otherwise as it ends up as
something like "Intel(R) Core(R)".
2008-01-12 14:40:21 +00:00
rillig
d3624fdf10 Made the .include directives simpler, since the directory of the
including file is always the first in the search path.
2008-01-04 01:46:24 +00:00
rillig
21cf860699 Accept all licenses in DEFAULT_ACCEPTABLE_LICENSES if the user is only
using the += operator, not the simple = operator, in mk.conf. That way
we can mark packages as having open source licenses without disturbing
the users.
2007-10-17 10:37:43 +00:00
tnn
85c3c33db0 The previous commit needs all platforms to be correct about
separating LOWER_OPSYS and LOWER_OPSYS_VERSUFFIX, since numbers are now
removed from LOWER_OPSYS when forming MACHINE_GNU_PLATFORM.
Fix the remaining to platforms: Interix and IRIX.
2007-10-16 11:51:21 +00:00
tnn
ae9f32a8e5 OSF1 and HPUX: Separate the version component from ${LOWER_OPSYS}
into ${LOWER_OPSYS_VERSUFFIX}.
When assigning GNU_MACHINE_PLATFORM, strip numerical characters from
LOWER_OPSYS. (final component is eg. osf5.1 not osf15.1)
2007-10-16 11:34:16 +00:00
joerg
0b4fba23f9 Ignore post-hyphen parts of the Linux kernel version similiar to
DragonFly and FreeBSD. It seems like Linux people love those...
This addresses the first part of PR 37100.
2007-10-13 19:38:53 +00:00
rillig
6ea2bde2b6 I often want to know which directories pkgsrc is using. 2007-10-05 21:03:39 +00:00
abs
4b75da6235 +USE_INET6?=${IPV6_READY} rather than =, so it can be overidden 2007-09-11 18:16:38 +00:00
jlam
07dd3147c6 Convert packages that test and use USE_INET6 to use the options framework
and to support the "inet6" option instead.

Remaining usage of USE_INET6 was solely for the benefit of the scripts
that generate the README.html files.  Replace:

	BUILD_DEFS+=	USE_INET6
with
	BUILD_DEFS+=	IPV6_READY

and teach the README-generation tools to look for that instead.

This nukes USE_INET6 from pkgsrc proper.  We leave a tiny bit of code
to continue to support USE_INET6 for pkgsrc-wip until it has been nuked
from there as well.
2007-09-07 22:12:10 +00:00
jlam
5073c3d95d Add a "system features" framework that will eventually be used to
automatically supply missing "basic" headers and libraries from an
older system, e.g. IRIX 5.x or Interix or AIX, etc.

Example usage:

    USE_FEATURES+=      snprintf glob regex

For now, we just pull in libnbcompat to supply the missing bits.
2007-09-07 21:55:44 +00:00
joerg
e09f68cb6b Remove infrastructure side of Xorg 6.9 support. Begin to simplify
some of the cases of X11_TYPE usage -- it will stay with modular|native,
so don't bother with keeping the separation in the tool list.
2007-08-17 20:27:30 +00:00
joerg
ff4ca43fd6 Move APPENDELF definition after the reassigning of MACHINE_ARCH.
This allows cross-compiling of x86_64 from i386.
2007-08-15 13:25:47 +00:00
rillig
6ff274e50f Replaced the comment at the beginning of the file with a useful one. It
explains which variables can be used in the mk.conf file.

Removed the definition of CUT, since it is no longer used.
2007-08-13 09:03:41 +00:00
rillig
c3cfa6c470 Fixed joerg's failed try to support invoking make(1) as ./make or similar.
It had failed in the devel/ directory, since devel/bmake exists there.
2007-08-13 07:42:10 +00:00
joerg
005620851f Add core of the infrastructure support for cross-compilation.
- USE_CROSS_COMPILATION activates it, CROSS_DESTDIR specifies root of
  the target filesystem
- derive _CROSS_DESTDIR from CROSS_DESTDIR or MAKEOBJDIR
- buildlink3.mk prefixes the files to symlink with _CROSS_DESTDIR
- compiler/gcc.mk knows about the target prefix (e.g. i386--netbsdelf)
- PKG_DBDIR is prefixed with _CROSS_DESTDIR
- package-install and bin-install are not called with su
- install and strip are redirected to the tool version
- links for the target specific ar, as, ld, nm, objdump, ranlib and
  strip are added
- compiler wrapper detect if linking is requested or not
- special command sinks for CPP and CC/CXX add the cross-compile magic:
  - modify include dirs to get the target /usr/include
  - modify linker dirs and runpath to use target /usr/lib at link time,
    but keep correct rpath entries

Supported-by: Google SoC 2007
Basic tests by he@ on Sparc. Review from jlam@.
2007-08-02 18:19:31 +00:00
joerg
29777c8ec5 Begin adding some of the basic, non-intrusive pieces of the
cross-compile support.

- NATIVE_MACHINE_GNU_ARCH, NATIVE_LOWER_ARCH, NATIVE_MACHINE_ARCH,
  NATIVE_MACHINE_PLATFORM and NATIVE_MACHINE_GNU_PLATFORM work
  like the counterpars without NATIVE_ prefix. Expansion of
  NATIVE_LOWER_ARCH and NATIVE_MACHINE_ARCH is enforced early,
  so that MACHINE_ARCH can be overriden in mk.conf to specify the
  target architecture.
- Provide a default of NO for USE_CROSS_COMPILE. This will be the
  main switch to activate cross-compiling and adding it now makes
  it possible to merge more of the patches for specific packages.
- Set --build and --host when cross-compiling, the former using the
  just added variable NATIVE_MACHINE_GNU_PLATFORM.

Supported-by: Google SoC 2007
Looks good: jlam@
2007-08-01 16:14:17 +00:00
joerg
4db0539a2b Define PKGPATH earlier so that mk.conf can use it.
Requested by David Brownlee on tech-pkg.
2007-08-01 12:21:56 +00:00
joerg
2b3b6c11ab Compute OS_VERSION on AIX directly using make substitution instead of
forking a shell and sed.
2007-07-30 14:10:36 +00:00
joerg
a13b98431e Use variable substitution instead of calling external cut to
compute LOWER_OPSYS_VERSUFFIX.
2007-07-30 14:07:07 +00:00
joerg
a7702e998f Allow the code to resolve the make path to deal with a strictly
local path. E.g. running make as ./make now works.
2007-07-29 18:27:05 +00:00
joerg
910d37bad9 Remove explicit include of sys.mk, which has been made redundant by
jlam's include of bsd.own.mk in June 2002.
2007-07-29 13:17:57 +00:00
jlam
33f30156fb * Add new emulator framework in pkgsrc/mk/emulator that handles all
binary-only packages that require binary "emulation" on the native
  operating system.  Please see pkgsrc/mk/emulator/README for more
  details.

* Teach the plist framework to automatically use any existing
  PLIST.${EMUL_PLATFORM} as part of the default PLIST_SRC definition.

* Convert all of the binary-only packages in pkgsrc to use the
  emulator framework.  Most of them have been tested to install and
  deinstall correctly.  This involves the following cleanup actions:

    * Remove use of custom PLIST code and use PLIST.${EMUL_PLATFORM}
      more consistently.

    * Simplify packages by using default INSTALL and DEINSTALL scripts
      instead of custom INSTALL/DEINSTALL code.

    * Remove "SUSE_COMPAT32" and "PKG_OPTIONS.suse" from pkgsrc.
      Packages only need to state exactly which emulations they support,
      and the framework handles any i386-on-x86_64 or sparc-on-sparc64
      uses.

    * Remove "USE_NATIVE_LINUX" from pkgsrc.  The framework will
      automatically detect when the package is installing on Linux.

  Specific changes to packages include:

    * Bump the PKGREVISIONs for all of the suse100* and suse91* packages
      due to changes in the +INSTALL/+DEINSTALL scripts used in all
      of the packages.

    * Remove pkgsrc/emulators/suse_linux, which is unused by any
      packages.

    * cad/lc -- remove custom code to create the distinfo file for
	all supported platforms; just use "emul-fetch" and "emul-distinfo"
	instead.

    * lang/Cg-compiler -- install the shared libraries under ${EMULDIR}
	instead of ${PREFIX}/lib so that compiled programs will find
	the shared libraries.

    * mail/thunderbird-bin-nightly -- update to latest binary
	distributions for supported platforms.

    * multimedia/ns-flash -- update Linux version to 9.0.48 as the
	older version is no longer available for interactive fetch.

    * security/uvscan -- set LD_LIBRARY_PATH explicitly so that
	it's not necessary to install library symlinks into
	${EMULDIR}/usr/local/lib.

    * www/firefox-bin-flash -- update Linux version to 9.0.48 as the
	older version is no longer available for interactive fetch.
2007-07-29 05:18:36 +00:00
joerg
a0378cffcb Kill code to catch Zoularis installations. It is three years old and
anyone still having such an old installation has other issues like nbawk
anyway.
2007-07-20 22:40:56 +00:00
joerg
462c1fc51c Drop trailing components like -RELEASE for FreeBSD like we do for
DragonFly. This fixes the version number of lsof as side effect.
2007-07-17 09:20:18 +00:00
rillig
36fa355d50 Add some more keywords, so that one can grep for "mk.conf" and find the
relevant code that loads the configuration.
2007-05-29 14:48:49 +00:00
rillig
4b4f995744 On Cygwin, OS_VERSION contains special characters, so it needs the :Q
operator. An example version is 1.5.24(0.156/4/2).
2007-05-07 22:16:04 +00:00
joerg
5f35b1a543 Fix last commit to really save forks at mentioned by rillig@:
OPSYS needs to be evaluated in-place, so use :=.
2007-04-17 19:45:35 +00:00
tnn
05620458c7 Save a fork() by not invoking the 'tr' utility.
XXX: the OS_VERSION stuff could use a similar cleanup, replacing
tr A-Z a-z occurences with the make :tl modifier.
2007-04-17 10:48:29 +00:00
tnn
146da1286c Teach pkgsrc about HP-UX. 2007-04-14 14:17:49 +00:00
tnn
b06ac8fff5 Set correct OBJECT_FMT on OSF1. 2007-04-11 19:09:24 +00:00
wiz
3e1a000ebc Remove unused SCRIPTDIR variable. 2007-03-01 18:21:31 +00:00