Commit Graph

570 Commits

Author SHA1 Message Date
brad
05d97a9773 consistency nit, add missing braces. 2001-04-18 15:00:53 +00:00
espie
701a95b5b2 Misc. small tweaks.
- let USE_MOTIF be sensible: any, openmotif, lesstif.
any triggers a lesstif flavor.
- show=name as a shortcut.
- package-dir-depends to check that packages are okay.

- error message for non-existent dirs.
2001-04-18 14:43:55 +00:00
espie
8a4e5086b5 Add SUBPACKAGE to INSTALL_COOKIE so that stuff such as
SUBPACKAGE=-thingy make install
works sanely.
2001-04-17 21:40:36 +00:00
espie
f7db65c8f4 Use same code as bsd.port.mk 2001-04-17 16:48:07 +00:00
espie
d646d4880c - Fix FULLPKGPATH again. I missed it in naddy's buggy bug-fix.
- save subdir into package, that's what is useful, since the name is
already there.
- check that SUBPACKAGE is a member of MULTI_PACKAGES.
Make make SUBDIR=misc/fileutils,-ls  work without error.
2001-04-17 16:45:14 +00:00
naddy
7f46795af3 Handle multiple flavors in package paths. ok espie@ 2001-04-16 21:40:04 +00:00
espie
8ae73df6f3 Add NO_SHARED_ARCHS, useful with NOT_FOR_ARCHS 2001-04-14 16:49:53 +00:00
espie
9dbd067f7d Proper quoting in build depends too. Discovered by avsm@.
Slightly more intricate, because we can't quote each value
indiscriminately, simplest way is to move the for loop from shell to make.
2001-04-12 20:35:59 +00:00
espie
39a760c88e aesthetical tweaks.
Oh, and uninstall doesn't need to remove the package cookies, obviously.
2001-04-11 16:06:07 +00:00
espie
35158dc67b define NEW_DEPENDS as yes. More consistent with the rest of the file. 2001-04-11 15:55:34 +00:00
espie
71f290aa08 protect dependencies from shell expansion.
Noticed by avsm@
2001-04-09 23:16:50 +00:00
espie
6bac4e3df0 Turn NEW_DEPENDS on 2001-04-08 16:56:22 +00:00
espie
a930aa16bf FULLPKGPATH is PKGPATH plus flavor/multipackage modifiers.
Use it where we can, including WRKOBJDIR `real' names.

NOTE: if you are using WRKOBJDIR, *all* flavored builds directories
will change  names, from work-no_x11 to work,no_x11
2001-04-08 16:55:17 +00:00
espie
907db990a1 ...without breaking things 2001-04-08 16:50:13 +00:00
espie
ea034965e1 Store PERMIT_PACKAGE_* in PLIST. 2001-04-08 16:49:26 +00:00
espie
4d85ac4a33 reset IFS so that dir-depends will work correctly. 2001-04-04 09:55:34 +00:00
espie
3b0481a403 New Features for NEW_DEPENDS:
dir-depends: list of SUBDIRS this port depends on (with flavors, subpackages),
to use with tsort.
build-depends-list, run-depends-list: list of pkgspec:dir needed for this
port, no recursion. To use for INDEX.
2001-04-04 08:17:31 +00:00
espie
b1aa09605d I missed one package cookie 2001-04-04 08:03:59 +00:00
espie
a54dee276a derive _ALWAYS_DEP from _ALWAYS_DEP2 (and friends) so that pkgspec don't
interfere.
2001-04-02 21:08:49 +00:00
espie
5c979b3753 Compute `new dependencies' if NEW_DEPENDS is defined. 2001-04-02 11:50:25 +00:00
espie
6d478c82a8 Some comments 2001-04-02 11:45:11 +00:00
espie
8edb444009 Remove stuff that is often duplicate, and causes only bogus warnings. 2001-04-02 11:32:32 +00:00
espie
15f663ed60 revise the way package multi-builds are handled.
- move FLAVOR_EXT up so that WRK* are correct when they're needed for
dependencies.
- build a list of _PACKAGE_COOKIES, one for each subpackage.
- let package go through an indirection:
package: ${_PACKAGE_COOKIES}

_PACKAGE_COOKIE_${SUB}:
	SUBPACKAGE=${SUB} ${MAKE} _package

