Commit Graph

284 Commits

Author SHA1 Message Date
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