Commit Graph

778 Commits

Author SHA1 Message Date
espie
92531f47ed let build of dependencies that are not 'install' or 'package' happen
inside a subdirectory of the working directory, instead of elsewhere.
Allows packages BULK=Yes to work correctly, and increase reproducibility
of builds.

tested by naddy@ through several incarnations.

Ports that use patch/configure/build dependencies must be adjusted for this.
Pleasingly enough, the adjusted version is often simpler.

The change uses an internal _MASTER variable to recall the list of ports
built during dependencies, for less confusion.
2002-04-24 21:29:26 +00:00
espie
4fecaeb271 move stuff around, so that functions are at beginning of file.
No other significant change.
2002-04-20 19:07:25 +00:00
espie
9acaeefab9 double typo. Let ftp-packages and cdrom-packages be normal BULK_TARGETS. 2002-04-17 16:53:13 +00:00
espie
5c6c013651 kill bulk-packages. Use `make package BULK=Yes' instead.
The main advantage is that workdirs are cleaned up as soon
as package is built (or installed), not later.
2002-04-17 15:58:48 +00:00
espie
2b7c75e086 Move perl manpages where they belong, from section 3 to section 3p.
NOTE THAT /usr/local/man/man3p MUST EXIST FOR THIS TO WORK.
UPDATE /etc/mtree/BSD.local.dist AND RUN IT ACCORDINGLY !!!
2002-04-16 19:25:01 +00:00
espie
83d65ba969 Add variable P5SITE/P5ARCH, this will make future plists more compact. 2002-04-16 17:35:21 +00:00
espie
b2e829be6d register comments. Allows to remove a file from a plist by @comment'ing it,
and having make update-plist keep that.
2002-04-15 06:38:23 +00:00
espie
375850a04e Allow for DIST_SUBDIR to be empty 2002-04-10 08:44:57 +00:00
espie
8033007ddd Add PROTECT_MOUNT_POINTS, to help package builders spot ports that write
outside of the fake area.
2002-04-09 23:55:11 +00:00
espie
6eefe19bd3 fix indentation 2002-04-09 22:52:24 +00:00
espie
74c923f4c6 USE_LIBTOOL, USE_GMAKE, USE_X11 should really be Yes/No variables. 2002-04-09 13:52:58 +00:00
brad
1e1180910d remove first 2 dist sites for MASTER_SITE_KDE. 2002-04-07 03:21:34 +00:00
wilfried
4988adddf4 missing / after %SUBDIR%, ok espie@ 2002-04-04 11:27:28 +00:00
espie
9ad648bfbe Let make update-plist look at dependent packages (LIB_DEPENDS and
RUN_DEPENDS) to create a more accurate list of @dirrm.

Minor negative side-effect: up-to-date dependent packages must be present
for this to work. Not a problem, since this is only used by maintainers.

This improves the quality of generated plists for large packages with lots
of dependencies by a large amount (e.g., kde)

reviewed by pval@
2002-04-03 15:00:30 +00:00
miod
5bdee43e97 Update libtool patches so that libtool recognizes vax as a static libs-only
architecture.
ok espie@
2002-04-03 14:44:14 +00:00
espie
ddaac90cab Add a target to check that makewhatis will build correct index entries. 2002-04-02 15:55:55 +00:00
espie
6d8b4f799b Kill files/md5 magic 2002-03-21 21:28:29 +00:00
espie
2224ca5690 Register dirrm collisions as well. 2002-03-19 22:20:50 +00:00
jsyn
8fdaaa2d7e update MASTER_SITE_PACKETSTORM mirror list; ok naddy@ 2002-03-18 20:04:07 +00:00
espie
25c3970285 oops, bad exec in a combined command 2002-03-18 03:18:24 +00:00
espie
1c8f153f2e Tsk, tsk. 2002-03-18 02:00:00 +00:00
espie
8f76f3fa33 can't set both motif and lesstif flavors at once. 2002-03-18 01:55:40 +00:00
espie
b6d50a2151 Handle ERRORS+='Fatal:...' as well 2002-03-18 01:52:46 +00:00
couderc
69ab7a3aea Include ruby module 2002-03-17 22:34:16 +00:00
espie
b39f70427a move gnu dreck (autoconf, automake...) to gnu.port.mk 2002-03-16 01:09:23 +00:00
espie
6ac449705e disable automake unless explicitly asked for it.
Just did a package build without any apparent ill effect.
2002-03-16 00:54:37 +00:00
espie
4c2a3c3cf5 Add ${WRKDIR}/bin directory. 2002-03-15 13:29:13 +00:00
espie
9775511ef0 Add rules to create a list of homepage links for all ports. 2002-03-13 13:51:59 +00:00
naddy
4d75cc72eb skip @libdepend 2002-03-11 22:00:37 +00:00
brad
25908a510d mention tcsh 2002-03-10 06:02:16 +00:00
espie
1454c1191c link qt3 in. 2002-03-04 16:15:41 +00:00
espie
e0db562001 create package dependency list in a separate file.
This solves some nasty merged output problems and unconfuse redirection
issues.
2002-03-04 15:33:16 +00:00
espie
f801d53cd6 do not consider static libraries if dynamic libraries are around.
This is not the linker's way of working, but this is the way dependencies
must be handled to find about update issues.

naddy@ agrees, nobody else gives a fuck.
2002-03-04 13:39:34 +00:00
brad
ba5772bc40 copy config.sub too 2002-03-03 01:23:23 +00:00
brad
29cf0ceab4 - sync config.guess
- add a copy of config.sub in a central location
2002-03-02 23:59:38 +00:00
espie
633db19d5e Trip ports that mistakenly try to write into $HOME. 2002-03-02 13:38:25 +00:00
naddy
53bcf007ee fix REGRESS_IS_INTERACTIVE logic; ok espie@ 2002-03-01 00:49:03 +00:00
espie
5430bb6c97 don't redirect build output to /dev/null, redirect it to stderr instead,
so that building packages in the background to solve dependencies won't
break the plist it's building, but show up clearly still...
2002-02-27 00:25:35 +00:00
jsyn
d38406cce9 add MASTER_SITE_PACKETSTORM as a mirror source; ok naddy@ 2002-01-24 06:45:22 +00:00
brad
888ee53f31 - add et_EE
- ru_SU -> ru_RU
--
Ok'd by: heko@
2002-01-18 16:48:19 +00:00
espie
007b0bcbc1 Recognize the `No new line at end of file' dif issue 2002-01-03 10:37:43 +00:00
espie
effd838b50 hooks for switching to autoconf-2.52. 2001-12-31 09:38:54 +00:00
naddy
80abcb4c2f strip leading path components from lib specs; ok espie@ 2001-12-31 01:59:39 +00:00
miod
9bc837b28e Repair mvme88k entry in NO_SHARED_ARCHS line. MACHINE_ARCH should be listed
there, not MACHINE....
2001-12-23 02:17:02 +00:00
brad
5bb9f47eb0 for the addsum target, check to see if files/md5 exists before trying to
move it that way we do not get an error message from mv if it does not
already exist.
--
Ok'd by: espie@
2001-12-15 18:10:36 +00:00
naddy
07838e78bd Fix the HTML markup produced by "make readmes" in /usr/ports.
Submitted by:	Nick Nauwelaerts <nick@wanadoo.be>
PR:		2233
2001-12-13 15:40:27 +00:00
brad
5fb81461eb update ftp.windowmaker.org URL
--
From: Nikolay Sturm <Nikolay.Sturm@desy.de>
2001-11-23 12:44:12 +00:00
naddy
b83c7c9e9f match the comment for the describe target with the actual code; ok espie@ 2001-11-22 16:02:26 +00:00
brad
b50da9a4e6 update MASTER_SITE_SOURCEFORGE, project FTP sites have gone away.
--
From: op21@squish.org
2001-11-21 02:42:09 +00:00
espie
47692f4664 Use perl lib depends checker, that parses the full gamut of libspecs. 2001-11-17 10:39:19 +00:00
espie
980f49d11e handles subcategories in package-links. Close PR 1731 2001-11-15 02:07:05 +00:00
espie
6221dfd2c5 typo 2001-11-13 12:52:22 +00:00
brad
5010589d79 bring in fixes made over the last 3 months from FreeBSD's bsd.sites.mk 2001-11-13 04:10:16 +00:00
espie
863226a22f Basic new lib dependency code for package.
LIB_DEPENDS are no longer part of ALWAYS_DEPEND for the new-depends code,
but use their own code.

