Commit graph

866 commits

Author SHA1 Message Date
hubertf
5542206cba Get rid of manually adding "nbX" to PKGNAME when a pkg was changed in
pkgsrc. Instead, a new variable PKGREVISION is invented that can get
bumped independent of DISTNAME and PKGNAME.

Example #1:
        DISTNAME=       foo-X.Y
        PKGREVISION=    Z
     => PKGNAME=        foo-X.YnbZ

Example #2:
        DISTNAME=       barthing-X.Y
        PKGNAME=        bar-X.Y
        PKGREVISION=    Z
     => PKGNAME=        bar=X.YnbZ (!)

On subsequent changes, only PKGREVISION needs to be bumped, no more risk
of getting DISTNAME changed accidentally.
2001-11-29 01:12:24 +00:00
jlam
208d40b3a2 Move the PKG_SYSCONFDIR logic below the definition of PKGNAME. PKGNAME is
use to set PKGBASE, which is used in the name of the package-specific
config directory override (PKG_SYSCONFDIR.${PKGBASE}).  Prior to this, if
PKGNAME wasn't explicitly set in the package, then the override would not
work.
2001-11-28 19:55:31 +00:00
abs
6dd01d2785 lose some more pkg/ references 2001-11-28 10:21:46 +00:00
hubertf
0a38992063 fetch-list: properly quote URLs printed, as they may contain things that
the shell doesn't like.

Fixes PR 14347 by Ben Wong <Benjamin.Wong@cc.gatech.edu>
2001-11-26 19:56:06 +00:00
jlam
3f8b0469a6 Check for an empty value for PKG_SYSCONFSUBDIR and set PKG_SYSCONFDIR
accordingly so that config files are in /usr/pkg/etc/foo.conf, and not
/usr/pkg/etc//foo.conf.
2001-11-25 19:38:55 +00:00
jlam
0252126161 Pass PKG_SYSCONFDIR to the configure and build processes. 2001-11-25 19:04:19 +00:00
jlam
ffceca11a9 PKG_SYSCONFDIR is where the configuration files for a package may be found.
This value may be customized in various ways:

PKG_SYSCONFBASE is the main config directory under which all package
	configuration files are to be found.

PKG_SYSCONFSUBDIR is the subdirectory of PKG_SYSCONFBASE under which the
	configuration files for a particular package may be found.

PKG_SYSCONFDIR.${PKGBASE} overrides the value of ${PKG_SYSCONFDIR} for a
	particular package.

Users will typically want to set PKG_SYSCONFBASE to /etc, or accept the
default location of ${PREFIX}/etc.

This obsoletes the use of CONFDIR, which was active for only 6 days, so no
need to have a workaround to still accept old CONFDIR settings.
2001-11-25 18:59:45 +00:00
agc
93549791ee Now that all the files have been moved into the main package directory,
remove the temporary ${PKGDIR} workaround.
2001-11-21 18:32:01 +00:00
agc
89257b87f1 Add _OPSYS_HAS_MANZ and _PREFORMATTED_MAN_DIR definitions to the
individual defs.${OPSYS}.mk files, and use them in bsd.pkg.mk.

+ _OPSYS_HAS_MANZ defines whether or not the OS does MANZ handling as standard

+ _PREFORMATTED_MAN_DIR is the name of directory (cat or man) where
preformatted manual pages go.

Rename the internal definitions used in the generation of PLIST files to
start with '_'.

