Commit Graph

284 Commits

Author SHA1 Message Date
asami
703cc3496e Add "--batch" to PATCH_ARGS and PATCH_DIST_ARGS when ${BATCH} is set
to avoid an infinite loop in patch when the patch target is not found and
stdin is redirected from /dev/null (the "skip this patch? [n]" question).
1995-10-11 09:25:58 +00:00
bde
9d4cea7bdf Don't run `ranlib -t' at install time. Our ld has never looked at the
timestamp on __.SYMDEF like ranlib.1 says it does, so changing the
timestamp has no benefits, and changing it breaks smart installs.
1995-10-09 05:09:37 +00:00
ache
ea3be6ef7b Add CONFIGURE_ENV: pass this environment to configure script.
Allows pre-set some variables to eliminate wrong tests
1995-10-04 23:22:21 +00:00
asami
d8312a9a80 Attempt to sound more civilized by adding a missing period to
"Attempting to fetch from $${site}."

Why it was in PATCHFILES and not in DISTFILES, I have no idea.
1995-10-04 11:13:52 +00:00
asami
fa97a91175 Use full pathname for ldconfig (/sbin/ldconfig).
Hinted by:	joerg
1995-10-02 22:12:47 +00:00
wollman
a6f3657671 Compress manual pages (if desired) in the obj directory rather
than in the installation destination.  Should make release-building
substantially faster.  The msun Makefile changes simple adapt to the new
scheme.
1995-10-02 20:02:05 +00:00
asami
8473b7883e Split EXEC_DEPENDS into FETCH_DEPENDS, BUILD_DEPENDS and RUN_DEPENDS.
They are called from the fetch, extract and install targets,
respectively.

Also, only RUN_DEPENDS is put into the @pkgdep list of the package.

EXEC_DEPENDS is still supported (for now), it is copied into
BUILD_DEPENDS and RUN_DEPENDS.  This will go away after we finish
fixing all the ports Makefiles.

This change fixes the following bug/features:

(1) "make fetch" building and installing all the dependencies

(2) Programs needed for building only (e.g., gmake) put into the
    packages' dependency lists ("why does the emacs package depend on
    gmake?")

Reviewed by:	the ports list
1995-09-18 08:01:20 +00:00
asami
7c2a7296e5 Ignore patchfiles that end with ".orig" or "~".
Suggested by:	paul, joerg among others
1995-09-13 10:14:31 +00:00
jfieber
92a92946e8 Now works correctly with obj directories.
FORMATS can be defined as an empty string to suppress generation or
installation of any files.  Previously setting it to "null" had that
effects.

Now uses MANOWN, MANGRP and MANMODE for installation instead of BINOWN,
BINGRP and BINMODE.
1995-09-10 21:49:24 +00:00
jfieber
839a5602f8 Fix a bug with the clean target. 1995-09-10 17:18:24 +00:00
jfieber
2da20250e5 Add bsd.sgml.mk 1995-09-08 19:27:48 +00:00
jfieber
e11b0d6e31 A makefile for sgml source files.
Reviewed by:	Rod Grimes rgrimes@gndrsh.aac.dev.com
1995-09-08 19:23:19 +00:00
asami
67c7f8e5fd Don't trust ncftp's exit status, they are not indicative of whether
the file is fetched or not.  Apparently Jordan fixed it a long time
ago but it was broken again at import of the new version of ncftp.
Which means even if we fix it, it may break again and we may need to
fix it again, and (imagination here, please)....