so that all packages are `flat', and subpackages can depend on each other
freely.
2001-04-02 10:35:51 +00:00
espie
c8d7665254 Add FLAVOR_EXT to the list of substituted variables (deprecate ${FLAVOR}
in packing lists).
2001-04-02 10:16:59 +00:00
espie
5ce94b79e1 Repair IGNORE. I forgot to move this around when the rest needed
rearranging. Found by naddy@.
2001-03-29 19:01:05 +00:00
espie
11ff28f808 Restore REPORT_PROBLEM functionality.
I don't see what the hell sh is doing erroring out in an eval in a test,
even under set -e.
2001-03-28 16:37:27 +00:00
espie
673de31adf typo 2001-03-28 15:07:05 +00:00
espie
acf0fc7a70 Distinguish between no flavor seen (default flavor) and empty flavor seen
(empty flavor).
2001-03-28 15:04:34 +00:00
espie
01e30c116d Due to the way make is working, flavors passed as `make FLAVOR=a'
don't work, as they propagate down subdirs.

Use `FLAVOR=a make' (sh) or `env FLAVOR=a make' (csh) instead.

Error out with a useful error message if old usage is encountered.
2001-03-28 15:01:01 +00:00
espie
062a4a9eb7 Missed one in back-porting my diff 2001-03-28 14:50:17 +00:00
espie
656c37a943 dir -> dir[,-multi][,-flavor...] notation for dependencies. Finally ! 2001-03-28 14:33:24 +00:00
espie
b793933200 Slight optimisation:
always define _ALWAYS_DEP, _BUILD_DEP, _RUN_DEP and test for emptiness
instead of definedness, so that the code is still optimized away when
dependency lists are defined, but empty.
2001-03-28 12:15:26 +00:00
espie
0d35a51ad3 Use error=true/false instead of error=0/1 (consistency) 2001-03-28 11:52:20 +00:00
espie
e941296cc0 Move dependency checking above targets, so that it can be changed to
generate cookies for each dependency.
2001-03-28 11:48:12 +00:00
espie
3ca1304f6a Trim documented parts. Give default values to NO_DEPENDS, NO_BUILD 2001-03-28 11:43:16 +00:00
espie
85dc6dca9c More regularity, use $@ to regenerate target cookies 2001-03-28 11:32:29 +00:00
espie
59c853bcdf ... and to the list of targets too, oops. 2001-03-28 11:28:31 +00:00
espie
87006647c2 Add rebuild target 2001-03-28 11:27:18 +00:00
espie
a6396841cb Handle parsing the flavor/multi-package part internally.
Use eval to simplify passing those to submakes.