This completes the "generic" changes to bsd.pkg.mk.
2001-11-21 13:44:44 +00:00
agc
03c35761df Add a _DO_SHLIB_CHECKS definition to the individual defs.${OPSYS}.mk
files, and use it in bsd.pkg.mk.  This definition controls the fixup
of PLISTs at installation time, and running of ldconfig if necessary.
2001-11-21 13:17:14 +00:00
agc
715864dc96 Add a _PATCH_BACKUP_ARG definition to the individual defs.${OPSYS}.mk files,
and use it in bsd.pkg.mk. This definition is the switch to patch(1) to
provide backup files when patching.
2001-11-21 13:09:08 +00:00
agc
b9a41cdc6b Add a _USE_RPATH definition to the individual defs.${OPSYS}.mk files,
and use it in bsd.pkg.mk. This definition says whether or not the rpath
is to be added to the LDFLAGS definition.
2001-11-21 13:02:52 +00:00
agc
e3865c8037 Add a _DO_LIBINTL_CHECKS definition to the individual defs,${OPSYS}.mk
files, and use it in bsd.pkg.mk. If set to "yes", checks that a valid
libintl library and header file should be performed.
2001-11-21 12:58:15 +00:00
agc
69788c2093 Add a definition of _IMAKE_MAKE to the individual defs.${OPSYS}.mk
files, defined to be the make program which is invoked by imake, and
use it accordingly in bsd.pkg.mk
2001-11-21 12:53:04 +00:00
agc
bac7e8965b Move default umask for operating systems into the individual defs.${OPSYS}.mk
files, rather than switching by ${OPSYS} within bsd.pkg.mk.
2001-11-21 12:42:23 +00:00
jlam
b046604a94 Create a new variable CONFDIR that represents the directory where package
config files should go.  It may be overridden on a per-package basis by
defining CONFDIR.${PKGBASE}, e.g. CONFDIR.php.  ${CONFDIR} defaults to
${PREFIX}/etc, but it may be overridden in /etc/mk.conf, e.g. by setting
CONFDIR=/etc.

Packages will eventually be altered to find their config files in
${CONFDIR}.
2001-11-19 16:01:03 +00:00
tron
d68a1cb95e Remove GNOME on "ftp.fh-rosenheim.de" which doesn't carry any files at
the moment.
2001-11-16 20:35:19 +00:00
jlam
8e58770bc9 Convert some spaces to tabs. 2001-11-14 21:38:29 +00:00
jlam
770f9cd495 Allow MESSAGE_SRC to be a space-separated list of files, like PLIST_SRC,
that are concatenated together to form the whole MESSAGE file.
2001-11-14 21:04:43 +00:00
jlam
7e703bf189 Add ${PKGBASE} to the things to substitute for in PLISTs. 2001-11-14 12:38:51 +00:00
jlam
ca75d3b6b7 Set a default value for BUILDLINK_DIR so that if no buildlink.mk files are
included, then it still points to a sensible location (${LOCALBASE}).
2001-11-11 09:46:51 +00:00
agc
7f77b835bf Check for DESCR_SRC, PLIST_SRC, MESSAGE_SRC, DEINSTALL and INSTALL files
in ${.CURDIR} as well as ${PKGDIR}, just in case the pkg/ directory still
exists but is empty.
2001-11-09 08:58:19 +00:00
agc
b3df2f05f8 Set the default values of SU_CMD and PRE_ROOT_CMD in bsd.pkg.defaults.mk,
not bsd.pkg.mk, so that the user is more aware of them (there were placeholder
examples of both definitions in bsd.pkg.defaults.mk already).

Explain PRE_ROOT_CMD a bit more throroughly, and correct an example of
its use.

Make an alternative definition for SU_CMD sync with reality.
2001-11-08 12:47:12 +00:00
agc
eb39a7e922 Following on from the removal of the automatic "is there a script to run" logic,
more speedups for building packages.

Get rid of a .USE macro, and do not spawn sub-makes for the pre-, do- and
post-target stages, replacing them with standard make(1) targets.

Timing information as follows (multiple runs performed, best results taken):

800 MHz Celeron, 128 MB, local pkgsrc, local obj
scripts/, pre,do,post-*:  	0.731u 0.261s 0:02.04 48.5%     0+0k 29+168io 9pf+0w
no scripts/, pre,do,post-*:	0.678u 0.242s 0:01.30 70.0%     0+0k 0+169io 0pf+0w
no scripts/, no pre,do,post-*:	0.267u 0.089s 0:00.90 37.7%     0+0k 0+155io 0pf+0w

