summaryrefslogtreecommitdiff
path: root/Mk
AgeCommit message (Collapse)Author
1995-08-18Merge all the "skeleton" target into one macro. This is an enormousSatoshi Asami
change, but I've been testing this on thud and silvia for quite a while, also I haven't gotten any bug reports from the ports list, so I'm going to let it loose! It cleans up this file quite a bit, now I can go in and start adding some more "interesting" things.... ;)
1995-07-24Let MASTER_SITE_OVERRIDE be prepended to the MASTER_SITES list insteadSatoshi Asami
of replacing it. This way you can point it to a site close to you that carries many distfiles, and still let it go fetch from the original site if the distfile is not there. Original idea by: mmead@Glock.COM
1995-07-17Simplify the USE_IMAKE stuff considerably.Jordan K. Hubbard
Suggested by: asami
1995-07-15A regrettable hack to allow a port to say that it doesn't want its MakefilesJordan K. Hubbard
made after the xmkmf run.
1995-07-11Add IS_DEPENDED_TARGET to change the behavior of a port when you wantSatoshi Asami
to do something else than "install". For example, make IS_DEPENDED_TARGET=fetch fetch will fetch the required distfiles including those of the dependencies without actually building and installing dependencies. Also document ECHO_MSG. Requested by: paul Reviewed by: paul, jhs and others
1995-06-26UseSatoshi Asami
ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/ as our distribution point for distfiles and patches. Other than cosmetic changes (freebsd.cdrom.com -> ftp.freebsd.org), the omission of "ports" is important. I would like to move this directory completely out of the ports tree (on the ftp site), so that people who do "get ports.tar.gz" won't get a bogus distfiles -> ../distfiles symlink (which will make "make fetch" fail). Sometime around the 2.1 release, the distfiles link will be deleted.
1995-06-26Use full pathnames for the commands. Everything except gmake andSatoshi Asami
xmkmf (i.e., everything in the base distribution) should be referred to by full pathnames. Suggested by: rgrimes, originally from one of his customers
1995-06-26Check if uid is 0 before running mtree. If you aren't root, you justSatoshi Asami
get a message (instead of a bunch of crap from mtree).
1995-06-25Add new option NO_MTREE. If set, bsd.port.mk won't run mtree toSatoshi Asami
set permissions and ownerships of PREFIX (usually /usr/local). This is the default if USE_IMAKE or USE_X11 is set. This should be useful for machines like thud, where we want to keep the /usr/local subtree writable to a group ("ports" in our case). Anybody who installs stuff in /usr/local should have this set in the environment. Note this won't affect anything the pkg_* suite does.
1995-06-24Add a "checkpatch" target that does a "patch -C" instead of a "patch".Satoshi Asami
Note that the two "touch"s I took out from do-patch shouldn't have been there in the first place. This target may give incorrent results if two separate patches deal with the same file, and their hunks overlap. (But having those kinds of patches are bad, and they should be merged anyway.) Reviewed by: hsu
1995-06-06Renamed the default package repository ".../packages/.packages" toSatoshi Asami
".../packages/All". The "all" category that was automatically added for every package is gone. Note that bsd.port.mk requires category names to start with lowercase names, otherwise it may get confused. Reviewed by: jkh By the way, here is a small script to convert your local package hierarchy. Run it in bash, as /bin/sh not only will bark at the $(.) command substitution but will also botch the [a-z]*/*.tgz expansion (long-standing and annoying bug, reported before). cd /usr/ports/packages mv .packages All for i in [a-z]*/*.tgz; do j=$(basename $i) /bin/rm $i ln -s ../All/$j $i done
1995-05-29Remove comment about not being able to undefine a variable, as we *can*Satoshi Asami
do that.
1995-05-16Fix the indent level. I know we're in code freeze, and this isSatoshi Asami
one of the key components of the system, but I'm sure that this: === - ${ECHO_MSG} "===> Registering installation for ${PKGNAME}"; \ + ${ECHO_MSG} "===> Registering installation for ${PKGNAME}"; \ === change has absolutely no chance to screw us up, right? :)
1995-05-13Don't conditionalize fake-pkg on NO_PACKAGE.Satoshi Asami
1995-05-13Add FORCE_PACKAGE, if this is defined, NO_PACKAGE will be turned off.Satoshi Asami
Ports for which we can't build packages should define NO_PACKAGE but still prepare pkg/* files. The user who really wants a package and clear of the legal problems can say FORCE_PACKAGE from the command line to build a package anyway.
1995-05-12When NO_PACKAGE is set, "package" and "repackage" don't depend onSatoshi Asami
"install". In other words, they won't do anything at all.
1995-05-12Not only deleting the package and package links, also exit with statusSatoshi Asami
1 if pkg_create returns error!
1995-05-12Delete package and links when pkg_create fails.Satoshi Asami
1995-05-10Add new variable to override the "hey foobar-1.2.3 is already installed"Satoshi Asami
warning from fake-pkg. # FORCE_PKG_REGISTER - If set, it will overwrite any existing package # registration information in ${PKG_DBDIR}/${PKGNAME}.
1995-05-09Make the "reinstall" target delete the package cookie as well asSatoshi Asami
the install cookie.
1995-05-04added support for distribution patches in a subdir of ${DISTFILES}Adam David
1995-05-04Put an `@' in front of the mtree command. I don't want to see it.Jordan K. Hubbard
1995-05-02Add an mtree line to the install target.Jordan K. Hubbard
1995-04-30A bunch of new targets in the package area. Relevent targets are:Satoshi Asami
package: check installation, build package, create links, touch cookie repackage: ditto but don't check cookie package-noinstall: just build package from installed stuff, no cookies involved at all package-links create the symbolic links only delete-package: delete package and symbolic links delete-package-links: delete links only These should make the management of the spaghetti of package links a little friendlier. :)
1995-04-28Pass X11BASE to all sub-makes. I need it for a port, and I daresay thatJordan K. Hubbard
there are a lot of hardwired "/usr/X11R6" paths out there that could stand to use it as well.
1995-04-24(1) Add the chain of dependencies to the targets in the NO_* sectionSatoshi Asami
too (otherwise the chain won't work). (2) If NO_WRKDIR is set, "make clean" removes "./.*_done" (assuming these are cookies...or should I list all the cookies?)
1995-04-24Move call of fake-pkg from do-install to end of install.Satoshi Asami
1995-04-22Ok, this should get the last of the stragglers installed into a new fake-pkg.Jordan K. Hubbard
1995-04-22Don't try to run the fake-pkg target if NO_PACKAGE is set.Jordan K. Hubbard
1995-04-22Typo: patch -> packageJordan K. Hubbard
1995-04-22Instead of copying PLIST over, run pkg_create in a special mode that dumpsJordan K. Hubbard
the fully-formed PLIST to stdout and uses that.
1995-04-20Major overhaul. The major targets (fetch, extract, patch, configure,Satoshi Asami
build, install) are now all skeletons and do nothing but (1) Call pre-* target (if exists) (2) Call scripts/pre-* script (if exists) (3) Call do-* target (4) Call post-* target (if exists) (5) Call scripts/post-* script (if exists) The do-* targets do all the work. The pre-* and post-* targets/scripts don't exist by default. The main targets check for the cookies too, so porters shouldn't have to worry about them at all. NOTE: THE MAIN TARGETS IN THE PORTS MAKEFILES SHOULD GO AWAY. We need to fix this before wcarchive comes back up. Change the names to do-*, rip out the cookies, rip out the calls to pre-* etc. and most of them should work. Also, reorganize the whole thing so that similar targets are together and add more comments. Surround section header with 64 #'s (C-u C-u C-u # in emacs :). Hopefully this will be the last major change to bsd.port.mk. Now let the Makefile-hacking begin.
1995-04-191. Add Satoshi's much-requested "fake pkg_add" option to the installationJordan K. Hubbard
rule. 2. Have all non-X11 prefix using packages include the BSD.local.dist mtree file for initialization of /usr/local. I'm still not sure if this is A Good Thing(tm) but I'll see what the users say. It's easily overridden. 3. Standardise on ${PKG_DBDIR} as pointer to /var/db/pkg or local preference.
1995-04-18Use PKGNAME in the "describe" target (used to generate INDEX) too.Satoshi Asami
Didn't make sense to have two ports with the same name.
1995-04-18Use PKGNAME instead of DISTNAME in messages. To avoid things likeSatoshi Asami
"Building for WWW" (pops up in two different ports) "Installing for web2c-6.1" (ditto), which aren even't reminiscent of the port's real name. Sorry jmz, please don't go fix the print Makefiles' own messages. We are going to take them out after we do the great bsd.port.mk update anyway.
1995-04-17"package" now depends on "install", so we can do "make -k package" fromSatoshi Asami
the top level and have the build-package sequence of each port work together. For the old behavior (i.e, just go ahead and blindly pack everything up, regardless of the contents of work/), there is a new target "repackage".
1995-04-17"all" now depends on "build", not "extract configure build".Satoshi Asami
Since "build" depends on "configure", which depends on "patch", etc., this shouldn't disrupt any Makefile that doesn't break the dependency chain. The old behavior was very annoying because when I did a "make -k", it would still try to go configure and build even if the extraction failed.
1995-04-15Yikes...typo (.package/ should have been .packages/).Satoshi Asami
1995-04-10Don't pass duplicate pkgdeps to pkg_createJordan K. Hubbard
1995-04-09Add new -P argument to pkg_create.Jordan K. Hubbard
1995-04-09Add 2 new targets to facilitate some things I'm thinking about.Jordan K. Hubbard
1. package-name Simply echos the associated package name for a port (if any). 2. package-depends Shows all package names on which this port depends.
1995-04-091. Fix the first line (should be a proper comment - silly emacs).Jordan K. Hubbard
2. KEYWORDS+= CATEGORIES 3. CATEGORIES+= all (always want to be in "all"!)
1995-04-09Add support for categorized subdirectories for packages. By default,Satoshi Asami
all .tgz files go to /usr/ports/packages/.packages, and a relative symlink is created for every item in CATEGORIES...i.e., if "CATEGORIES = foo bar", then /usr/ports/packages/{foo,bar}/pkgname.tgz both point to /usr/ports/packages/.packages/pkgname.tgz. Suggested by: jkh
1995-04-04Add USE_X11 for ports which are X11 users but don't use IMAKE.Jordan K. Hubbard
1995-04-04Remove a `.' from the end of the echo lineGary Palmer
`>> Attempting to fetch from $${site}' as it is misleading
1995-04-01By default, KEYWORDS is a copy of CATEGORIES.Jordan K. Hubbard
1995-04-01Add default values and document them for CATEGORIES and KEYWORDS.Jordan K. Hubbard
1995-04-01Add support for new CATEGORIES and KEYWORDS fields.Jordan K. Hubbard
1995-03-28Add support for "distributed" patches and a little extra cleanup.Satoshi Asami
New variables: PATCH_SITES: patch equivalent of MASTER_SITES, overridable with . MASTER_SITE_OVERRIDE. PATCHFILES: Additional files to fetch and give to patch before . applying the ones in patches/patch-*. If name ends . with ".gz" or ".Z", it will be piped through zcat first. Plus PATCH_DIST_STRIP and PATCH_DIST_ARGS that serve the same functions as PATCH_STRIP and PATCH_ARGS for patches in patches/patch-*. In the documentation and echo messages, I used the term "distributed patches" and "FreeBSD patches" to refer to ${PATCHFILES} and patches/patch-*. If you can come up with better names, by all means go ahead and fix them. "grep PATCH /usr/ports/*/*/Makefile" reveals seven ports (mule, jless, jtcl, jtk, dgd, less, color_xterm, gee I wonder why I'm the one who implemented this) that can benefit from this. I'm now diving headlong into /usr/ports to fix their Makefiles.
1995-03-27Added more standard package suport file names. INSTALL for theSatoshi Asami
installation script, DEINSTALL for the deinstallation script, and REQ for the requirement script, will be added with appropriate flags to PKG_ARGS if they exist under pkg/.