Note that the preferred separator is ',', not ':'.
(Because ':' can't be used unambiguously in *_DEPENDS, whereas ',' can)
2001-03-28 11:19:33 +00:00
espie
cd2b7ae81b Move DUDS handling to makefile level 2001-03-28 10:55:52 +00:00
espie
87d90f5e43 Add NOT_FOR_ARCHS 2001-03-28 10:25:38 +00:00
espie
1ee9c9c4ea Repair setting of PKGNAME/FULLPKGNAME dependning on Flavor.
These should override a default setting of PKGNAME, since in that case,
PKGNAME only holds the name for the main package.
2001-03-25 20:35:35 +00:00
espie
6438a9450e ... and don't forget to include FULLPKGNAME here either. 2001-03-22 00:23:15 +00:00
espie
59abb51a42 _FEXT -> FLAVOR_EXT, make this visible
FULLPKGNAME as a knob for ex ${PKGNAME}-${_FEXT}, so that python
and others can tweak it directly, without needing post bsd.port.mk
tweaks.
2001-03-22 00:22:36 +00:00
espie
e568d53c54 Consistency (Peter Fritchman) 2001-03-17 11:16:38 +00:00
espie
e82e5409a7 Allow for COMMENT-foo= inside the Makefile.
NetBSD did this a while ago, this is a natural idea. It just took me
some time to figure out how to do that in a MULTI_PACKAGE context,
while maintaining compatibility with existing stuff.
2001-03-16 14:56:41 +00:00
espie
5130db70d1 Simplify MULTI_PACKAGES, allow for PKGNAME-foo=value 2001-03-16 14:54:40 +00:00
espie
a199bcb59a Create an intermediate mtree.spec that is used for fake installations.
Use of VAR_SUBSTS will solve a few nasty problems.
2001-03-06 18:59:38 +00:00
espie
8c07bce4dc Add `===> Checking files for pkgname' line to simplify automatic
recognition of various package builds.
2001-03-01 00:01:40 +00:00
espie
6bc4c47f7f Rework the dependency framework.
* pull every dependency under the same rule, using specialized fragments.
* re-check after the dependency is expanded, unless earlyexit is true.
* explicitly recognize /nonexistent as a specific way to have always
triggered dependencies, use it to handle DEPENDS in a uniform way.
* parse dependencies fully. Note that we know have a pkg variable that will
be used.

Thanks to naddy@ for useful tweaks.

This is probably not quite perfect yet, stuff may break. Other stuff that
remain to be done:

- handle library dependencies better, so that lib.10 will match only
lib.10.x and not lib.100.
- handle default FLAVORS correctly. This involves not
passing FLAVOR='', but rearranging ${MAKE} ${_DEPEND_THRU} to remove
FLAVOR from the environment and from MAKEFLAGS (yucky).
2001-02-24 22:02:08 +00:00
wilfried
4dbdfa7f73 We want to test if the variable is defined,
not the value it may have.
2001-02-15 21:51:32 +00:00
wilfried
f13fccbaf2 set variable before we use it, ok espie@ 2001-02-13 12:09:07 +00:00
espie
07876a6c8e Run pkg_create under ${SUDO} and fix the owner afterwards when needed.
The cleaner fix would be to create the package to stdout under SUDO
and redirect it, but that junk (pkg_create) is actively fighting that.

God, I've got to rewrite it and retire that crap.
2001-02-10 13:50:13 +00:00
espie
74d58c4e80 Fix DEF_UMASK check, should take ${SUDO} into account.
This ought to please naddy and avsm...
2001-02-10 13:47:54 +00:00
miod
18f01cdf24 Don't mention LICENCE_TYPE anymore 2001-02-03 01:14:52 +00:00
espie
02d5954552 move variables that only belong in old-install.mk to old-install.mk
Kill old work-arounds that are no longer needed since 2.8 came out.
2001-01-18 14:58:16 +00:00
brad
386156aa3c eliminate NO_CDROM and make the use of :U/:L consistent. Ok'd by espie@ 2001-01-08 22:34:51 +00:00
espie
cd8425b805 Always make TRUEPREFIX/DESTDIR available 2001-01-08 22:10:36 +00:00
espie
fc2ad74c6f Less comments, see bsd.port.mk(5) 2001-01-08 22:09:24 +00:00
espie
45af2405c8 indentation 2000-12-23 12:27:17 +00:00
espie
c754691700 take the old non-fake code out of line, for greater clarity (and since
it's so seldom used now).

Remove a few targets that are not really needed (mirror-distfiles, use
mirror-maker instead).

More changes to fake to come, once they've been properly tested.
2000-12-23 12:25:57 +00:00
espie
78564b0e02 link-categories/unlink-categories target:
populate ports tree with symlinks.
2000-12-16 15:49:12 +00:00
espie
12dc728de6 Enforce directory check in dependencies, so that link-category can come
alive (since ports can now be symlinked, porters need some strong check
so that they don't create bogus dependencies).
2000-12-16 15:47:35 +00:00
espie
7a7b37f54b Remove compatibility scaffolding for EXTRACT_CMD, EXTRACT_BEFORE_ARGS,
EXTRACT_AFTER_ARGS
2000-12-16 15:44:35 +00:00
espie
ec30af29cd Fix build of README.html (use PKGPATH) 2000-12-14 13:13:53 +00:00
espie
bf4b1ad7bb Add extraction support for shell archives (.sh, .shar, .shar.gz...) 2000-12-14 13:08:59 +00:00
espie
046b0ff608 Remove documentation that is now in bsd.port.mk(5) 2000-12-01 16:31:11 +00:00
espie
3b7559aaec With the new MAINTAINER format, this looked weird 2000-10-22 16:31:38 +00:00
espie
02eb4f9304 Kill USE_AUTOCONF, USE_IMAKE, NO_INSTALL_MANPAGES, HAS_CONFIGURE,
GNU_CONFIGURE.
2000-10-22 16:06:25 +00:00
espie
6c4a978b24 Fed up with *idiots* that never read the documentation. 2000-10-02 07:53:24 +00:00
espie
b2cefd992a Typo. 2000-09-23 22:03:21 +00:00
espie
20a00a6871 Use CONFIGURE_ENV/CONFIGURE_ARGS for perl-style configure 2000-09-23 12:40:27 +00:00
espie
a160ede9d2 Don't change the semantics of the patch target if BATCH is defined,
this is stupid (BATCH is only there to skip IS_INTERACTIVE ports).

Make PATCH_CHECK_ONLY a Yes/No switch.
Let it be a slightly better no-op, e.g., skip creating the cookies
in checkpatch operation.
2000-09-23 12:36:39 +00:00
espie
d5248f008e thinko 2000-09-22 02:20:30 +00:00
mickey
90a44e010d @ the echo so we only the message 2000-09-19 14:14:52 +00:00
espie
d218af1299 INSTALL_MACROS does not need to be visible. 2000-09-17 16:26:57 +00:00
espie
09ff1c0242 Clean PATCH_DEBUG handling 2000-09-16 13:54:56 +00:00
espie
fae88b0133 Documentation clean-up: group deprecated variables, clarify
MAINTAINER comment. List bsd.port.mk(5) as the future source of
documentation.
2000-09-13 14:06:55 +00:00
espie
6b10c1319a Fix dependency problem linked to make's POSIX rules.
Reported by Camiel, thanks.
2000-09-13 13:49:51 +00:00
marc
6ddcd6e2f2 distclean: don't puke when _DISTFILES and _PATCHFILES are empty
prob found by Jeremie Kass <jeremie@umich.edu>
2000-09-12 02:52:01 +00:00
espie
e35f4db285 Deprecate old EXTRACT_* variables.
Use some weird code to allow backward compatibility.
Rely on distfiles suffixes and a case statement (with matching variable
EXTRACT_CASES) to allow distinct extraction rules for multiple distfiles.
2000-09-11 18:06:24 +00:00
brad
b44aa7212b oops, fix cut and past-o. vax -> hppa 2000-09-07 04:20:54 +00:00
brad
ec463c63b8 enable shared libraries on powerpc 2000-09-07 04:14:44 +00:00
espie
996e841d00 Add SYSCONFDIR to SUBST_VARS. 2000-09-05 17:27:45 +00:00
espie
df7514664f Kill CDROM_COPY/CDROM_OPT. Nothing really needs them. 2000-09-03 16:00:49 +00:00
espie
5f92cc296f current make passes flags through to submakes, no need to subvert
AM_MAKEFLAGS for this.
2000-08-28 22:42:00 +00:00
espie
c242d633e5 make from current handles recursive variables just fine. 2000-08-28 22:38:37 +00:00
brad
1aa3076045 now that the ports tree is tracking -CURRENT, make use of ldconfig -U for
NEWDYNLIBDIR
2000-08-22 23:10:38 +00:00
espie
0757d4020d Base _SEP on PKGPATH being empty, more robust 2000-07-26 12:47:16 +00:00
miod
45ffc7a496 Make _CDROM_OVERRIDE work again 2000-07-21 02:38:33 +00:00
naddy
4d89af4f75 fix "show" target to correctly display variables that contain
shell metacharacters; ok espie@
2000-07-19 22:36:32 +00:00
espie
f02479f386 Buglet: ensure PKGPATH is without a /.
This complicates bsd.port.subdir.mk slightly (needs to set _SEP),
but at least it's consistent.
2000-07-17 07:11:50 +00:00
espie
4bf4de0012 DEPENDS lib:path -> lib::path here as well.
(getting ready to drop back support for lib:path, so that we may do
lib📦path support and similar fun things)
2000-07-14 23:07:25 +00:00
espie
837cf24d7c Change PORTSUBDIR/DIRPRFX to PKGPATH (avoid gratuitous naming
incompatibility with NetBSD).

This patch rearranges code so that PKGPATH is maintained
- when recursing into subdirs,
- when computing dependencies.

So that this reduces the number of `pwd` calls overall.
Should be especially noticeable for mirror-maker.
2000-07-14 23:01:11 +00:00
espie
0d0e665869 Make mtree invocation path explicit (rohee@) 2000-07-11 10:32:22 +00:00
espie
5ef9c5c473 Remove work-around for pre 2.7 ftp/make bug with dates. 2000-07-07 15:49:32 +00:00
espie
5e279084af Put shared libraries into a separate fragment. 2000-07-03 13:01:47 +00:00
espie
5077fbe88a Fix up comment. 2000-06-30 21:48:50 +00:00
espie
87e3a78b63 Remove ldconfig mess from packing-lists, let a sed script generate the
right instructions from DYNLIBDIR(dir) or NEWDYNLIBDIR(dir)
2000-06-30 21:42:36 +00:00
espie
4db20c876c Remove kludge for PLIST.sed
All PLIST are substituted, and all PLIST.sed have been removed from
the tree.
2000-06-28 15:06:26 +00:00
espie
e0673fa6b0 Pass FLAVOR in the environment, to allow for some manipulations... 2000-06-24 14:12:33 +00:00
espie
14b844e500 Since we are generating the PLIST, add the full package name as a comment,
may be useful later.
2000-06-20 16:51:23 +00:00
turan
8d0dc5836d spelling errors in all-packages target. 2000-06-18 23:35:02 +00:00
espie
08aacef06e Fix DESCR/INSTALL/DEINSTALL names for old-style ports.
Based on something that looked remotely like a bug-report by
Michael H. Price II (no details at all, except `lsof is broken')
2000-06-18 23:27:03 +00:00
espie
81a53c2590 Create all packing information under a subdir of WRKDIR (WRKPKG).
WRKPKG should seldom be changed, unless it conflicts with the port's
actual naming conventions (default is ${WRKBUILD}/pkg).

Substitute stuff in INSTALL/DEINSTALL script as well.
The only drawback is that those LOOK like shell variables, but are actually
simple sed substitution.
Preconise a style such as
prefix=${PREFIX}
(then use ${prefix}) to avoid confusion.
2000-06-16 23:53:40 +00:00
espie
1dbe92f1ae Remove NO_EXTRACT/NO_PATCH/NO_CONFIGURE 2000-06-16 23:10:41 +00:00
espie
e04a85bdd5 NO_INSTALL_MANPAGES -> CONFIGURE_STYLE=imake noman 2000-06-13 01:48:17 +00:00
espie
d3f7169889 Set ac_given_INSTALL to the same value as INSTALL for gnu-configure
invocations. This works around a bug in autoconf-generated scripts that
is present up to autoconf 2.13.

In recursive configure, INSTALL is re-set from ac_given_INSTALL, to handle
relative paths correctly. However, sometimes ac_given_INSTALL hasn't been
set yet, and we end up with a `BSD compatible INSTALL' of ../
2000-06-12 02:09:22 +00:00
espie
2a2b19e211 Handle CONFIGURE_STYLE=autoconf correctly 2000-06-10 17:21:33 +00:00
espie
b1a5029c53 Forgot to handle legacy HAS_CONFIGURE
(+typo spotted by brad@)
2000-06-10 17:15:06 +00:00
espie
84e942de0b Extend CONFIGURE_STYLE to deal with GNU_CONFIGURE, HAS_CONFIGURE,
DESTDIR tweaks for fake, old-style gnu-configure (no sysconf), imake,
and autoconf...
2000-06-10 15:27:54 +00:00
espie
8ec35a8628 Missing SUDO in reinstall target for fake ports. 2000-06-09 20:59:46 +00:00
espie
571b2d1140 Add EXEC=exec indirection to mirror-maker,
so that broken OSes (slowlaris) can say 'make EXEC=/bin/ksh' and
use the target.
Thanks, Bob (beck@)
2000-06-09 19:34:31 +00:00
espie
db23a7cde1 Document deprecated variables. 2000-06-09 18:37:31 +00:00
espie
f954b21f3a Tweak generated PLIST name, to avoid collisions with ports that brew
their own (compatibility hack, to remove once ports have been cleaned up).
2000-06-09 16:31:54 +00:00
espie
0ea371c386 Generate PLIST, MESSAGE, DESCR from templates systematically.
- the PLIST, MESSAGE, DESCR variables refer to the sources.
- files are generated under ${WRKBUILD}, always.
- SUBST_VARS refer to the variables being substituted. ARCH,
  HOMEPAGE, PREFIX are always substituted.
  Use $\{VAR} to escape substitution.
Plus ${FLAVORS} -> -flavor1-flavor2  for PLIST.
- the %%FRAG%% and %%!FRAG%% notations are always used for PLIST.
- SED_PLIST can be augmented if needed.

Plus some compatibility kludges with the current situation.
2000-06-09 16:26:54 +00:00
espie
be6611a11f Support COMMENT=-string
(specifically, to allow all-in-one-Makefile stubs for all ports)
2000-06-09 16:18:42 +00:00
espie
301a61292d Display `cleaning for' at the right point.
Somehow, this got swapped.
2000-06-07 15:46:15 +00:00
brad
dbff997122 ports-admin@ -> ports-maintainers@ 2000-06-02 14:37:17 +00:00
espie
ac5cf880c7 Add standard method for perl MakeMaker configuration 2000-06-02 11:42:53 +00:00
espie
7b9d1b5044 - tighten regexps for PLIST_SED, to avoid accidental matching for fragments.
- repair clean-depends... it was broken quite a few months ago. I suspect
I'm the only one who uses this.
2000-06-01 17:33:53 +00:00
marc
bc45a59758 use with uninstall 2000-05-31 22:37:42 +00:00
espie
8dd54038fb Let package cookie depend on package components (plist, descr, etc) 2000-05-30 16:39:04 +00:00
espie
8dc2e5c332 Turn
FAKE=Yes
on by default
2000-05-30 14:51:59 +00:00
espie
43485e7a39 Define WRKINST always.
Exchange WRKINST tests for FAKE tests, more logical.
2000-05-30 14:44:23 +00:00
espie
20e71af37d Add duplicates check to packing list 2000-05-29 16:43:35 +00:00
espie
eb03402014 Add PLIST.sed substitution
!%%fragment%% -> PFRAG.no-fragment
Useful for no_X11-like flavors.
2000-05-22 13:43:55 +00:00
espie
2fcec6e645 Don't show `make plist' internals under fake, it works good enough that
we don't need to debug it.
2000-05-18 19:59:21 +00:00
espie
9b1a639bff Add REFETCH mechanism, effective once ftp.openbsd.org is populated with
checksum links.
2000-05-17 12:41:28 +00:00
espie
0bc51803ca Use exec to strip a large number of intermediate shells that don't serve
any useful purpose except for eating up PCB.

Not sure whether this is a ksh bug or not, but this is at least a fine
work-around.
2000-05-17 12:14:53 +00:00
espie
6c54029712 pre-fake needs SUDO 2000-05-17 00:22:39 +00:00
espie
361e5cd773 Use setenv -i, for predictability. 2000-05-16 18:14:29 +00:00
espie
e0eb5fc9ba Support ${SUDO} 2000-05-16 17:06:46 +00:00
espie
ada699dfa0 Switch back to ${MAKE}. Pointed out by Todd Miller.
${MAKE} is special, it's set by make itself, and should be relied upon
to be sure we reinvoke the same make we started out with.
2000-05-16 15:54:17 +00:00
espie
b7252d84ea Missed phony target 2000-05-16 15:13:28 +00:00
espie
77af5027a8 Remove lots of extra shells in the mirror-maker Makefile. 2000-05-16 14:40:28 +00:00
espie
b2d1296094 Passing flavors along while computing dependencies is a bad idea,
use _DEPEND_THRU uniformously.

Note that this actually needs something very similar to what is used
in bsd.port.subdir.mk to work.

In particular `default' FLAVORs not being empty is probably a bad idea,
and won't work uniformously.

The right way to set a default flavor is probably to:
- not have empty as a valid flavor.
- do things in two steps:
FLAVOR?=default
.if empty(FLAVOR)
FLAVOR:=default
.endif

so that flavor always gets set correctly.
2000-04-22 19:20:12 +00:00
espie
af038eb990 Dependency bugfix:
subpackage cookies ought to depend on {fake,install}_cookie as well.
2000-04-22 18:57:00 +00:00
espie
7e961a38e0 hook to call update-patches, and call your fave editor on the changed
patches.
2000-04-19 14:37:19 +00:00
espie
b8fc9fef8e MULTI_PACKAGES needs to be propagated to all-package, ftp-packages,
cdrom-packages as well.

Use _sub for loop variable name, to work around an obscure make bug.
2000-04-18 23:20:49 +00:00
espie
60cd07e54e Missed SUBPACKAGE in PFRAG.shared 2000-04-18 20:13:48 +00:00
espie
1f9278cd57 Handle NO_DESCRIBE like NO_PACKAGE for MULTI_PACKAGES. 2000-04-18 17:35:09 +00:00
espie
3639222585 Always define a FAKE_COOKIE, so that FAKE="No" will display an error message. 2000-04-17 21:53:38 +00:00
espie
999cccb78e buglet fix: let the port+flavor directory show up in a form suitable
for direct SUBDIR reuse.
2000-04-17 20:14:33 +00:00
espie
6c6c933ec0 MULTI_PACKAGES framework.
This is somewhat orthogonal to FLAVORS.

Principle: one port may build several packages in one go.
For instance, egcs will build all compilers, and package stuff as
base, C++, Fortran, etc.

This simplifies some japanese ports greatly, e.g., one Canna port that
builds libs/server/app packages.

How to use:
just set
MULTI_PACKAGES=-ext1 -ext2...
in the Makefile.

Then make package will invoke itself recursively with SUBPACKAGE set to
-ext1, -ext2.

The SUBPACKAGE will fetch package info as PLIST-ext1, COMMENT-ext1,
DESCR-ext1, etc.

The port Makefile itself can test the value of SUBPACKAGE if things differ.

Some problems:
- there still is a main package (with PLIST, DESCR, etc), and it's built
last, so you can't add RUN_DEPENDS=main_package to subpackages, you have
to encode them explicitly in the PLIST for now.
- other ports can't depend on subpackages yet. This is usually not a
problem, it's just a question of choosing the `right' main package (e.g.,
for Canna, it will be canna-lib).
- PLIST.sed recognize @FLAVOR@, which is extended to the current flavor,
so that a subpackage may depend on the corresponding main package in
explicit ways.


