Commit Graph

346 Commits

Author SHA1 Message Date
Satoshi Asami
f682f47599 (1) Add new USE_BISON directive, which will expand to BUILD_DEPENDS on
4-current post bison-removal and to a no-op otherwise.  Note this
    should only be used when the software in question uses a feature
    in bison that is not in byacc -- otherwise it should be patched to
    use byacc (or detect the absense of bison correctly).  [bsd.port.mk]

(2) Do not assume all category names are lowercase.  In particular,
    remove package links by removing them one by one, instead of doing
    a "rm [a-z]*/${PKGNAME}.tgz". [bsd.port.mk]

(3) Do not assume the category name doesn't include a path separator
    (/).  Make links accordingly. [bsd.port.mk,README.category,README.port]

(4) Do not assume all category makefiles are directly under
    ${PORTSDIR}.  [bsd.port.mk,README.category]

(5) Add new "package-name" target which prints out the directory name
    to be used in the parent README.html.  [bsd.port.subdir.mk]

(2) through (5) are in preparation for going to multi-level
categories.  They shouldn't make any difference yet, but are committed
first so people can start testing.
2000-01-21 11:08:23 +00:00
Satoshi Asami
3b3f6a3a1f (1) Add check for including bsd.port{,.pre,.post}.mk twice. You can't do that.
(2) Add ipv6 and tcl/tk83 to list of valid categories.
Requested by:	sumikawa, jseger

(2) Change OSVERSION for NEWGCC check to a more appropriate time for the
    actual cutover.

(3) Change XFree86 version in PKG_IGNORE_DEPENDS from 3.3.5 to 3.3.6.

(4) Change some ${ECHO_MSG}'s in fatal errors to ${ECHO}, no need to be quiet
    if there's something terribly wrong.
2000-01-17 12:43:10 +00:00
Satoshi Asami
cd372a0c66 (1) Fix the distfile deletion for cases where distfiles are specified
with directory names.
Submitted by:	jdp

(2) Preserve +REQUIRED_BY file when FORCE_PKG_REGISTER is defined.
Reviewed by:	steve

(3) Add new variable EXTRA_PATCHES, which can be set to some files
    outside of ${PATCHDIR} (which usually means ${WRKDIR}).  These
    will be applied after distribution patches but before the normal
    ${PATCHDIR} patches.

    Useful when you have dynamic patches.

(4) Move USE_QT2 earlier, the USE_NEWGCC dependency wasn't working
    because it came after the USE_NEWGCC check.  Move USE_QT alongside
    new location of USE_QT2.
Submitted by:	imura

(5) Substitute ftp.cdrom.com for ftp.funet.fi in MASTER_SITE_SUNSITE,
    which no longer seems to be a full mirror anymore.
Submitted by:	Ade Lovett <ade@lovett.com>
PR:		14221

(6) Fix typo in MASTER_SITE_FREEBSD case -- it used ${MASTER_SITES}
    (instead of ${PATCH_SITES}) to fetch distribution patches.  That
    obviously would fail if the user attempted to build a port before
    the distribution patches showed up at ftp.FreeBSD.org.

(7) Remove tcl75, tk41 and tk81 from the list of valid categories.
    (tcl81 is still used.)
Submitted by:	jseger

(8) Make delete-package-list a little more verbose by making it check
    the existence of a package file and print out what it's doing.
    Silence bogus warnings from delete-distfiles-list by redirecting
    stderr from rmdir to /dev/null.

(9) Remove OpenBSD_MAINTAINER=imp, he hasn't been doing any work with
    this file on the OpenBSD repository for a long time.
Submitted by:	imp
1999-11-11 02:36:15 +00:00
SADA Kenji
7ef513a621 Removed ftp://ftp.t-cnet.or.jp from MASTER_SITE_PORTS_JP.
Submitted by:	Issei Suzuki <issei@jp.freebsd.org>
1999-10-10 17:19:49 +00:00
Satoshi Asami
4b4bdf5221 Change qt2 directory according to 2.0.1 -> 2.0.2 upgrade. 1999-10-02 04:12:33 +00:00
Satoshi Asami
86e007742a Handle distfiles with directory names in it. Helps when the master site
has things in different directories.

PR:		13926
Submitted by:	jdp
Reviewed by:	steve
1999-10-01 09:28:32 +00:00
Satoshi Asami
fec28e384a (1) x11-toolkits/qt2 -> x11-toolkits/qt201
Submitted by:	many people

(2) Surround the perl describe target with an echo ``.  We'll see if
    it will help with the index corruption problems.