The code does scan the list of libraries for dependent packages, and insert
corresponding @libdepend lines into the resulting package. There are a few
important consequences:

- no libdepend lines are inserted if only a static library is found. So
RUN_DEPENDS are now needed to supplement LIB_DEPENDS if a package requires
another package for something that isn't a library.
- dependency checking for installed stuff can go one step further, since
we have the major/minor number of the libraries used for the build.
At the moment, pkg resolve dependencies does nothing smart with the
inserted libdepends, but it will (soon). In fact, for most libdepends, if
the major/minor scheme are correct, no check on the installed pkgspec ought
to be necessary... which is why the `default pkgspec to check' is pkg-* for
libraries.
- resolving recursive run dependencies need to go one step further: a
RUN_DEPENDS pkg may have some LIB_DEPENDS, and the RUN_DEPENDS pkg will be
needed to explicitly write the required information into the resulting
package... Hence the necessity of being able to tune the list of libraries
to ask the uninstalled package (and to make sure the uninstalled package
is built).

This is only preliminary work. Currently, this doesn't yield any real
benefits to the old approach, as a few semantic details need to be
sharpened out. Also, there are now quite a few old targets that are a
complete mess and will need to be cleaned up/removed entirely.

Thanks to naddy@ for testing various preliminary versions of this patch
and helping me iron bugs out.
2001-11-12 14:32:52 +00:00
espie
ea79980b4c Replace the lib dependency check with a more mechanical check, that
no longer relies on ldconfig, but rather on the path stored inside
LIB_DEPENDS. Introduce a lib_resolve_fragment that can be used to
resolve the libraries from a given list (e.g., listlibs).

To be used in the next patch.

Note that this check is currently more or less equivalent to the old
check, apart from the fact that:
- libs can't trust packages,
- lib-depends always resort to non-shared libraries, even on shared
architectures, if the shared check doesn't work.
2001-11-12 14:24:06 +00:00
espie
fb319b058a add top-level directory `mystuff' to be used by porters for stuff they
haven't committed yet. The nice part is that dependencies get transparently
resolved to mystuff/dir if they aren't found in dir.
2001-11-12 14:19:17 +00:00
espie
f5975b9f08 Move the `check and change directory' part to flavor_fragment, as it's
invariably duplicated right after otherwise.

This makes the code cleaner, and makes sure the check happens all the time.
2001-11-12 14:14:46 +00:00
pvalchev
a9a3d26241 get a proper list of system libraries to exclude, and report real missing
ones from LIB_DEPENDS for lib-depends-check on ELF. ok espie
2001-11-12 01:27:26 +00:00
heko
0e36dadb66 o Instead of copying the "virtual memory exhausted" warning for each
individual port, introduce a new variable for bsd.port.mk, VMEM_WARNING.
By setting this variable to `Yes', the user is given a warning about the
virtual memory requirements just before the pre-build stage.
o Also give some examples for different shells for what to do about
it, and mention login.conf(5). bash, for example, has a confusing
-v flag to ulimit.
o Document this in bsd.port.mk.5
espie@ ok
2001-11-11 13:57:32 +00:00
espie
1254a2ffa7 transform files/md5 into distinfo magically.
I would credit FreeBSD or NetBSD for the idea if I could remember which
one came up with it first. :)
2001-11-11 12:59:50 +00:00
espie
a0b04e366e Groan. Even after I refreshed my memory with perlvar(1), I still managed
to typo my way through.
2001-11-11 12:57:25 +00:00
espie
56b6822e2f close PR2115 2001-11-11 12:38:57 +00:00
espie
c66b6461e8 Zap idiot subshell 2001-11-01 12:26:16 +00:00
brad
75f2c36138 bad idea. 2001-10-31 19:36:12 +00:00
wilfried
225675419f libtool 1.3.0 patches, ok brad@ 2001-10-31 11:58:04 +00:00
brad
e9ff76abb4 remove whitespace 2001-10-31 01:33:33 +00:00
espie
1ee295c375 Recursive module support. 2001-10-29 12:51:59 +00:00
brad
94ce66e55a Add gtk module. 2001-10-28 21:41:47 +00:00
espie
d67e77748f defaulted variable in *-depends target, currently unused: way to know
that dependency defaulted to default pattern.
2001-10-28 12:34:57 +00:00
espie
dc1a706952 Move NEED_VERSION check later. Allows for NEED_VERSION to be a list.
Useful for modules support: now specific modules can require later
versions of bsd.port.mk.