40 MHz Sparc, 36 MB, nfs pkgsrc, local obj
scripts/, pre,do,post-*:  	22.590u 6.839s 0:33.31 88.3%    0+0k 121+254io 0pf+0w
no scripts/, pre,do,post-*:	22.481u 6.442s 0:33.30 86.8%    0+0k 120+251io 0pf+0w
no scripts/, no pre,do,post-*:   8.534u 4.189s 0:16.48 77.1%    0+0k 105+242io 0pf+0w
2001-11-08 09:29:56 +00:00
jlam
32a207a6c8 Also substitute for CHMOD, CHOWN, CHGRP in PLISTs. 2001-11-03 04:58:15 +00:00
jlam
64468de1ee So many of our PLIST use mkdir, rmdir, and true, and we have full paths to
these utilities in ${MKDIR}, ${RMDIR}, and ${TRUE}, so substitute for them.
2001-11-01 20:37:17 +00:00
zuntum
33f6d98857 Make REPLACE_PERL work -- recent "-e s,/bin/perl,${PERL5}" addition broke it.
Now the sed command is "s,#!.*/bin/perl,#!${PERL5},"
2001-10-31 18:05:48 +00:00
agc
7167cd3880 Add initial support for Darwin (1.4) to pkgsrc. 2001-10-30 13:53:15 +00:00
jlam
b3dec5f544 On Solaris 7, when `find dir -name foo -name bar' in invoked, only an
implicit `-print' action is performed on bar and not on foo.  Surround
the search pattern in \( ... \) and add an explict -print so that all of
the results of the find are printed.

Problem noted and patch to fix this received in private email from Stoned
Elipot <seb@netbsd.org>.
2001-10-29 19:21:18 +00:00
skrll
c5e44f3ff0 Make print-PLIST generate
@exec ${MKDIR} %D/...

instead of

	@exec ${MKDIR} ${PREFIX}/...

Hopefully this might mean I don't commit incorrect PLISTs.
2001-10-29 15:10:14 +00:00
tron
8d0e937ff7 Add a new "show-vars" target which allows to display several makefile
variables at once.
2001-10-26 21:42:44 +00:00
jlam
83a062506e If AUTOMAKE_OVERRIDE=YES then we touch files in ${WRKSRC} in such a way
that GNU autoconf/automake are not executed during the build process, even
if the tools exist in the build environment.  This prevents the build
process from overwriting any changes made to the configure script or to the
Makefile.in files.
2001-10-26 17:03:04 +00:00
agc
507d23ecbf Also delete the magic invocation of scripts/configure and
scripts/{pre,post}-install - there is nothing that uses any of these,
and it incurs needless overhead.
2001-10-26 16:03:26 +00:00
wulf
967aaf280f Changed PKGDIR assignment to allow migration of files currently held in
${.CURDIR}/pkg directory to the toplevel of the package. It remains
backward compatible with the existing system allowing a progressive
transision process. The long term goal is a reduction of overheads and
processing time when working with the cvs tree.
2001-10-26 15:08:43 +00:00
agc
d52dd5005a At present, if there is a pre-<target> or post-<target> script in
the scripts/ directory, it will be run automatically as part of
the build process, by bsd.pkg.mk.  There are now exactly 5 packages
in pkgsrc which use this facility, and yet, for every package build,
the existence of a script is checked by bsd.pkg.mk once before the
target is executed, and once afterwards. This incurs needless
overhead.

Move the separate pre- and post- script handling out of bsd.pkg.mk into
the individual package Makefiles, where it's much more obvious what is
happening, anyway.
2001-10-26 14:09:59 +00:00
skrll
9f28ffc95e Update REPLACE_PERL to work for /bin/perl and use it in kdelibs2 instead
of home grown post-patch target.
2001-10-26 13:57:58 +00:00
skrll
1034b557a9 Fix ltcf-cxx.sh to work on -current/new toolchains. That is make sure that
/usr/lib/crtbeginS.o and /usr/lib/crtendS.o make it into
{pre,post}dep_objects.

Fixes pkg/14353 from Witold J. Wnuk <witek@pd37.warszawa.sdi.tpnet.pl>

Tested as "still" working on 1.5.2.