Instead, move the file existence check into the for loop for
MASTER_SITES/PATCH_SITES and break out with "continue 2" when the file
is found.  This is actually a cleaner logic than before if you ask me,
because instead of assuming the file is fetched on a 0 exit status
from ncftp AND checking for the existence of the file after the loop,
the check is done exactly once for each iteration and nowhere else.
1995-08-29 11:57:40 +00:00
asami
e497c83b36 Clean up EXTRACT_ONLY logic a bit. Instead of branching in the
do-extract target depending on defined(EXTRACT_ONLY) or not, simply
set EXTRACT_ONLY ?= ${DISTFILES} and always use ${EXTRACT_ONLY} as
the extraction list.
1995-08-29 11:24:50 +00:00
asami
649ed5d50c Merge all the "skeleton" target into one macro. This is an enormous
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-08-18 10:06:28 +00:00
dg
7fcc87e310 Changed default optimization from -O2 back to -O...gcc 2.6.* has serious
bugs when using -O2.
1995-08-11 11:47:30 +00:00
dg
d81a883bfd Use lorder/tsort for shared libraries. It might help group things better.
Suggested by Garrett Wollman.
1995-08-02 22:31:52 +00:00
wollman
63aeb292c5 Use GZIPCMD to hold name of gzip command rather than just GZIP.
Submitted by: Torsten Blum
1995-07-27 15:03:27 +00:00
wollman
bf80c06551 Compress doc' and info' documents before installing them. 1995-07-26 13:51:46 +00:00
bde
8a5789682c Change install' to ${INSTALL}' so that default install flags can be
specified in the top level Makefiles.
1995-07-25 00:37:58 +00:00
asami
7944117927 Let MASTER_SITE_OVERRIDE be prepended to the MASTER_SITES list instead
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-24 08:02:07 +00:00
jkh
61cfc7d5e0 Simplify the USE_IMAKE stuff considerably.
Suggested by:	asami
1995-07-17 16:20:58 +00:00
jkh
054d49713f A regrettable hack to allow a port to say that it doesn't want its Makefiles
made after the xmkmf run.
1995-07-15 14:07:02 +00:00
asami
562b76c8ed Add IS_DEPENDED_TARGET to change the behavior of a port when you want
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-07-11 02:15:35 +00:00
asami
be5271c4a5 Use
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-26 07:06:59 +00:00
asami
3cb9e9e570 Use full pathnames for the commands. Everything except gmake and
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-26 07:01:20 +00:00
asami
d7c4450371 Check if uid is 0 before running mtree. If you aren't root, you just
get a message (instead of a bunch of crap from mtree).
1995-06-26 00:30:48 +00:00
asami
d14e685f6b Add new option NO_MTREE. If set, bsd.port.mk won't run mtree to
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-25 06:30:51 +00:00
asami
a65f7bbd81 Add a "checkpatch" target that does a "patch -C" instead of a "patch".
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-24 10:27:23 +00:00
asami
21b7507e35 Renamed the default package repository ".../packages/.packages" to
".../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-06-06 10:56:34 +00:00
asami
741995e2fb Remove comment about not being able to undefine a variable, as we *can*
do that.
1995-05-29 13:46:38 +00:00
asami
2d7bd9ea90 Fix the indent level. I know we're in code freeze, and this is
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-16 10:31:25 +00:00
asami
5600e63b47 Don't conditionalize fake-pkg on NO_PACKAGE. 1995-05-13 23:37:16 +00:00
asami
dbfbb0c8e3 Add FORCE_PACKAGE, if this is defined, NO_PACKAGE will be turned off.
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-13 05:37:45 +00:00
asami
43734506ef When NO_PACKAGE is set, "package" and "repackage" don't depend on
"install".  In other words, they won't do anything at all.
1995-05-12 08:44:12 +00:00
asami
77c9260f17 Not only deleting the package and package links, also exit with status
1 if pkg_create returns error!
1995-05-12 07:43:48 +00:00
asami
9bbd95adb3 Delete package and links when pkg_create fails. 1995-05-12 07:32:59 +00:00
asami
d55102e290 Add new variable to override the "hey foobar-1.2.3 is already installed"
warning from fake-pkg.
# FORCE_PKG_REGISTER - If set, it will overwrite any existing package
#                      registration information in ${PKG_DBDIR}/${PKGNAME}.
1995-05-10 09:30:09 +00:00
rgrimes
e6eb9d26c2 Change install: to afterinstall: to be more consistent. 1995-05-09 10:12:16 +00:00
asami
a3bb50fdbe Make the "reinstall" target delete the package cookie as well as
the install cookie.
1995-05-09 00:31:54 +00:00
bde
01ac51dff2 Submitted by: charnier@lirmm.fr (Philippe Charnier)
Fix comment on .else to match code.
1995-05-07 06:39:30 +00:00
adam
6e7e1d08a4 added support for distribution patches in a subdir of ${DISTFILES} 1995-05-04 18:53:26 +00:00
jkh
925736f54f Put an `@' in front of the mtree command. I don't want to see it. 1995-05-04 13:14:16 +00:00
jkh
bda53d4450 Add an mtree line to the install target. 1995-05-02 13:49:01 +00:00
asami
413377b5ae A bunch of new targets in the package area. Relevent targets are:
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-30 12:28:43 +00:00
jkh
7e4a7af857 Pass X11BASE to all sub-makes. I need it for a port, and I daresay that
there are a lot of hardwired "/usr/X11R6" paths out there that could stand
to use it as well.
1995-04-28 15:40:37 +00:00
jkh
9029c0aa91 Add LIBFTP. 1995-04-26 14:34:19 +00:00
asami
db397dde7a (1) Add the chain of dependencies to the targets in the NO_* section
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-24 10:41:51 +00:00
asami
cf0519948f Move call of fake-pkg from do-install to end of install. 1995-04-24 09:05:34 +00:00
jkh
bf482d7e3b Ok, this should get the last of the stragglers installed into a new fake-pkg. 1995-04-22 01:22:49 +00:00