Of course, ports using modules may need an update to 1.486 to use
this feature.
2001-10-28 12:31:35 +00:00
brad
53837aa927 For consistency, use :L variable modifier with ELF_TOOLCHAIN check. 2001-10-28 04:59:26 +00:00
brad
1f0d57ad12 libtool 1.3.3 patches. 2001-10-28 04:18:09 +00:00
pvalchev
391e25bf26 lib-depends checker for ELF using objdump -p. ok espie 2001-10-26 17:34:31 +00:00
espie
b2ec1dc262 Allows for a path in the LIB_DEPENDS libspec component.
Don't use it for now.
2001-10-26 13:46:03 +00:00
espie
fde29e65ce shift to update-plist' from plist'... keep old target around for now.
Create PKGDIR while we're at it.
2001-10-24 16:35:38 +00:00
naddy
ceb485fa9e Add MASTER_SITE_FREEBSD_LOCAL. The FreeBSD project harbors at least
337 distfiles that don't have any other master sites left.
2001-10-24 12:37:12 +00:00
espie
5906a566ef First cut at a lib-depends checker: this version does use WRKINST instead
of the actual package, so it WILL get things wrong in some multi-packages
case.
2001-10-24 11:57:34 +00:00
espie
22c02484ba More helpers: scan WRKINST for list of all needed libraries.
The chroot is needed to avoid having ldd pick up dependent libraries
that come from a package variant and are actually not needed as
dependencies.

