Commit graph

3104 commits

Author SHA1 Message Date
jlam
3f0c4ee09a * Let CC/CXX/CPP/FC always point to the compiler used in the actual
building of software.  For packages that use either buildlink2 or
  buildlink3, this would be the wrapper script in ${BUILDLINK_DIR}.

* Garbage-collect _BLNK_WRAP_SETENV.* as those are not needed after
  the above changes.  Configure and make processes will automatically
  find the right compilers in the PATH.

* PKGLIBTOOL and PKGSHLIBTOOL are no longer needed since LIBTOOL and
  SHLIBTOOL point to the correct libtools regardless of any
  USE_BUILDLINK[23] definitions.
2004-02-08 02:59:14 +00:00
uebayasi
784c8597a4 Introduce EMACS_TYPE to determine which emacs version should be installed,
and emacs lisp packages should be built for.  Users need to set the version
you like in /etc/mk.conf explicitly.

The default is emacs21 (editors/emacs, GNU Emacs 21.x).

This will deprecate EMACS_VERSION_DEFAULT defined in emacs.mk and USE_XEMACS
used in places.
2004-02-07 15:21:52 +00:00
jlam
7c268604ca Symlink the compiler into ${WRKDIR} so that there's a consistent path to
the compiler and that it's behind .tools/bin and .buildlink/bin, regardless
of whether or not we're using gcc3-c or not, or whether it's been installed
yet in the process of satisfying dependencies, etc.
2004-02-07 02:58:10 +00:00
jlam
8637091a4a Don't pass PREPEND_PATH via MAKEFLAGS as that overrides whatever value
that we're trying to compute for PREPEND_PATH.  Instead, pass it through
the environment.
2004-02-07 02:56:14 +00:00
jlam
eae918c163 I missed changing a defined(_NEED_GCC3) into a yes/no check. 2004-02-06 20:15:49 +00:00
jlam
3737a66b9d Whitespace nit. 2004-02-06 19:16:37 +00:00
jlam
7699290f10 If we're passing through MAKEFLAGS variables whose values may contain
spaces, use the :Q modifier instead of double-quoting the value.  This
avoids breakage when executing the just-in-time su targets.
2004-02-06 19:04:24 +00:00
jlam
c49973f61a If we're passing through MAKEFLAGS variables whose values may contain
spaces, use the :Q modifier instead of double-quoting the value.  This
fixes breakage when executing the just-in-time su targetes.
2004-02-06 18:45:02 +00:00
jlam
e54ce0c467 Remove a debugging statement. 2004-02-06 04:38:10 +00:00
jlam
d72bb0e381 Hiding the PATH from certain phases of the build only accidentally worked
due to a type on gcc.mk that causes the ${_GCC_PREFIX}/bin to always be
prepended to the PATH.  The problem that was hiding was "make" resolving
to ${TOOLS_DIR}/bin/make if the package used GNU make, which broke
building since the package Makefile is a BSD Makefile and we passed
PATH to some phases of the build.  Fix this by expanding MAKE to the
full path to ${MAKE} in bsd.prefs.mk.  We also garbage collect the now
useless checks for PHASES_AFTER_BUILDLINK that cluttered the PREPEND_PATH
code.
2004-02-06 04:37:02 +00:00
jlam
fd4c71ddde Allow an empty USE_LANGUAGES setting to not break in show-shlib-type.
If we're not compiling anything, we're likely not installing any shared
libraries.
2004-02-06 03:10:29 +00:00
jlam
bed8d4d73e We only prepend a directory to the PATH if we haven't already done so
(by checking PREPEND_PATH) and only for those phases of the build that
care about the PATH (buildlink or later).  We also pass the PATH to
those same phases of the build so that executing ${CC} will work correctly
from custom {pre,do,post}-* targets that occur at buildlink time or
later.
2004-02-06 03:04:50 +00:00
grant
2b04192e07 extract OPSYS and OS_VERSION from pkgsrc and use them in the report
email subject.
2004-02-05 23:57:54 +00:00
grant
e3a6dc7dd8 show build start time in localtime, not seconds-since-epoch :) 2004-02-05 23:53:16 +00:00
jlam
352e29f3c1 Get the version string out of the MIPSpro compiler in the right way. 2004-02-05 22:05:42 +00:00
jlam
4cd560ed49 Note that the variables (USE_LANGUAGES, GCC_REQD, PKGSRC_COMPILER) should
be defined in or before the first inclusion of bsd.prefs.mk.
2004-02-05 21:26:16 +00:00
hubertf
0fa1a52030 Back out bikeshed material added in rev. 1.1371 2004-02-05 17:20:46 +00:00
sketch
8ebd17f97c Remove a local change which crept in with the last update. 2004-02-05 10:59:40 +00:00
jlam
991c843d4f Allow this to work with ccache by passing the full PATH through libtool. 2004-02-05 09:57:53 +00:00
jlam
9a9cc4b6d2 Touch up the grammar a bit in the last commit. 2004-02-05 08:50:38 +00:00
jlam
1f190fe0f5 Use the new work log format used by buildlink3. Lines beginning with
"[*]" are the untransformed command lines, and the ones beginning with
"<.>" are the ones that are actually executed.
2004-02-05 08:27:18 +00:00
seb
9429c9246f Mention that some buildlink3 variables are not defined at all times.
Approved by jlam@.
2004-02-05 07:49:48 +00:00
jlam
5bd1a3cdb9 Pass the PATH when executing ${CC} so that the compiler may be found when
CC is something like ccache or distcc that relies on finding the true
compiler in the PATH.
2004-02-05 07:37:48 +00:00
jlam
31c745b77a Document PREFER_PKGSRC and default to "no". 2004-02-05 07:19:34 +00:00
jlam
317cc72791 Make PREFER_PKGSRC just yes/no or a list of packages. This makes it
simpler to understand.
2004-02-05 07:17:14 +00:00
jlam
e7133cac25 Rename BUILDLINK_PREFER_PKGSRC to PREFER_PKGSRC so that we can use its
value outside of buildlink-related files.
2004-02-05 07:06:15 +00:00
jlam
07a9d8dfb2 Support a new global variable:
BUILDLINK_PREFER_PKGSRC
	This variable determines whether or not to prefer the pkgsrc
	versions of software that is also present in the base system.

	This variable is multi-state:
		defined, or "yes"	always prefer the pkgsrc versions
		not defined, or "no"	only use the pkgsrc versions if
					needed by dependency requirements

	This can also take a list of packages for which to prefer the
	pkgsrc-installed software.  The package names may be found by
	consulting the value added to BUILDLINK_PACKAGES in the
	buildlink[23].mk files for that package.