(3) Manpage handling fix to avoid command line too long errors for
    ports with a lot of manpages.
Submitted by:	hoek
1999-09-22 01:04:30 +00:00
Satoshi Asami
de095461c0 (1) Adjust to new libtools.
Submitted by:	libtools maintainer

(2) Typo/updates in master sites.
Submitted by:	jkoshy, chris, cpiazza

(3) "automagically" -> "automatically".  I prefer words in dictionaries.
Submitted by:	Kazu TAKAMUNE <takamune@avrl.mei.co.jp>
PR:		13638

(4) Quote ${DEPENDS_TARGET} in command line so make reinstall won't fail.
Submitted by:	Kazu TAKAMUNE <takamune@avrl.mei.co.jp>
PR:		13638
1999-09-11 01:11:21 +00:00
Satoshi Asami
a768b7da1b (1) New variable USE_QT2 to say that the port uses QT version 2.
Submitted by:	cpiazza
Approved by:	imura (qt2 maintainer)

(2) Add CC and CXX to MAKE_ENV if USE_NEWGCC is defined.
Suggested by:	cpiazza

(3) Update XFree version PKG_IGNORE_DEPENDS.

(4) Add ${WHICH}=/usr/bin/which and use it.
Submitted by:	Yoshiaki Sakae <sakae@is.titech.ac.jp>

(5) Update afterstep and windowmaker master sites.
Submitted by:	KATO Tsuguru <tkato@prontomail.ne.jp>

(6) Add tcl82 and tk82 to list of valid categories.
Submitted by:	A whole bunch of people

(7) Use .MAKEFLAGS, not DEPENDS_ARGS to pass FORCE_PKG_REGISTER to
    submake when DEPENDS is defined -- the latter is too late.
1999-09-08 06:04:43 +00:00
David E. O'Brien
544e6f5400 Id->FreeBSD rename bis
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1999-08-25 04:40:22 +00:00
Satoshi Asami
8515b1add6 (1) Add new variable USE_NEWGCC. Set this if your port requires the
latest gcc.  This is currently the system compiler in 4-current and
    ports/lang/egcs in 3-stable.

    Setting USE_NEWGCC is a no-op if the compiler required is in the
    system.  If it is to be provided by a port, it will cause the
    variables "CC" and "CXX" to be set to the names of executables for
    the C and C++ compiler, and adds a BUILD_DEPENDS on the
    appropriate port.
Reviewed by: Chris Piazza <cpiazza@home.net> and Ade Lovett <ade@lovett.com>

(2) Add new variables CHMOD and CHOWN, set to full pathnames of those
    commands.  (Used in 3)

(3) When run as root, change owner:group of all files under ${WRKDIR}
    to 0:0 after extraction.  Set EXTRACT_PRESERVE_OWNERSHIP to turn
    off this feature.
Problem reported by: Slawek Zak <zaks@prioris.im.pw.edu.pl>
Reviewed by:	 the ports list

(4) Update MASTER_SITE_XCONTRIB.
PR:		12879
Submitted by:	Will Andrews <andrews@technologist.com>

(5) Update MASTER_SITE_GNU.
Submitted by:	Ralf "pth update of the day" Engelschall <rse@engelschall.com>

(6) Add check for valid categories.  If the port is not in a
    pre-approved list of categories, install will fail.  If you need a
    local addition, put it in variable VALID_CATEGORIES.
Reviewed by:	 the ports list

(7) Experimental feature: DEPENDS_CLEAN.  Define this variable and
    bsd.port.mk will attempt to run "make install clean" instead of
    "make install" when building dependencies.  Might be useful if you
    are building a port with a large number of dependencies without
    the benefit of a large disk.
1999-08-22 11:20:25 +00:00
Satoshi Asami
50fbbf4c4d Oops, forgot to commit this. Typo.
Submitted by:	hoek
1999-07-23 09:38:57 +00:00
Satoshi Asami
a163079f0d Makefile:
(1) Sort INDEX lines since with the new parallel patch, the lines can
    come in out of order.  (see 2)

Mk/bsd.port.subdir.mk:
(2) Make the targets parallelizable.
Submitted by:	hoek
Reviewed by:	steve, among others

Mk/bsd.port.mk:
(3) Serious speedup of bsd.port.mk startup.  In particular, this helps
    cut down "make index" time from an hour and a half to 8 minutes on
    our system with a parallel make describe (see 2).  Try to pass
    unchanged variables down from parent makes instead of rerunning
    commands to define them, etc.
Submitted by:	hoek
Reviewed by:	steve, among others