Bump minor number of pkg and make pkgsrc depend on this version.
2001-10-26 07:47:38 +00:00
tron
758b507b69 Sort "PATCH_SITES" using "MASTER_SORT" and "MASTER_SORT_REGEX", too. 2001-10-25 18:12:53 +00:00
jlam
51436ad116 The do-configure target has some "stuff" that is supposed to be done after
the pre-configure target is called but before the configure script is
called, but it's added in a non-extensible way.  This "stuff" is the
replace-ncurses step and the ltconfig-override step.  Move these steps out
into their own targets that are named as prerequisites to the do-configure
step.  The prerequisites are specified in the private variable
_CONFIGURE_PREREQ, to which other independent targets may be appended.
2001-10-24 19:42:28 +00:00
hubertf
46a42a2e26 Get rid of BUILD_ROOT and replace it with PKGSRCDIR (which was there
before!)
2001-10-17 23:23:15 +00:00
tron
57f481af78 Pass "${USETOOLS}" down to package builds so that packages which use BSD
style makefiles can be build without a tools directory.
2001-10-12 15:40:56 +00:00
jlam
c46d036469 Allow people who set USE_BUILDLINK_X11 so as to experiment with the
buildlink-x11 package, to have that package installed.
2001-10-10 05:57:14 +00:00
jlam
ffdd7ac071 Back out last change that moved the prepending of BUILDLINK_CPPFLAGS and
BUILDLINK_LDFLAGS to CFLAGS, CPPFLAGS, CXXFLAGS, LDFLAGS from
bsd.buildlink.mk to bsd.pkg.mk.  They're unnecessary after the recent
changes to bonobo/buildlink.mk and to libglade/buildlink.mk that removed
their settings of BUILDLINK_CPPFLAGS.
2001-10-09 13:54:10 +00:00
tron
cb4432edd5 Prepend "${BUILDLINK_CPPFLAGS}" and "${BUILDLINK_LDFLAGS}" to "${CFLAGS}",
"${CPPFLAGS}", "${CXXFLAGS}" respectively "${LDFLAGS}" in "bsd.pkg.mk" and
not in "bsd.buildlink.mk" because "${BUILDLINK_CPPFLAGS}" and
"${BUILDLINK_LDFLAGS}" might get changed several times by the
"buildlink.mk" files of various packages.
2001-10-05 21:32:59 +00:00
agc
ed7610d006 Use the usual _PKG_SILENT and _PKG_DEBUG definitions in the
show-installed-depends target.
2001-10-04 22:01:54 +00:00
agc
12106c0620 use ${PKG_INFO} rather than pkg_info in show-installed-depends target,
so that the correct setting of PKG_DBDIR is used, and the correct
pkg_info binary too, presumably.

Make show-installed-depends work on Solaris (untested) by only defining
the target if DEPENDS is defined.
2001-10-04 21:48:12 +00:00
jlam
2b9404e054 If USE_IMAKE is set, then ensure that the buildlink-x11 package isn't
installed, as it currently breaks builds that use imake.  I made an
announcement on current-users and tech-pkg on this, but having the make
logic place to verify that buildlink-x11 is actually gone is better.
2001-10-04 07:56:06 +00:00
tron
9f0eb84c74 Add "prdownloads.sourceforge.net" as primary site to the of list
sourceforge download servers. It is the fastest one from "ftp.netsd.org"
and my home system.
2001-10-03 07:57:04 +00:00
jlam
6c797a0afa Allow customizing the message for _SU_TARGET by substituting for "$action",
where action can be "install", "package", "create user for", etc., instead
of blindly always saying "install".  Define "action" before calling
${_SU_TARGET} whereever it is used.
2001-10-01 21:15:11 +00:00
jlam
3ad1fec0e7 Have x11.buildlink.mk add -Wl,-R${X11BASE}/lib to LDFLAGS directly, instead
of relying on bsd.pkg.mk to do it.  This change just makes x11.buildlink.mk
more self-sufficient.  Also add a warning that x11.buildlink.mk shouldn't
be included in any buildlink.mk files since what it appends to *_POST_SED
variables must come last.
2001-10-01 17:14:40 +00:00