2004-02-05 06:58:02 +00:00
hubertf
f3d1d8cfb0 When a pkg is already found install, tell the user to 'make deinstall'
instead of running pkg_delete to be consistent with the other commands
(which all use 'make ...').
2004-02-05 05:05:54 +00:00
jlam
5add53c2b4 GCC_REQD should be appended to, not set. 2004-02-05 04:12:28 +00:00
jlam
fee0a809ce Simpilfy the test for whether we're inside bsd.prefs.mk. 2004-02-05 03:39:17 +00:00
jlam
629be8a499 Include bsd.compiler.mk inside both bsd.pkg.mk and bsd.prefs.mk and define
a stack-like mechanism in bsd.prefs.mk to detect when a we're inside
bsd.prefs.mk.
2004-02-05 03:37:47 +00:00
jlam
c2d20bedad Allow bsd.compiler.mk to be included by both bsd.prefs.mk and bsd.pkg.mk.
Any additions to DEPENDS/BUILD_DEPENDS or inclusions of buildlink[23].mk
files are deferred till bsd.compiler.mk is included by bsd.pkg.mk.  We
allow bsd.compiler.mk to be included by bsd.prefs.mk solely for the purpose
of setting CC_VERSION properly for use by package Makefiles.

There is the surprising behaviour that CC_VERSION won't necessarily have
the correct value at all times until after "make extract" has been
completed (dependencies are installed before "make extract"), so package
Makefile writers should keep that in mind.  Just to note that this is
_existing_ behaviour that's preserved by these changes.
2004-02-05 03:35:20 +00:00
jlam
1b5d9d2251 Don't compute the CC_VERSION unless ${CC} exists. 2004-02-05 01:57:38 +00:00
jlam
e14bd051b8 _CC is really meant to be evaluated from the value of CC _as found_ in
that particular location, so set it using :=
2004-02-05 01:50:55 +00:00
jlam
998d6a0b9c _GCC_PREFIX and _GCC_SUBPREFIX are expected to end in "/" if we're using
the pkgsrc gcc.
2004-02-05 01:42:05 +00:00
jlam
4f87d407ea Reset the values of _GCC_PREFIX and _GCC_SUBPREFIX from the value of
_GCC_ARCHDIR, since _GCC_ARCHDIR is something that GCC actually tells us
and can be relied upon to accurately give the installed location of GCC.
2004-02-05 01:28:20 +00:00
jlam
adb77485ab Fix an error that crept in between revisions 1.25 and 1.26 where some /'s
were inadvertantly added when replacing the awk script with a sed script.
2004-02-05 00:00:05 +00:00
jlam
fa2f433053 Missing a " 2004-02-04 23:25:13 +00:00
jlam
2727a4aeb9 case branches are separated by ;; 2004-02-04 23:24:36 +00:00
jlam
3e017ffa31 Try to avoid "/" as the _GCC_SUBPREFIX. 2004-02-04 23:10:19 +00:00
jlam
1769209623 Make it more apparent where certain "not_found" values are being set for
debugging purposes.
2004-02-04 22:33:18 +00:00
jlam
154fd6b9b3 Make it more apparent where certain "not_found" values are set for
debugging purposes.
2004-02-04 22:31:54 +00:00
jlam
eedd099369 Fix harmless for-loop-break bug. 2004-02-04 22:27:41 +00:00
jlam
09eca416bc Instead of tedious validating every platform for full caching compliance,
just assume they do unless they're known _not_ to work.  So far, only
Darwin-5.* suffers from this problem, apparently because they use some
bizarre version of zsh for /bin/sh.
2004-02-04 01:13:04 +00:00
jlam
79cd30027c Avoid a non-zero exit value in a != variable definition. 2004-02-04 00:32:16 +00:00
jlam
095af71baa Define _GCC_PKG unconditionally since its value is determined by another
global variable, and so that we can reuse it in other places in gcc.mk.
2004-02-04 00:27:24 +00:00
jlam
dbbec50a86 Try to be smarter about detecting whether a cc in the PATH is actually
GCC.  If it's found under ${LOCALBASE}, then assume that it came from a
package and proactively require at least that version of GCC so that the
correct package dependencies are added.
2004-02-04 00:11:07 +00:00
jlam
55f66ddd70 Reorder checks when setting _GCC_SUBPREFIX so that we always search for
the installed package first if _USE_PKGSRC_GCC is "yes".
2004-02-03 22:35:05 +00:00
jlam
69e47a8c52 Remove not_found checks now that we pre-filter them out when setting
LDFLAGS.
2004-02-03 22:32:22 +00:00
jlam
5bc1349574 Do previous in a different way to avoid make errors. 2004-02-03 22:31:33 +00:00
jlam
49df0ac7ed Don't add to LDFLAGS if the directories are "not_found". 2004-02-03 21:56:40 +00:00
jlam
7c469d9583 ":H", not ":T", is the correct make variable modifier to get everything
except the final component of a path.
2004-02-03 21:51:45 +00:00
jlam
9a4609c2b9 Reorder sections a bit so that related sections are together. 2004-02-03 21:48:14 +00:00
jlam
2a172b2e99 Whitespace nit. 2004-02-03 21:30:26 +00:00
jlam
5a6dccc212 Fix a pervasive cut-and-paste bug: change a = back into a +=. Noted by
David Brownlee in private email.
2004-02-03 20:38:39 +00:00
grant
a85d6ec3db add support for the GNU versions of lex and yacc, which are required
to build some packages on some platforms.
2004-02-03 08:57:20 +00:00
jlam
0c2dd883d9 Check whether _NEED_GCC[23] is yes/no rather than just defined, since
that's the way that its set.  Also, remove _IGNORE_GCC3C and just overload
_IGNORE_GCC to note that we're building the GCC C compiler and that if
we're building something that it depends on, then avoid a dependency loop.
2004-02-03 05:14:03 +00:00
jlam
fa20e41206 Move the _COMPILER_LD_FLAG setting to somehere global as it applies to all
GCCs.
2004-02-03 04:09:27 +00:00
jlam
c09381462f Avoid using "type" to find the absolute path to the compiler. We find it
ourselves now using some make variable magic.
2004-02-03 03:47:45 +00:00
jlam
2c7a49cf63 duh... s/CCACHE/DISTCC/ 2004-02-02 12:47:19 +00:00
jlam
148b4f7b03 Whitespace fixes. 2004-02-02 12:45:08 +00:00
jlam
a8fa1078e7 If we can't find the package using pkg_info, then use a simple heuristic
to figure out _GCC_SUBPREFIX.
2004-02-02 12:44:22 +00:00
jlam
67d464d225 G/C _GCC_ARCHSUBDIR. All references to it from gcc*/buildlink*.mk files
have been removed.
2004-02-02 12:27:12 +00:00
jlam
33bcdd24b7 Kerberos-using packages now set CRYPTO, not RESTRICTED. Approved by pkgsrc
PMC.
2004-02-02 11:34:17 +00:00
jlam
6f3185696f Only prepend the compiler package location to the PATH if we actually
request a compiler that's supported by the named compiler package.
2004-02-02 11:04:17 +00:00
jlam
441289a9c0 Initialize a variable before use. 2004-02-02 11:03:08 +00:00
jlam
bcd3f42ec9 s/:/./ to fix Makefile breakage. 2004-02-02 11:02:18 +00:00
jlam
5ff8c17cd4 Whitespace fixes. 2004-02-02 10:55:26 +00:00
jlam
8a60ac36a0 If USE_GCC_SHLIB is defined, then pretend we need both C and C++ compilers.
This is, of course, wrong.  Excerpted from the file itself:

# XXX Add this gross and completely inaccurate hack.  Packages that
# XXX set USE_GCC_SHLIB should be adjusted to set USE_LANGUAGES
# XXX correctly (most likely by saying it needs either "c++" or
# XXX "c c++").  This is here for now so that ~85 packages won't
# XXX suddenly break.
2004-02-02 10:53:08 +00:00
jlam
81ef5c536b If we need a GCC C++ or Fortran compiler, then define USE_GCC_SHLIBS as
all of those programs will link against either libstdc++.so or libg2c.so.
2004-02-02 10:49:26 +00:00
jlam
5193f72834 Rename _GCC{2,3}_REQD to _NEED_GCC{2,3} which more clearly expresses what
that variable is used for.
2004-02-02 10:34:00 +00:00
jlam
e9559de07c Only create wrapper scripts for compilers that we require support for as
noted in USE_LANGUAGES.
2004-02-02 10:26:42 +00:00
jlam
ebbc2d9184 Support a new variable in package Makefiles:
USE_LANGUAGES
	Lists the languages used in the source code of the package,
	and is used to determine the correct compilers to install.
	Valid values are: c, c++, fortran, java, objc.  The default
	is "c".

Packages that don't need any compilers and set this variable to an
empty value, e.g. "USE_LANGUAGES=".