(4) Change a bunch of "FreeBSD.ORG"s and "freebsd.org"s to "FreeBSD.org".

(5) XFree86 is now at version 3.3.4.

(6) Update for gnome master sites.
Submitted by:	mharo

(7) Remove old system tcl check, I don't think people with systems
    from way back are still submitting ports.

(8) Fix comment on "make describe" line description (www site was missing).
1999-07-23 09:36:55 +00:00
Satoshi Asami
8eb1ac2cec (1) Print out ${CONFIGURE_LOG} (default: "config.log") when
${CONFIGURE_SCRIPT} fails, in an attempt to help debugging.  It
    could be a little verbose, but as my grandmother always used to
    say, "you gotta be verbose in error logs".

(2) Roll back PERL_VERSION to 5.00502 in the 2.2 branch to give users
    of that side a fighting chance.

(3) Don't check for ${_DISTDIR} in delete-distfiles-list; it's only
    printing out commands anyway.

(4) Bump BSDPORTMKVERSION to accomodate perl version change (I know
    it's late, but better late than never!)
1999-06-11 11:59:10 +00:00
Satoshi Asami
6cc6a66743 Spell out LIBTOOL with full path, otherwise it won't work since it's
called as an argument to /bin/sh.

Submitted by:	reg@shale.csir.co.za
1999-05-10 23:11:07 +00:00
Satoshi Asami
fe917ae658 (1) New variable USE_LIBTOOL that will patch the port to use the devel/libtool
port.
Submitted by:	Jeremy Lea <reg@shale.csir.co.za>

(2) Automatically create ${PREFIX}/info/dir if it doesn't exist.  Attempt to
    do the same in PLIST.
Submitted by:	Jeremy Lea <reg@shale.csir.co.za>

(3) Update perl version to 5.00503 to match system.

(4) Typo fix in MASTER_SITE_WINDOWMAKER.
Submitted by:	Mitsuru IWASAKI <iwasaki@jp.FreeBSD.org>

(5) Reword the REQUIRES_MOTIF message to suggest the user to look at lesstif.
Submitted by:	Steve Kargl <sgk@troutmask.apl.washington.edu>
1999-05-06 12:07:57 +00:00
Satoshi Asami
8dddbbe6dd (1) Make it clear that only I am allowed to commit to bsd.port.mk.
(2) New variable USE_ZIP -- will change EXTRACT_SUFX to ".zip" and
    extract commands/arguments accordingly.
Submitted by:	jseger

(3) Use ${GREP} in some places where grep was used.

(4) A little update to the MASTER_SITES_GNU list.
Submitted by:	cpiazza@home.net

(5) New target clean-for-cdrom-list and clean-restricted-list -- will
    print out commands to delete un-cdromable or unredistributable
    files.  Save them into a shell script for later use.

(6) Add CXXFLAGS="${CXXFLAGS}" to configure's environment.
Submitted by:	reg@shale.csir.co.za
PR:		11353 (part 3/3)

(7) Print out a warning if you try to install without being root.
    Abort if ${PREFIX} is not writable.

(8) Add web site to INDEX as tenth field.
Reviewed by:	wosch, steve, scrappy
1999-04-28 06:20:23 +00:00
Stefan Bethke
f1d4a2d7ad Clarify use of IS_INTERACTIVE.
Suggested by: asami@freebsd.org (well, at least implicitly :-)
1999-04-23 02:20:45 +00:00
Satoshi Asami
baa1e73982 Check for missing directories (listed in SUBDIR but non-existent) in
"checksubdirs" too.
1999-04-12 09:03:41 +00:00
Satoshi Asami
e74535bf0b (1) Pick up version file from /var/db if it exists there. I will
commit a change to actually move the file in a couple of days.
    (Right now this file looks at both /var/db and /var/db/pkg.)
Requested by:	jkh

(2) Skip version test for 2.2.x, I don't intend to rebuild update kits
    anymore.

(3) sunsite.unc.edu -> metalab.unc.edu
Submitted by:	steve

(4) New variable ALWAYS_BUILD_DEPENDS, it will make your build go and
    rebuild all dependencies (except XFree86) regardless of
    executable/file/shlib test results.  It could be useful if you
    suspect that some of the dependencies are out of date but won't be
    flagged by the normal checks.
Reviewed by:	the ports list
1999-04-08 07:13:38 +00:00
Satoshi Asami
6ce93e77d0 (1) Move _sedsubplist generation later, just before it is used. The
old location caused some variables (most notably CONFIGURE_TARGET)
    to be undefined.
PR:	10724

(2) Fix comment about CONFIGURE_TARGET.
Submitted by:	OKAZAKI Tetsurou <okazaki@be.to>

(3) Add comment to FETCH_CMD test indicating that it *is* intentional
    that all 3.x versions use "fetch -A" -- people using the upgrade
    kit won't have their ${OSVERSION} updated.

(4) Add MASTER_SITE_TCLTK which is, well, Tcl/Tk master sites.
Submitted by:	Bill "the typo picker" Fumerola <billf@jade.chc-chimes.com>

(5) Add new variable FORBIDDEN indicating that the port shouldn't be
    built -- this is different from BROKEN, which now means we think
    it's broken but the user should be more than happy if it actually
    works.

(6) Add support for system/upgrade kit version check.  The file
    /var/db/pkg/.mkversion is compared to the BSDPORTMKVERSION
    variable (basically the date a bsd.port.mk with an incompatible
    change is committed).  If the system is too old, bsd.port.mk will
    urge the user to install an upgrade kit.
Submitted by:	billf (some parts)
Reviewed by:	the ports list

(7) Remove "ac_cv_path_CC=${CC}" from configure's envirenment, it's
    supposed to find this stuff by itself (and if it doesn't then it's
    an individual port's responsibility to add it).
Reported by:	Archie Cobbs <archie@whistle.com>

BSDPORTMKVERSION is bumped (actually initialized) to 19990327, by the way.
1999-03-29 07:07:59 +00:00
Satoshi Asami
44a8825c91 (1) (Forgot to mention in previous commit log) Add
MASTER_SITES_PORTS_JP for storing stuff that people on the
    ports-jp mailing list created.
Suggested by:	KIRIYAMA Kazuhiko <kiri@pis.toba-cmt.ac.jp>

(2) Conditionalize use of "-A" flag to fetch so the entire ports tree
    won't break on 2.2.X machines.
Suggested by:	Brian Tiemann <btman@ugcs.caltech.edu>
1999-03-09 11:27:34 +00:00
Satoshi Asami
5426e8d986 (1) Change FETCH_CMD to add the -A flag, so it won't be confused by the
"not_found.html" stuff.

(2) Add "MACHINE_ARCH?=i386" so those with a 2.x system have a
    fighting chance of getting ports-current to work.

(3) Add new variable CONFIGURE_TARGET, defaulting to
    ${MACHINE_ARCH}--freebsd${OSREL}, which is tucked to the end of
    CONFIGURE_ARGS if GNU_CONFIGURE is defined.
Reviewed by:	various

(4) Change MASTER_SITE_GNOME to match reality.
Submitted by:	Jeremy Lea <reg@shale.csir.co.za> and nectar

(5) Change MASTER_SITE_SUBDIR handling so we won't be generating
    double slashes.
Submitted by:	The lord of distfiles himself

(6) Add new variable FETCH_ENV which is the environment passed to
    FETCH, so people can define HTTP_PROXY or whatever the want
    without screwing up the case when FETCH_CMD is not fetch.
PR:		2949
Submitted by:	same
1999-03-08 07:23:10 +00:00
Satoshi Asami
6a32207319 (1) Add MASTER_SITE_AFTERSTEP and MASTER_SITE_WINDOWMAKER for the master
and mirror sites of two popular window manager suites.
Submitted by:	Brian Handy <handy@lambic.physics.montana.edu>

(2) Upgrade for Motif-2.1.10.  It requires libXpm and libXp now.

(3) PARALLEL_PACKAGE_BUILD will now ignore BROKEN.

(4) Add new variable PKG_IGNORE_DEPENDS to not register some ports as
    dependencies.  Useful for stuff like XFree86 and Motif.
Reviewed by:	jkh
1999-02-14 06:49:55 +00:00
Satoshi Asami
fd5131ad95 (1) ${MASTER_SITE_SUBDIR} is now a list, and ${MASTER_SITE_*} macros
will be expanded multiple times if ${MASTER_SITE_SUBDIR} contains
    more than one item.
Reviewed by:	Bill "Mr. distfiles" Fenner

(2) Replace stale site with a good one in MASTER_SITE_GNU.
Submitted by:	Bill "Mr. mastersites" Fenner

(3) Add new variable USE_BZIP2, which, like USE_GMAKE, will change the
    default decompression method of distfiles from gzip to bzip2.
    Since tar doesn't have a simple flag to turn on bzip2
    decompression, I changed the way EXTRACT_CMD and
    EXTRACT_{BEFORE,AFTER}_ARGS work.  These are the new defaults:

    EXTRACT_CMD:		gzip or bzip2
    EXTRACT_BEFORE_ARGS:	-dc
    EXTRACT_AFTER_ARGS:		| tar -xf -

    (They used to be "tar", "-xzf", and "", respectively, before.)
    Also, EXTRACT_SUFX will default to ".tar.bz2" if USE_BZIP2 is set.

    There are a few things porters should be careful about:

 (a) If you are using bsd.port.{pre,post}.mk, USE_BZIP2 should be set
     before the .include of pre.mk.

 (b) Do not use ${EXTRACT_SUFX} as an alias of tar.  There is a new
     variable ${TAR} for that purpose.

 (c) If you are calling ${EXTRACT_CMD} directly, you need both
     ${EXTRACT_BEFORE_ARGS} and ${EXTRACT_AFTER_ARGS} in the command
     line.  (The latter was previously empty so could be omitted --
     that is no longer the case.)

 (d) If you need to set any of EXTRACT_CMD, EXTRACT_BEFORE_ARGS or
     EXTRACT_AFTER_ARGS, define all three, even if they are the
     default.  The values of these variables may very well change in
     the future (but the calling syntax probably will not) so it will
     save the port from breakage when that happens.

Tested by:	recompiling the entire ports tree
1999-02-03 11:06:19 +00:00
Satoshi Asami
7cc90a07a0 Forgot to change "templates" to "Templates" in this file.
PR:		9761
1999-01-29 12:51:43 +00:00
Satoshi Asami
047e500528 (1) Rename "templates" to "Templates". The toplevel is getting
crowded and I don't want to confuse cvsup about what's in
    ports-base and what is not.  (I.e., all uppercase
    files/directories are, all lowercase ones are not.)  While I'm
    here, move the make_index script from templates to Tools.

(2) Adjust the MASTER_SITE_OVERRIDE logic a bit.  Formerly, it was not
    possible to specify both MASTER_SITE_OVERRIDE while still using
    MASTER_SITE_BACKUP as a backup, as they were tied in the
    implementation of MASTER_SITE_FREEBSD.  You can now specify them
    independently if MASTER_SITE_FREEBSD is not set (in which case
    MASTER_SITE_BACKUP will be moved to the beginning of the list,
    like before).
1999-01-26 03:58:58 +00:00
Satoshi Asami
25b174d4e1 Use "" instead of <> to specify bsd.port.mk, since we want it to look in
this directory first.
1999-01-26 03:53:15 +00:00
Satoshi Asami
61dd9d3914 (1) Add gnome master sites.
Submitted by:	Jeremy Lea <reg@shale.csir.co.za>

(2) Change backup distfiles dir to reflect change in ftp.freebsd.org's
    reorganization.
1999-01-20 01:55:05 +00:00
Satoshi Asami
00266a060f (1) Add ONLY_FOR_ARCHS and NOT_FOR_ARCHS. They are list of architecture names
(as given by "uname -m") by which you can specify which
    architectures the port is appropriate for.
Idea borrowed from:	NetBSD, OpenBSD
Reviewed by:		simokawa

(2) New variable PERL_ARCH (value: ${ARCH}-freebsd) that is also
    passed to ${PLIST_SUB}.  Use it to simplify PLISTs.
Submitted by:	simokawa

(3) Check OSVERSION as well as existence of /usr/bin/perl5 before
    assuming USE_PERL5 is to be a no-op.  Basically to allow building
    of 2.2-INDEX on a 3.0 machine.

(4) Change USE_QT definition to use new shlib version (2) and
    directory (qt142).

(5) Uncomment temporary Motif dependency for parallel package
    building.  We still need to figure out a way to install the pkg
    database files, but it's a start.

(6) Move EXTRACT_SUFX up into the pre.mk area so it can be used in
    exists() tests.

(7) Add MASTER_SITE_COMP_SOURCES.  Note that this is defined like
    "/pub/usenet/comp.sources.%SUBDIR%/" so you can specify something
    like "SUBDIR=x/volume18" to select the newsgroup as well as
    subdirectory name.
Submitted by:	"distfiles" fenner

(8) Other misc. master site cleanup.
Submitted by:	"distfiles" fenner

(9) New target "maintainer".  I intend to use it to auto-mail failure
    build failure notices to the maintainer.
1999-01-11 13:04:18 +00:00
Satoshi Asami
3d0b444f0d (0) Fast INDEX generation. Only print out the directory name and
don't recurse in "make describe".  The new INDEX target in
    ports/Makefile invokes a perl script to recurse and convert them
    into package names.

    While I'm here, change the name of targets and move them around a
    little bit for the sake of consistency.

    It is also probably worth noting here that the meaning of the
    "build dependency" list in INDEX has been changed slightly
    changed.  The old list was "build depends and its build depends"
    -- not particularly useful if you had things like autoconf, which
    run-depend on gm4 (you install all the things listed here and
    you'll get an autoconf that won't run).

    It is now "build depends and its run depends" -- you install
    everything listed here, and you'll be able to build the port.
Submitted by:	steve

(0') Fast README.html generation.  It uses ports/INDEX to find
    dependencies instead of embarking on to a recursive loop.
Submitted by:	steve

(1) Remove NO_WRKDIR and NO_EXTRACT.  Their functionality are easily
    replacable with NO_WRKSUBDIR=t and EXTRACT_ONLY= (nothing on right
    side), and they get in the way of read-only port trees.

(2) Surround first few variable definitions with ".if !defined()".
    This will make cross-compilation easier and also speed up make
    processes.

(3) Call sysctl with absolute path.  Prefer the one in /sbin over the
    one in /usr/sbin.

(4) Add four new variables

    PKGINSTALL?=	${PKGDIR}/INSTALL
    PKGDEINSTALL?=	${PKGDIR}/DEINSTALL
    PKGREQ?=		${PKGDIR}/REQ
    PKGMESSAGE?=	${PKGDIR}/MESSAGE

    and use them in PKG_ARGS.  Frobbing with PKG_ARGS directly is
    strongly discouraged.

(5) Change PKG_SUFX to ".tar" (instead of ".tgz") if PKG_NOCOMPRESS is
    defined.  This is intended only for our own use.

(6) Add more sites to MASTER_SITE_GNU.
Submitted by:	billf

(7) Override MANUAL_PACKAGE_BUILD if PARALLEL_PACKAGE_BUILD is
    defined.  This is intended only for our own use.

(8) Add new target "ignorelist" which will print out the package name
    if the port is not going to be built on this machine.  This is
    intended only for our own use.

(9) Make mtree a little quieter.
1998-12-12 07:39:30 +00:00
Satoshi Asami
260134bf60 Change USE_QT to use version 1.41. I know this is a little premature,
but I'd like as many people to test this before the release.
1998-11-25 00:12:27 +00:00
Satoshi Asami
1007d89b1e (1) Remove LOOP_VAR and LOOP_OPTIONS. It's a hack and just too many things
break one way or another.  With it goes the package-loop and the
    describe loop.

(2) Add new variable MASTERDIR to make it easier to share files between ports.
    bsd.port.mk will find things like ${PKGDIR} underneath
    ${MASTERDIR} (which defaults to ${.CURDIR}).

(3) Do not allow MD5_FILE to be renamed.  Funny things can happen if
    you do that.

(4) Use a few more absolute paths in the bsd.port.pre.mk part.  I
    can't use absolute paths for sysctl because it moved recently.
1998-11-20 04:00:38 +00:00
Satoshi Asami
b63234040b Add EXTRA_PKG_FLAGS to PKG_FLAGS. You can now add arguments to pkg_create
without redefining PKG_FLAGS after bsd.port.mk.
1998-11-14 09:45:09 +00:00
Satoshi Asami
c2e32ac36f Make bsd.port.mk includable in two phases. bsd.port.pre.mk defines only
a few variables that could be used in the port Makefile for ".if exists()"
tests.  bsd.port.post.mk defines the rest.

Note: if you define USE_X_PREFIX or USE_IMAKE, put it before including
bsd.port.pre.mk.  These are the only two variables used in the first part.

In reality, bsd.port.pre.mk and bsd.port.post.mk just include bsd.port.mk
with special variables to turn part of it off.
1998-11-11 05:21:29 +00:00
Satoshi Asami
4574e6e174 (1) New variable MAKE_ARGS: will be appended to build/install make argument
list.  The old MAKE_FLAGS was a little hard to use since it had a weird
    default ("-f").
Suggested by:	Shigeyuki FUKUSHIMA <shige@kuis.kyoto-u.ac.jp>

(2) Add new targets clean-restricted and clean-for-cdrom, which will
    delete RESTRICTED and NO_CDROM packages and distfiles from the top.
Reviewed by:	jkh

(3) Add depends to list of things to recurse on.  It will help people
    who are trying to fetch some ports plus their dependencies.

Requested by:	Chris Dillon <cdillon@wolves.k12.mo.us>
1998-11-08 10:29:53 +00:00
Satoshi Asami
584030d604 (1) Add new variables LOOP_VAR and LOOP_OPTIONS to implement building several
packages from a single port.  LOOP_VAR is the name of the variable
    and LOOP_OPTIONS is a space-separated list of values it should
    take.  When these are set, the target "package-loop" will go
    through a clean and package loop for all the options.  The
    "package-loop" target is defined as "package" when LOOP_VAR is not
    defined, so if you are in the business for building packages, you
    should use "package-loop" all the time.  (This target is added to
    bsd.port.subdir.mk too.)

    Also, the "describe" target prints out multiple lines so that all
    options will go into the INDEX.  (In other words, if you define
    these variables, INDEX is going to look real silly if you don't
    put ${${LOOP_VAR}} in PKGNAME.)

Seconded by:	obrien ("ANYTHING")

(2) Turn off regexp support for LIB_DEPENDS.  It is a fixed string of
    the form <NAME>.<VER> now.
Tested by:	several rounds of complete package builds

(3) Check checksum even if NO_EXTRACT is defined.

(4) Cosmetic fix for message in MANUAL_PACKAGE_BUILD case.
1998-10-30 08:28:02 +00:00
Satoshi Asami
3932b94eb7 Add new variable NO_FILTER_SHLIBS -- it will disable ELF <-> a.out shlib
name conversion.  Use it for binary ports that come with its own private
shlib dirs, ports that install linux compatibility libraries (thus following
their naming conventions and not ours), etc.

Reviewed by:	Martin Cracauer <cracauer@FreeBSD.ORG>
1998-10-09 01:27:21 +00:00
Satoshi Asami
d2f7fd9ccb (1) Add new variable ${PERL} which is equal to ${PERL5} but without the
version number part (i.e., "<directory>/perl").  Use this to
    substitute #! lines in your perl5 scripts.

Requested and reviewed by:	ache

(2) Add new variable WRKDIRPREFIX (defaults to "").  The "work"
    directories are now in ${WRKDIRPREFIX}${.CURDIR}/work by default.
    You can have a read-only ports tree (modulo any broken ports that
    write something to places other than ${WRKDIR}) by setting this to
    a writable location.

    Ports that set WRKDIR explicitly should append this to front so
    they will work when the user has WRKDIRPREFIX set.

Reviewed by:	Toshihiko Kodama <kodama@ayame.mfd.cs.fujitsu.co.jp>
1998-10-06 21:12:14 +00:00
Satoshi Asami
2bd263cd9d (1) Add BROKEN_ELF variable, similar to BROKEN. (There is no BROKEN_AOUT,
since ports are not supposed to be broken during the process of
    conversion to ELF -- please proceed with caution.)

(2) Support for checking file size before fetching.  The essential
    parts are commented out for now, so I won't lose the submission
    while we discuss how to do it.
Submitted by:	se (mostly)

(3) Don't run "fetch" twice.  It was due to the change in checksum
    target chaining.  It used to be fetch -> checksum -> extract,
    after 1.285 it was fetch -> checksum and checksum was also
    explicitly called from extract.  Fix it by not calling fetch from
    checksum when it's invoked by extract.
Noticed by:	pre-fetch target of lesstif being run twice

(4) Don't try to remove non-existent distfiles and patchfiles in
    distclean.
Submitted by:	anto@netscape.net
PR:		7988
1998-09-22 23:58:49 +00:00
Satoshi Asami
f197c7fc26 Yikes, put .endif in wrong place. 1998-09-17 01:22:05 +00:00
Satoshi Asami
4580e44d10 Remove shlib minor if PORTOBJFORMAT=elf. 1998-09-17 01:00:23 +00:00
Satoshi Asami
a691ddb05c (1) Pass PORTOBJFORMAT in SCRIPTS_ENV too.
Submitted by:	"Eugene M. Kim" <gene@nttlabs.com>

(2) Check for exact version of perl5 in /usr/bin and exit with error
    message if USE_PERL5 is defined and version does not match
    ${PERL_VERSION}.

(3) Note LIB_DEPENDS should not have any regular expressions.  Remove
    those in USE_XLIB and USE_QT.
1998-09-16 12:04:38 +00:00
Satoshi Asami
5514a8e431 (1) Add MLINKS support.
Submitted by:	hoek

(2) ELF support.
 2a. Variable PORTOBJFORMAT specifies the object format of the system.
     It is passed down to configure/make via CONFIGURE_ENV/MAKE_ENV,
     and is given to generate-plist via PLIST_SUB.
 2b. In PLIST, substitute lines that end with "/libFOO.so.X" with
     "/libFOO.so.X.0".  (This means PLISTs should only list ELF
     libraries.)
Reviewed by:	jb, jdp, hoek, jseger, steve

(3) Perl5-in-system support.  Basically turns USE_PERL5 into a no-op
    if there exists a "/usr/bin/perl5".  Also fix prior breakage by
    dima (${PREFIX} => ${LOCALBASE} in perl5 path).
Reviewed by:	markm (sort of)

(4) Install requirement file as "+REQUIRE" so it will be executed
    correctly by pkg_delete.
Reported by:	Shigeyuki FUKUSHIMA <shige@kuis.kyoto-u.ac.jp>

(5) Do not disable checksum and makesum when NO_EXTRACT is set.
Pointed out by:	hoek and kiri, among other people
1998-09-10 06:38:02 +00:00
Dima Ruban
cef01fef92 Introduce PERL5 variable.
It's gonna be used in all p5- ports.

Reviewed by:	asami
1998-08-28 18:41:04 +00:00
Satoshi Asami
00c30376f7 Hope I haven't missed anything or forgotten to credit anybody. (By
the way, most of the things below are "Reviewed by: hoek" as well.)

The changes are (roughly in order of appearance):

(1) Revamp comments at beginning of file.  Major rewrites.  Reorder
    them into more relevant sections.  Make clear which ones are user
    variables and not to be set in ports' Makefiles.
Reviewed by:	hoek (well, he's the only one who sent any comments)

(2) Include ${.CURDIR}/Makefile.local if it exists.  This is a local
    configuration file (ala rc.conf.local and make.conf.local) so
    please do not commit a file with this name to the repository.
Suggested by:	dillon

(3) MANCOMPRESSED now takes three possible values: "yes", "no" and
    "maybe".  (It used to be a binary variable -- the old behavior is
    now accomplished by "MANCOMPRESSED=yes".  Ports that defined this
    variable to other values have been corrected.)

    "yes" means the manpages are installed compressed, "no" means they
    are not, and "maybe" means the port already respects the value of
    NOMANCOMPRESS.  The default is "yes" for USE_IMAKE ports without
    NO_INSTALL_MANPAGES, and "no" otherwise.

    Add "compress-man" target and move manpage {,de}compression there.

Reviewed by:	hoek etc. and a full build of the ports tree

(4) Add LIBDIR="${LIBDIR}" to MAKE_ENV.  Makes easier to "fix" ports
    for /usr/lib/aout mess.
Submitted by:	ohashi@mickey.ai.kyutech.ac.jp (Takeshi Ohashi)

(5) Change ${TMPPLIST} from ${WRKDIR}/PLIST.mktmp to
    ${WRKDIR}/.PLIST.mktmp.
Suggested by:		hoek
Strongly seconded by:	steve

(6) Change a couple more relative pathnames to absolute ones.
Submitted by:	hoek

(7) Move checksum into real-extract.

(8) Change way rules are chained.  Instead of:

build: configure ${BUILD_COOKIE}
${BUILD_COOKIE}:
	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} real-build

    we now have

build: ${BUILD_COOKIE}
${BUILD_COOKIE}:
	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} configure
	@cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} real-build

    Other than being more PC (pmake clean), this really speeds up
    skipping ports already built.  For instance, "make package" on a
    fully packaged games subtree used to take 269 seconds on average,
    now it's 45 seconds on average.

    The flip side of this is that it will create more processes when
    the targets actually chain, but when you're actually compiling
    things, your make is creating half a bazzilion processes anyway so
    I don't think it matters.

(9) ${TMPPLIST} is now a real dependency.  Create "generate-plist"
    target to generate ${TMPPLIST}.  Make sure it's called when needed
    (usually between do-install and post-install), and that the
    required files exist.

(10) Change some messages so we can tell where "make index" failed.

(11) Check if LIB_DEPENDS really generated the required shared lib or
     not.
Seconded by: "Brent J. Nordquist" <bjn@visi.com>
1998-08-27 00:18:50 +00:00
Satoshi Asami
7f5b0c1e57 Add "deinstall" to list of targets. This is only fair since "install" and
"reinstall" are already here. :)
1998-08-26 23:46:13 +00:00
Mark Murray
a0ae05a1d7 Bump version number for latest perl 1998-08-15 17:34:00 +00:00
Satoshi Asami
ca335ee595 Merge 1.227.2.45 (perl version substitution in PLIST). 1998-08-12 09:47:47 +00:00
Satoshi Asami
1dcba767c8 Merge 1.227.2.44. 1998-08-12 01:47:47 +00:00