Scan /usr, /usr/X11R6 for system libraries, and WRKINST for packaged
libraries.
2001-10-24 11:53:54 +00:00
espie
e9324ae683 Internal target: create list of all libraries we're allowed to depend upon. 2001-10-24 11:49:45 +00:00
espie
975eb63fc2 bulk-do, a slightly more generic version of bulk-packages 2001-10-24 11:47:41 +00:00
espie
e1b9d65421 Cleaning out an installed package that is not there should not abort the
make.
2001-10-24 11:44:35 +00:00
espie
51cf601625 More verbose default maintainer 2001-10-24 11:43:06 +00:00
espie
4357d41f96 Give dependencies a fighting change, spell early_exit correctly. 2001-10-11 00:01:27 +00:00
todd
16bf411ce4 add regress, ok espie@ 2001-10-08 22:04:43 +00:00
espie
23b9b0affa REGRESS_IS_INTERACTIVE
This makes things a bit less symetric, but it can't really be avoided
since regress is out of the normal build chain.
2001-10-07 11:30:30 +00:00
espie
cc0048df1e In retrospect, just allow REGRESS_FLAGS. This would be redundant otherwise 2001-10-07 10:53:43 +00:00
espie
e7fbc2b015 Seems like we can't avoid REGRESS_ENV/REGRESS_FLAGS.
Some testsuites use HOME to test their getenv function. Which seems
to be reasonable. But we definitely don't want to allow HOME into
MAKE_ENV by default.
2001-10-07 10:50:47 +00:00
espie
9e6fd66baf don't depend on the current version of unzip/bzip2. Any should do. 2001-10-07 10:47:01 +00:00
brad
374b66336a woops, didn't mean for this bit to go in. 2001-10-06 01:38:03 +00:00
naddy
3b4a858b92 deal with revised FULLPKGNAME semantics; ok espie@ 2001-10-06 01:09:08 +00:00
espie
3ad730108d synch with new regress target (I forgot to commit this) 2001-10-05 07:26:50 +00:00
naddy
14ef0e4541 fix PATCH_LIST absolute path handling in case of missing PATCHDIR
ok espie@
2001-10-04 22:43:45 +00:00
espie
5da704a0f9 typo 2001-10-04 22:20:38 +00:00
brad
000233dd2d libtool 1.3.4 and 1.3.5 patches in a central location for ports to use. 2001-10-03 14:47:01 +00:00
espie
90787b9a17 basic regression testing framework. 2001-10-03 08:53:18 +00:00
espie
548eff5cee move error handling later for greater flexibility.
Move default NO_* after including local Makefiles.
2001-10-03 08:41:16 +00:00
espie
c202780cad In bulk, ftp/cdrom must be non interactive as well. 2001-10-03 08:36:25 +00:00
espie
aac1c8b95c make sure config.guess is executable. 2001-09-30 17:14:33 +00:00
espie
6953d535fa More stringent PERMIT_* checking: if any info is missing, assume
the maintainer made a mistake, and turn everything to No.
Record it as _BAD_LICENSING for describe purpose.

Yep, having this as ERRORS is obnoxious.

Then, we can rely on PERMIT_* always being defined.

Rewrite ftp-packages/cdrom-packages to use more current rules. Fixes
naddy's issue of ignoring IGNORE.  Use a .for loop, since those rules
are basically identical.

No longer use them to try and record port logging, as we have a much better
script to do that.

`Enhance' bulk-packages to do ftp-packages/cdrom-packages linking as well,
so that one single sweep of the tree should be enough for everything.
2001-09-30 12:26:57 +00:00
espie
13b952cc81 Enforce /nonexistent for non-package/install/reinstall dep. 2001-09-30 11:27:05 +00:00