This can probably be combined in some smart way with setting
USE_GCC_SHLIBS and USE_FORTRAN automatically.
2004-02-02 10:03:46 +00:00
grant
f2b6f2f963 transform -f{pic,PIC} -> -Kpic and -shared -> -G to fix building of
packages which pass these gcc-specific flags.

also ignore -Werror; if a package passes -Werror, it's expecting that
the compiler is gcc, which in this case it is not. SunPro often emits
warnings on code which gcc doesn't, so transforming this flag to
-errwarn is counterproductive.
2004-02-02 01:36:14 +00:00
jlam
5535ccfda7 Fix a broken conditional. 2004-02-01 14:36:23 +00:00
jlam
23a4907c06 Use the gcc3-* packages instead of gcc3. The former are newer, and using
them, we can more finely express which compilers we want.
2004-02-01 14:11:01 +00:00
jlam
ddb89b95fc Use _GCC_REQD where we want the strictest value (GCC_REQD can be a list). 2004-02-01 12:16:10 +00:00
grant
df107af10c use sanitize-rpath for SunPro again with the new compiler framework. 2004-02-01 12:04:31 +00:00
jlam
83dc2192c8 USE_{SUNPRO,MIPSPRO} are deprecated... check PKGSRC_COMPILER instead.
Also remove unneeded section on OS-specific wrappers that's handled
automatically nowadays by pkgsrc/bl3.
2004-02-01 12:04:13 +00:00
jlam
30b81c9123 Instead of silently failing to include missing files, be loud and give the
error ASAP.
2004-02-01 11:14:04 +00:00
jlam
fed59fb254 Actually, it does matter what _GCC_PKG is set to as it's re-used later as
the value of CC_VERSION for the builtin compiler.
2004-02-01 07:54:33 +00:00
jlam
6bb67cd918 Garbage collect compiler.mk as it's superseded by the new compiler
selection framework in pkgsrc/mk/compiler.
2004-02-01 01:57:39 +00:00
jlam
a462d55c1d Allow PKGSRC_COMPILER to take precedence over any deprecated variables. 2004-02-01 01:36:22 +00:00
jlam
706af1242e Match names for the C and C++ compilers with the ones we're masquerading.
This should allow ccache to work with SunPro and MIPSpro compilers.
2004-02-01 01:33:06 +00:00
jlam
0cf6261dd8 Note that PKGSRC_COMPILER should end in a real compiler. 2004-02-01 01:31:58 +00:00
jlam
dfbb9b9071 Prepend the path to the compiler to PATH even if we're using the builtin
compiler.  This makes ccache and distcc call the correct compiler from
examining the PATH.
2004-02-01 01:23:37 +00:00
jlam
bfa06a27b3 When overriding libtool in the source directory, replace it with a shell
script that invokes the correct libtool instead of using a symlink.  This
fixes the problem where libtool was invoked by /bin/sh regardless of
whether libtool was built to be run by /bin/ksh instead.
2004-02-01 01:09:09 +00:00
jlam
9653a340c2 Prepend ${MIPSPROBASE}/bin to the PATH so that the correct compilers are
found by ccache and distcc.
2004-02-01 01:03:22 +00:00
jlam
c2227604d1 Spell MIPSPROBASE correctly. 2004-02-01 01:02:37 +00:00
jlam
bd07d88193 We're included by bsd.prefs.mk, so no need to include bsd.prefs.mk for
anything.
2004-02-01 00:59:51 +00:00
jlam
8e23220a85 Prepend /opt/SUNWspro/bin to the PATH so that the compiler can be found by
ccache and distcc.
2004-02-01 00:57:26 +00:00
jlam
3dad364543 How'd that -lb get there? 2004-02-01 00:41:25 +00:00
jlam
314f490c5b Use the new compiler selection framework instead of the old one. 2004-02-01 00:32:38 +00:00
jlam
ff13724574 New compiler specification framework, based on mk/compiler.mk. The
changes from the old compiler.mk are:

  * Split apart the compiler-specific logic into separate files.  This
    should make supporting other compilers a bit easier.

  * Deprecate all of the USE_* compiler.mk variables, e.g. USE_GCC[23],
    USE_SUNPRO, etc.  It's all replaced with a new PKGSRC_COMPILER
    variable.

  * Clean up the GCC handling so that it's all controlled by a single
    variable GCC_REQD.  The following behaviour is expected:

    (a) If USE_PKGSRC_GCC is defined, then pretend there is no GCC on
        the system.
    (b) If there is no GCC, then the appropriate GCC corresponding to
        GCC_REQD is installed and used.
    (c) If there is a GCC, if it satisfies GCC_REQD, then use it;
        otherwise install and use the appropriate GCC package.
    (d) If lang/gcc is installed and GCC_REQD > 2.95.3, then lang/gcc3
        is installed and used.
    (e) If lang/gcc3 is installed and GCC_REQD = 2.95.3, then gcc3 is
        still used instead of installing lang/gcc.