describe is also invoked recursively, so that all subpackages appear in
the INDEX.
2000-04-17 20:12:03 +00:00
espie
46f238e655 Common definitions into _FAKE_SETUP to shorten and simplify fake target. 2000-04-16 21:41:07 +00:00
espie
8bc36bb0e8 Add @ 2000-04-16 20:59:22 +00:00
espie
25cc866faf Don't add FLAVOR='' to ports without flavor, let default be picked up
instead.

Allow for ',' as a FLAVOR separator instead of ':'
2000-04-16 20:10:21 +00:00
espie
7007246e58 Bug-fix: take ${_FEXT} into account for WRKOBJDIR. 2000-04-15 18:46:08 +00:00
espie
2cb07b50e6 Flexibility in recursively entering subdirs. 2000-04-10 17:51:26 +00:00
espie
bee18ac785 Somewhat simpler {ftp/cdrom/all}-packages, depending on real files. 2000-04-10 01:11:36 +00:00
espie
aebf80dccd ALWAYS_PACKAGE: if defined, let install depend on _PACKAGE_COOKIE as well.
Use this for the {all,cdrom,ftp}-packages targets instead of unreliable
DEPENDS_TARGET.
2000-04-10 00:42:02 +00:00
espie
86ec251992 Typos 2000-04-09 23:57:58 +00:00
espie
fd5775bd31 Need to include Makefile.inc sooner. 2000-04-09 15:24:13 +00:00
espie
6a4876d0a3 Let fetch-all use the same magic invocation as mirror-distfiles 2000-04-09 15:05:52 +00:00
turan
2c979f178d ftp-packages, cdrom-packages targets. These are the targets I use
to build packages and log them.
2000-04-09 12:04:13 +00:00
espie
4abb7edb2e Fix MANPREFIX for FAKE, reported by Chris Turan. 2000-04-09 11:51:39 +00:00
espie
976871dda9 Fix bug in IGNORE logic. 2000-04-09 11:34:01 +00:00
marc
be9e927863 Change PACKAGES so the arch part of the name. Allows nfs mounted
ports tree to be shared by hosts of different types.   Note: you
may want to do something like this to move any existing packages:
cd /usr/ports/packages
mkdir .tmp
mv * .tmp
mv .tmp sparc
patch approved by espie@
2000-04-08 23:11:15 +00:00
espie
4c57808e2a Use flavor in WRKINST/WRKBUILD name.
Optimize space: if SEPARATE_BUILD contains `flavored',
one WRKSRC for all flavors is enough.
2000-04-03 17:32:42 +00:00
espie
85588b0976 Fix SED_PLIST behavior for flavors.
- test for NO_SHARED before reading PFRAG.shared
- pipe several sed together, otherwise keyword recognition won't work
in fragments.
- put PFRAG.shared replacement at front, so that further flavor will
use it.
- various typos...
2000-04-03 17:09:12 +00:00
espie
67e926898f Typo 2000-04-02 18:35:41 +00:00
espie
3d1fe0aec8 Force packages to always go the PKGREPOSITORY, creating it if needed.
Add PKGREPOSITORY to PKG_PATH before pkg_add.

Thanks to aaron, fries, and mickey.
2000-04-02 18:08:31 +00:00
espie
fc07fe0209 Typo 2000-04-02 17:55:45 +00:00
espie
f40fde3df2 Don't propagate DEPENDS_TARGET more than one level deep. 2000-04-02 16:42:27 +00:00
espie
80ebdbdd46 Try to detect people who are not running X-current and tell them about it. 2000-04-02 10:47:54 +00:00
espie
ace22d7082 Oops, make sure FLAVOR is always defined... 2000-04-01 15:49:06 +00:00
espie
46c0b103d1 Add :${FLAVOR} to directory if exists. 2000-04-01 14:57:24 +00:00
espie
bd6d540929 Pass `show VARNAME=' to subdirs. 2000-04-01 14:54:49 +00:00
espie
92252853ec More uniform way to find PLIST, handles more flavors. 2000-03-31 18:51:09 +00:00
espie
0a6b34278e Include guard to avoid getting bsd.own.mk twice. 2000-03-31 18:05:28 +00:00
espie
b4e3992524 Typo 2000-03-30 02:09:31 +00:00
espie
14b5082c96 Depend on the `package' target of subpackages for installing fake packages.
This means that sub packages *won't* be installed, except as an effect of
pkg_add...

Helps finding problems with pkg_add.
2000-03-29 16:34:45 +00:00
espie
cec50f3a08 Flavored ports 2000-03-29 15:59:50 +00:00
espie
07d9ab40f2 Don't record ${PREFIX} in index if it's equal to ${LOCALBASE} 2000-03-28 09:27:03 +00:00
espie
c8a414183a Remove PORTSDIR from describe:, in portsubdir, and in descr.
(noticed by turan, quick and dirty implementation until I clean the
DIRPRFX mess)
2000-03-27 01:52:17 +00:00
espie
45720d825b USE_X11 should mark ports that need X11, but don't say anything about
where they install.

E.g., DON'T TOUCH USE_X11 in existing ports for now, we'll see how we
go about them.
2000-03-26 21:23:20 +00:00
espie
1cbff6e6d1 Trim sed, using same techniques I already did for bsd.port.mk. 2000-03-26 16:57:42 +00:00
espie
a2df2dc131 Missed PORTSDIR in fetch-list. 2000-03-26 16:01:08 +00:00
espie
5503443dd9 Propagate RECURSIVE_FETCH_LIST in a less hackish way. 2000-03-26 15:59:41 +00:00
turan
f77ccdb0f2 MTREE_FILE fix. Some ports did not pass MTREE_FILE into make-plist. 2000-03-24 20:44:01 +00:00
espie
eac4754f84 Crude check for broken links in fake install. 2000-03-21 21:23:54 +00:00
espie
3616337cda No need to display MESSAGE at the end of fake install, for obvious
reasons...
2000-03-21 21:06:58 +00:00
espie
b9822f231d Remove references to ancient versions of LIB_DEPENDS. 2000-03-19 16:46:18 +00:00
espie
17c6fd0f42 Strip :: -> : in dependencies.
(to provide for a seamless way to insert MORE in dependencies)
2000-03-19 16:11:41 +00:00
espie
672066dedb A few PORTSDIR I didn't remove... 2000-03-19 16:04:19 +00:00
espie
5e5e9ef727 app-defaults kludge needs to have a test around thanks to ln semantics. 2000-03-19 01:52:46 +00:00
espie
a609419a73 Let X11 ports install under /usr/local 2000-03-18 17:01:34 +00:00
espie
dbb77da3c4 pre-fake target:
finish setting up WRKINST tree after mtree, but before making the
INSTALL_PRECOOKIE.

See /usr/ports/print/teTeX/base for sample use.
2000-03-10 18:09:23 +00:00
espie
47d1583a64 Fix build-depends/recurse-build-depends to work with PORTSDIR removed.
(no, I'm not going back and adding NEED_VERSION everywhere...)
2000-03-08 00:07:37 +00:00
espie
0754f5f4fb Pass TRUEPREFIX, PREFIX, DESTDIR to pre-install, do-install, install targets
in FAKE mode, to simplify conversion.
2000-03-07 16:14:20 +00:00
espie
d9952f7414 Switch to ${PORTSDIR} before evaluating any dependency.
Makes ${PORTSDIR} in dependencies redundant.
2000-03-05 16:40:52 +00:00
espie
b183552d26 If DISTFILES + PATCHFILES = ALLFILES is empty, no fetch is needed... 2000-03-05 16:33:38 +00:00
espie
2d41326fbf streamline SUBDIRUSE 2000-03-05 16:20:02 +00:00
espie
fffd628669 Document NO_PATCH. Indent stuff correctly. 2000-03-05 16:00:30 +00:00
espie
8285a069ca Add fetch-makefile to bsd.port.subdir.mk, mirror-maker to main Makefile.
Tweak fetch-makefile to take PERMIT_* into account, giving us the level
of control needed.
2000-03-04 18:16:02 +00:00
turan
d749ad403d remove trailing -n in make describe
pretty INDEX
2000-03-04 14:40:21 +00:00
turan
5fd5ee65d8 remove trailing | in make describe 2000-03-04 14:36:46 +00:00
turan
881504ae70 Move the test for the existance of license info up into the beginning
of fetch instead of the end of extract.  It only makes sense to do the
check in extract if we are checking the file that contains the license.
2000-03-04 08:35:47 +00:00
espie
2a525277b7 `Fake' infrastructure:
if a port sets FAKE=Yes, this means it can be `pre'-installed elsewhere,
with DESTDIR set to WRKINST (=work/fake-${ARCH} by default).

the infrastructure takes care of pre-install/do-install/post-install targets,
assuming those install stuff under PREFIX.

To help ports to cope with DESTDIR, you can set FAKE_FLAGS and FAKE_TARGET
(used for the fake installation).

Ports with FAKE=Yes are the way to go: they can be packaged directly without
a real installation, and the installation proceeds from the package, thus
forcing porters to check the package.
2000-03-03 21:24:50 +00:00