New features include:

  * PKGSRC_COMPILER takes a list of values specifying the chain of
    compilers to call when building packages.  Valid values are:

	distcc          distributed C/C++ (chainable)
	ccache          compiler cache (chainable)
	gcc             GNU
	mipspro         Silicon Graphics, Inc. MIPSpro
	sunpro          Sun Microsystems, Inc. WorkShip/Forte/Sun
			ONE Studio

    The default is "gcc".  You can use ccache and/or distcc with an
    appropriate PKGSRC_COMPILER setting, e.g. "ccache distcc gcc".

  * Change GCC_REQD to hold a list of values that we scan through to
    find the highest version of GCC required by the build.  Package
    Makefiles should now do "GCC_REQD+=..." instead of "GCC_REQD=...".
2004-02-01 00:31:00 +00:00
snj
c4977f183d s/seperated/separated/ 2004-01-31 23:46:18 +00:00
recht
a8f44897b9 Bump the x11-links dependency to 0.20 to get the extensions/extutil.h
header.
2004-01-31 22:00:51 +00:00
xtraeme
3ac6ad1ffd Add some new variables for manual pages when using imake.
They are:

	o IMAKE_KERNMAN_DIR (man4 or cat4)
	o IMAKE_MISCMAN_DIR (man7 or cat7)
	o IMAKE_KERNMAN_SUFFIX
	o IMAKE_MISCMAN_SUFFIX

Ok'ed by Hubert Feyrer in private email.
2004-01-31 16:52:16 +00:00
xtraeme
7f2afa2d64 Fix IMAKE_MAN_SOURCE_PATH and IMAKE_MANNEWSUFFIX, this change should
fix a bunch of packages using USE_IMAKE.
2004-01-31 12:28:48 +00:00
jlam
e9dde6bfe9 It's GNU_CONFIGURE_PREFIX, not CONFIGURE_PREFIX. 2004-01-31 07:07:33 +00:00
grant
4ddc97c628 fix typo in comment 2004-01-31 03:37:24 +00:00
grant
68315859d7 improve report layout:
- move the build summary to the top and include build start/end
  times.
- break the report up into three sections for easier navigation:
  Broken, Broken dependencies, and Not packaged.
- HTML report now uses a subset of the www.NetBSD.org stylesheet.
- improve some of the text.
2004-01-31 03:30:49 +00:00
jlam
da09d28be6 Use the stack in a smarter way. Take an argument (perhaps marshalling
several arguments together) from the command line and push it onto the
stack.  Pop the top off the stack, process, and push replacement
arguments onto the stack.  Repeat the last step until no more processing
is done, and we have our final argument to be passed on through to the
rest of the wrapper script.
2004-01-30 13:44:52 +00:00
jlam
d66744b96d Remove debugging line that I accidentally left there. 2004-01-30 11:29:56 +00:00
grant
226bb2c88f shut up a warning from gawk. 2004-01-30 11:10:47 +00:00
jlam
e2c107a7e9 Teach buildlink3 how to reorder libraries on the command line. You
specify library orderings with:

	BUILDLINK_TRANSFORM+=	reorder:l:crypt:crypto

The wrapper scripts then reorder the libraries so that -lcrypt will
always come before -lcrypto.  If there are lots of reorder:l:...
commands, then the algorithm looks a bit like a topological sort.
2004-01-30 10:56:11 +00:00
grant
aa090d4366 allow the user to set the packages to build in build.conf (PKGLIST).
cache the list in printdepends so that printindex doesn't need to
run the same command(s) again at the start of a bulk build.
2004-01-30 10:54:36 +00:00
grant
3b338ae7b6 print a useful error if the pkgsrc directory or src directory
doesn't exist.
2004-01-30 08:51:29 +00:00
grant
fb2aa67691 if an unknown option is given, don't treat it as a sandbox
directory, print the usage message instead.
2004-01-30 08:34:28 +00:00
jmmv
43e0273d27 Update grub to 0.94:
* Support building on x86-64 with gcc -m32.
* Use a BIOS call to turn on/off Gate A20. This should solve various
  problems related to Gate A20 in modern BIOSes.
* Add a workaround for buggy BIOSes (notably HP Vectra series) which
  don't pass the boot drive correctly.
* Display "GNU GRUB" instead of "GRUB" in the menu.
* Add support for QNX RTP into the grub shell.
* Add support for the initrd max address of a kernel header in Linux.
* Support 32 bit and 64 bit dev_t.
* Add support for an install device in GRUB's notation with no
  parenthesis (e.g. grub-install hd0).
* Improve the manual a lot.

While here, add a new build definition, GRUB_PRESET_COMMAND, which can be
set to a single command that will be embedded in grub's stage2 and executed
during bootup (useful for automated diskless setups).  Also make use of
BUILD_DEFS properly.  And pick up maintainership, as requested by tron@.
2004-01-29 18:36:38 +00:00
grant
be21271b07 let tools.mk decide whether GNU patch is needed. 2004-01-29 10:22:01 +00:00
grant
4d24d7a1f8 bring back rev. 1.20.
in fact, the last revision didn't contain unwanted changes, but two
minor errors, now fixed. sorry for the mess.
2004-01-29 10:19:10 +00:00
grant
81300a33cf backout previous; it had other changes I didn't want to commit yet... 2004-01-29 10:15:44 +00:00
grant
01b9c194a6 add GNU gnu patch(1), to override patch(1) on some platforms. 2004-01-29 09:38:10 +00:00
jlam
dde5c9a30c Revert the changes in revision 1.2 to do duplicate directory suppression.
We just let the rest of the wrapper scripts do it now that we can't
overflow a fixed-sized circular buffer.
2004-01-29 07:19:00 +00:00
jlam
b45e649a08 Use a stack instead of the broken implementation of a circular list for the
argument buffer.
2004-01-29 07:14:30 +00:00
jlam
876f47a810 Reorder arguments so that all of the -l options come after the -L options
which come after everything else.  This ensure that all libraries come
after all -L/dir options so that the Sun linker won't act stupidly.
2004-01-29 06:06:41 +00:00
jlam
1ba170e917 Commit the buildlink3 developer's guide and the pkgviews user's guide until
they're polished enough to be included into Packages.txt.
2004-01-29 06:03:15 +00:00
jschauma
1cce0bd065 Some licenses are pretty long, so use $PAGER instead of $CAT, if $PAGER
is set.
2004-01-28 20:29:46 +00:00
agc
c156ab5d49 Replace all occurrences of the "MAIL" definition with MAIL_CMD, since
some shells can set MAIL to be the mailbox of the user, and
environment variables will override assignments in make when using
conditional assignments.
2004-01-27 16:11:47 +00:00
jlam
e8eafe236e Abstract out the filter commmand used to list headers and libraries in
the package +CONTENTS file into a variable BUILDLINK_CONTENTS_FILTER.<pkg>.
2004-01-27 12:19:03 +00:00
jlam
2c5e5ce5d0 Move all of the stuff relating to _BLNK_ADD_TO.* into the same if.endif
block.
2004-01-27 08:42:13 +00:00
jlam
955f55be09 Add a missing "empty". Thanks seb! 2004-01-27 08:39:24 +00:00
jlam
5b7a8cf9b1 Also break up -R*:* into separate -R options. 2004-01-27 08:23:45 +00:00
jlam
2116fcb603 "fetch" is also a distinct build phase. 2004-01-27 02:36:59 +00:00
jlam
aab2374faf Restore changes in 1.57 that were backed out in 1.60. The _BLNK_ADD_TO.*
variables are no longer saved using MAKEFLAGS since the saved values aren't
correct for recursively invoked make targets that bsd.pkg.mk uses
internally for information-gathering, e.g. show-var, run-depends-list.
Instead of saving the values, we now just don't compute them during phases
of the build that don't care about the dependency information, e.g. when
not in extract, install, or package.
2004-01-27 02:32:56 +00:00
grant
d84262f580 add /usr/5bin for Solaris. 2004-01-26 22:32:30 +00:00
seb
1df8873c30 Revert changes in revision 1.57:
_BLNK_ADD_TO.* never get redefined for dependent packages (recursive
make invocation in install-depends target) causing an endless loop.
2004-01-26 22:19:16 +00:00
agc
1e90841f0d Add a new definition, _PRESERVE_WRKDIR, which defaults to "no". This
definition is not intended to be set by the user, and so has a leading
'_', and is undocumented.

If set to "yes", then a "make clean" of the package will not be done,
thereby preserving the working directory.  This is useful for
debugging problems in bulk builds.
2004-01-26 21:24:41 +00:00
heinz
4d478bb0cf Use $FIND with "-print". Noted by Georg Schwarz in PR pkg/24248 2004-01-26 21:10:31 +00:00
jlam
bde1c835c5 Purge one more instance of _NULL_SUFFIX. Fix by Marc Recht. 2004-01-25 19:23:20 +00:00
jlam
2d58c835eb Use -S instead of '-s ""' to check for package matches with a null suffix.
This option is available as of pkg_install>=20030918 which is required in
pkgsrc.  Noted by Klaus Heinz.
2004-01-25 18:44:31 +00:00
jlam
71c7ad7f16 pkgsrc requires PKGTOOLS_REQD>=20030918, so we don't need to conditionalize
passing "-S" to pkg_admin.
2004-01-25 18:42:53 +00:00
jlam
66b2e171eb The new standard for modifying BUILDLINK_DEPENDS.<pkg> is to append to the
value instead of overriding.  The reason is so that the most restrictive
<pkg> dependency will always be a part of the dependency list.
2004-01-25 16:46:21 +00:00
jlam
0129c7eedd Append to BUILDLINK_DEPENDS.<pkg> instead of overriding it so that the
most restrictive dependency is always part of the DEPENDS/BUILD_DEPENDS
list.
2004-01-25 16:17:37 +00:00
grant
d85f19a094 show-needs-update target: run ${MAKE}, not "make". 2004-01-25 16:12:40 +00:00
jlam
8e850d0459 Instead of directly manipulating DEPENDS, BUILD_DEPENDS, and RECOMMENDED,
create _BLNK_ADD_TO.<depmethod> for each of depencdency methods above from
the BUILDLINK_DEPEND.<pkg> and BUILDLINK_RECOMMENDED.<pkg> lists and save
the created values so they don't need to constantly be recomputed.
2004-01-25 13:26:43 +00:00
jlam
93ad14ffc4 Suppress duplicate dependencies in the DEPENDS and BUILD_DEPENDS list
added by buildlink3.mk files if the dependencies are _exactly_ the same.
2004-01-25 13:09:46 +00:00
jlam
0b36d85a83 Fix code that assumed that BUILDLINK_DEPENDS.<pkg> was a unique value by
modifying it to accept a list.
2004-01-25 12:43:24 +00:00
grant
57eb61a5d6 run GNU configure scripts with ${CONFIG_SHELL}, which defaults to
${SH} when GNU_CONFIGURE is defined.

fixes problems on Solaris and BSDI with some GNU configure scripts.
2004-01-25 10:36:15 +00:00
xtraeme
7c90204834 Removed XFree86-libs dependency if we are trying to use XFree86
packages from pkgsrc, it's not really needed with the latest change
to x11-links.
2004-01-25 07:47:00 +00:00
grant
677c8663d9 g/c USE_GMAKE. nothing uses it anymore. 2004-01-25 02:37:49 +00:00
xtraeme
c0f8903bb6 Added a new variable for XFree86 packages:
USE_PKGSRC_XFREE86

By default it is disabled, if you want to use XFree86 packages from
pkgsrc, please add "USE_PKGSRC_XFREE86=YES" in /etc/mk.conf.
2004-01-24 09:23:22 +00:00
jlam
018df25438 Move all of the code that sets USE_XPKGWEDGE from bsd.pkg.mk into
bsd.prefs.mk as it's needed in setting X11PREFIX to the correct value,
which is also done in bsd.prefs.mk.  This is the follow-through to the
temporary fix in previous revision (1.141) of bsd.prefs.mk.
2004-01-23 17:55:17 +00:00
jmmv
cd39cfd5a5 Add http://osdn.dl.sourceforge.net/sourceforge/ as a master site for
Sourceforge.
2004-01-23 17:04:55 +00:00
agc
d4ff22acec Temporary fix for xpkgwedge'd packages which were getting buildlinked
with a prefix of X11BASE, rather than LOCALBASE - check whether
USE_XPKGWEDGE is defined to {"YES", "yes"} as well as looking for the
existence of the xpkgwedge definition file when calculating the value
of X11PREFIX.
2004-01-23 16:49:47 +00:00
grant
c7be5308d1 sandboxed builds also need /usr/dt and /usr/ucblib on Solaris. 2004-01-22 13:08:32 +00:00
xtraeme
582b323b23 Add three additional mirrors to MASTER_SITE_SUSE. 2004-01-22 10:19:58 +00:00
grant
3764132f99 make date format string more portable. 2004-01-22 09:08:34 +00:00
jlam
dfe9bb1980 Most of this file only applies if we're in some phase after buildlink, so
enforce that using PHASES_AFTER_BUILDLINK.

Also, transform the physical path to ${WRKDIR} into the value ${WRKDIR} in
the wrapper scripts.  This allows ${WRKDIR} to be a path that traverses a
symlink.  In particular, it allows users to set WRKOBJDIR to point to a
symlink.
2004-01-21 18:18:13 +00:00
jlam
3306fc00c1 Introduce concept of the "phase" that we're in as we progress through
fetching, extracting, configuring, building, etc. of a package.  We
can check what phase we're in by examining the value of ${PKG_PHASE}
and comparing against PHASES_AFTER_<phase>, which list phases that
are "greater than or equal to" <phase>.

One useful example of how to use PKG_PHASE is:

.if !empty(PHASES_AFTER_EXTRACT:${PKG_PHASE})
#
# Some variable settings or targets here that rely on dependencies to
# already be installed, or ${WRKDIR} to be created, etc., as these are
# things that should have happened by the time "make extract" is
# completed.
#
.endif
2004-01-21 18:13:27 +00:00