| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Submitted by: Jason Thorpe <thorpej@nas.nasa.gov>
(2) Remove the bogus "CAT+=" definition. Closes PR ports/1703.
Submitted by: Peter Childs <pjchilds@imforei.apana.org.au>
(3) Change MKDIR to "/bin/mkdir -p", remove "-p" from ${MKDIR}
invocations. Closes PR ports/1901.
Submitted by: obrien
(4) Add a new macro variable COMPRESS_MAN, which will evaluate to gzip
if NOMANCOMPRESS isn't set (default), or true if it is.
(5) Add a new variable NO_CHECKSUM, which will disable the md5 checksum.
Submitted by: jkh
(6) Also, move NO_PATCH and NO_PACKAGE checks to right place in
invocation order.
(7) Check for LIB_DEPENDS before installation too. (It used to check
only before extraction.)
Forgotten a long time ago by: asami
|
|
|
|
| |
meant to rename the name of script in ${SCRIPTDIR}.
|
|
|
|
|
|
|
|
| |
Submitted by: max
While I'm here, add "${DIST_SUBDIR}/" at end of CDROM pathnames. Also
add an empty declaration of PATCH_SITES next to MASTER_SITES to avoid
"variable recursive" error.
|
|
|
|
| |
/usr/bin/sed -> ${SED}
|
|
|
|
|
|
|
| |
first if /cdrom/ports/distfiles exists. If FETCH_SYMLINK_DISTFILES
is set, symlink the file instead of copying.
Reviewed by: jhk
|
|
|
|
|
| |
can now check existence of files specified by full pathnames, not only
executables.
|
|
|
|
|
|
|
|
| |
to configure.
(2) Gently warn user for non-0022 umasks.
Submitted by: "David E. O'Brien" <obrien@Nuxi.cs.ucdavis.edu> (1)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bombing mercilessly.
(2) If that directory has a directory called CVS, remind the user of
the existence of the "-P" option to cvs co and update.
(3) While I'm here, clean up the PATCH_DEBUG code a bit. In
particular, don't duplicate a whole bunch of code just for adding
a single "echo" statement. ;)
Reviewed by: the ports list
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
won't be pulled into individual ports that include this file. ;)
(2) Document MOTIFLIB, it's not set in the ports Makefiles but is
important for Motif ports (already documented in the handbook).
(3) Add INSTALL_PROGRAM, INSTALL_SCRIPT, INSTALL_DATA, INSTALL_MAN as
"aliases" of the appropriate install command line, for use in *-install
targets.
Reviewed by: the ports list (item 3 only)
|
|
|
|
| |
Requested by: Narvi <narvi@haldjas.folklore.ee>
|
|
|
|
|
|
| |
any effect. The target do-configure used ${SCRIPTDIR}/configure
instead of ${SCRIPTDIR}/${CONFIGURE_SCRIPT}.
-andreas
|
| |
|
| |
|
|
|
|
|
| |
really want them) from /usr/src. This is the final version of the
patches, incorporating the feedback I've received from -current.
|
|
|
|
| |
Submitted by: James Raynard <jraynard>
|
| |
|
| |
|
|
|
|
|
|
|
| |
standardize the variables a little, and simplify some parts because
we can now trust the fetcher's return value.
Reviewed by: the list
|
|
|
|
| |
Submitted-By: Chuck Robey <chuckr@Glue.umd.edu>
|
| |
|
|
|
|
|
|
| |
(SRC_ENCAPSUATION). Stick in some cd ${.CURDIR} directives which have
been (benignly) missing all this time. Allow more types of targets to be
selectively disabled.
|
|
|
|
|
|
| |
"MASTER_SITES:= ..." of defined(MASTER_SITE_OVERRIDE) case, otherwise
it would cause a recursive variable definition error when
MASTER_SITE_OVERRIDE is set and MASTER_SITES is not set.
|
|
|
|
|
|
| |
Remove disabling of "repackage", that thing calls package anyway.
Submitted by: (mostly) jkh
|
|
|
|
|
|
| |
add things this way.
Reviewed by: ache
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(1) The new NO_CDROM Boolean variable means "don't put the distfile/
package on the CDROM you're going to sell". It will basically
turn off everything if FOR_CDROM is set.
Many of the NO_PACKAGE ports are actually "don't sell for profit"
types, which we shouldn't have any problem distributing via ftp.
(2) The new RESTRICTED Boolean variable means don't build this unless
you know what you are doing. It doesn't have any effect unless
NO_RESTRICTED is also set.
(3) BROKEN means this port is broken. At least it will now show up in
INDEX and README.html, and give people more incentive to fix (I
hope).
RESTRICTED and BROKEN are expected to replace the pseudo-targets
in parent Makefiles. (The RESTRICTED and BROKEN list didn't do
anything before, they were solely for grepping purposes.)
(4) The Motif support brings in four new variables: REQUIRES_MOTIF,
which the porter sets for ports that require Motif to build;
HAVE_MOTIF, which the user sets to indicate the system has Motif;
MOTIF_STATIC, which the user sets to indicate that the static
libXm, instead af the default dynamic library, is to be used; and
MOTIFLIB, which is set to "${X11BASE}/lib/libXm.a" or
"-L${X11BASE}/lib -lXm", depending on whether MOTIF_STATIC is set.
The porter is expected to replace all occurrences of libXm in the
{Im,M}akefiles with ${MOTIFLIB}, and this will allow both dynamic
linkage (for users with Motif) and static linkage (for those who
build packages to be used by those withot Motif, i.e., me ;)
automatically.
Original Motif support idea by: graichen
|
| |
|
|
|
|
|
|
| |
names of bash et al.
Submitted by: Thomas Gellekum <thomas@ghpc8.ihf.rwth-aachen.de>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
word: "zilch"). I guess the only way to get people try and comment on
these kind of things is to shove it down their throat.... ;)
Anyway, here's a set of changes required for auto-generation of READMEs
in ports directories. Necessary changes and additions of templates
to the ports tree will follow shortly.
Eventually I'll commit all the generated READMEs to the tree, but that
will be in the rather distant future. For now, I encourage anyone
with a -current systam and a matching ports tree to do a "make readmes"
at the top level and see what they get.
Next step will be to add pkg/{COMMENT,DESCR} to all the categories.
|
|
|
|
|
|
|
|
| |
which has been in the tree for a much longer time.
Sorry for the multiple commits and I know I shouldn't be doing this but
my hamster tells me to be orthogonal...("hey Phoenix, do you think
I should call it LOCALBASE?" "squeak" "ok, if you say so").
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
counterpart to X11BASE (default "/usr/X11R6").
Now PREFIX is set to ${X11BASE} or ${LOCAL_PREFIX} depending on
whether USE_IMAKE or USE_X11 is set or not.
This enables us to refer to non-X ports from X ports using
${LOCAL_PREFIX}, thus removing most of the remaining "/usr/local"s
from the ports tree.
This will also allow the system administrator to move the whole
"local" tree to somewhere else, without affecting X ports. (Of course
not all ports are necessarily happy with that, but we're working on
it.)
Based on: an idea that came up while I was watching a football game
several months ago ("hey, maybe I can move that sideline
without disturbing the other!")
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
"foo", what this does is:
(1) Put all distfiles and patchfiles in /usr/ports/distfiles/foo
(2) Go to ftp://ftp.freebsd.org/pub/FreeBSD/distfiles/foo when the
master site is down
When your port has a lot of dist/patchfiles, or has a file that does
not have a very port-specific name (e.g., "Makefile"), set this
variable instead of redefining DISTDIR. (If you redefine DISTDIR, (1)
will work but (2) will not.)
Agreed that it's a good idea by: adam
|
|
|
|
|
|
|
|
| |
(Sorry Jordan, but your other idea (${CATEGORIES}) was a major hit.)
Also remove the keyword field in the INDEX line and replace it with
two columns: build-time dependencies and run-time dependencies. They
are both list of package names (minus the ".tgz").
|
|
|
|
|
|
|
|
|
| |
(1) people can have weird paths and it will still work, and
(2) if you really need to use /usr/local/bin/cp instead of /bin/cp,
you can do that by changing only one line.
Submitted by: wosch
|
| |
|
|
|
|
| |
distributed patches --> distribution patches
|
|
|
|
|
|
|
|
| |
/var/db/pkg/${PKGNAME} exists. ("make install" will do nothing
because this is not a critical error and the installation is
treated as successful.)
Closes PR 870.
|
|
|
|
|
|
| |
Since it is empty in normal case, it not affect anything
It is useful for ncftp -c ugly_name > nice_name
^^^^^^^^^^^ ${NCFTPTAIL}
|
|
|
|
| |
with something of your own devising.
|
|
|
|
|
|
|
| |
too. Basically, if the name starts with a "/", it's tested with "test -e";
otherwise, it's tested with "witch -s".
Reviewed by: the ports list (well at least nobody complained)
|
|
|
|
|
| |
NO_MTREE should work as advertised (for both direct installation and
pkg_add) now.
|
|
|
|
| |
the -stable branch except the change between 1.182 -> 1.183.
|
| |
|
|
|
|
|
| |
Previous variant always fails on touch work/.extract_cookie
(or next following touches) because work directory not exists.
|
|
|
|
|
| |
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).
|
|
|
|
| |
Allows pre-set some variables to eliminate wrong tests
|
|
|
|
|
|
| |
"Attempting to fetch from $${site}."
Why it was in PATCHFILES and not in DISTFILES, I have no idea.
|
|
|
|
| |
Hinted by: joerg
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Suggested by: paul, joerg among others
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
do-extract target depending on defined(EXTRACT_ONLY) or not, simply
set EXTRACT_ONLY ?= ${DISTFILES} and always use ${EXTRACT_ONLY} as
the extraction list.
|
|
|
|
|
|
|
|
|
| |
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.... ;)
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
| |
Suggested by: asami
|
|
|
|
| |
made after the xmkmf run.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
xmkmf (i.e., everything in the base distribution) should be referred
to by full pathnames.
Suggested by: rgrimes, originally from one of his customers
|
|
|
|
| |
get a message (instead of a bunch of crap from mtree).
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
".../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
|
|
|
|
| |
do that.
|
|
|
|
|
|
|
|
|
| |
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? :)
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
"install". In other words, they won't do anything at all.
|
|
|
|
| |
1 if pkg_create returns error!
|
| |
|
|
|
|
|
|
| |
warning from fake-pkg.
# FORCE_PKG_REGISTER - If set, it will overwrite any existing package
# registration information in ${PKG_DBDIR}/${PKGNAME}.
|
|
|
|
| |
the install cookie.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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. :)
|
|
|
|
|
| |
there are a lot of hardwired "/usr/X11R6" paths out there that could stand
to use it as well.
|
|
|
|
|
|
| |
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?)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
the fully-formed PLIST to stdout and uses that.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Didn't make sense to have two ports with the same name.
|
|
|
|
|
|
|
|
|
|
| |
"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.
|
|
|
|
|
|
|
|
| |
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".
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
2. KEYWORDS+= CATEGORIES
3. CATEGORIES+= all (always want to be in "all"!)
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
`>> Attempting to fetch from $${site}' as it is misleading
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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/.
|
| |
|
| |
|
|
|
|
| |
complex extraction rules easier.
|
| |
|
|
|
|
|
| |
Use ECHO_MSG macro for printing "===>" line things so that I can now turn
those OFF when I don't want them.
|
|
|
|
|
| |
of use to a front-end program. Back out my bogus description of the `index'
target! :-)
|
| |
|
|
|
|
|
| |
the package target.The port may is not build and the package fails
otherwise.
|
|
|
|
|
|
| |
all X11R5 and X11R6 ports. This is the way how it should be normally
used according the manuals. Only pre-X1R5 ( X11R4, X11R3) ports can't
handle it.
|
|
|
|
| |
for more.
|
| |
|
| |
|
|
|
|
|
| |
args to take advantage of this.
Pointed-out-by: asami
|
|
|
|
|
| |
print a warning. A better fix will come along just as soon as I
work out what it is.
|
| |
|
|
|
|
| |
to have $PATH to it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
have three variables:
EXEC_DEPENDS - A list of "prog:dir" pairs of other ports this
package depends on. "prog" is the name of an
executable. make will search your $PATH for it and go
into "dir" to do a "make all install" if it's not found.
LIB_DEPENDS - A list of "lib:dir" pairs of other ports this package
depends on. "lib" is the name of a shared library.
make will use "ldconfig -r" to search for the
library. Note that lib can be any regular expression,
and you need two backslashes in front of dots (.) to
supress its special meaning (e.g., use
"foo\\.2\\.:${PORTSDIR}/utils/foo" to match "libfoo.2.*").
DEPENDS - A list of other ports this package depends on being
made first. Use this for things that don't fall into
the above two categories.
DEPENDS behaves exactly like before, so old Makefiles will still work
the same. The two variables are lists of pairs as described above.
For instance, if your program depends on unzip and libjpeg.5.*, use
the following definitions:
EXEC_DEPENDS= unzip:${PORTSDIR}/archivers/unzip
LIB_DEPENDS= jpeg\\.5\\.:${PORTSDIR}/graphics/jpeg
gmake:${PORTSDIR}/utils/gmake is automatically added to EXEC_DEPENDS
if USE_GMAKE is defined.
If NO_DEPENDS is defined, the list will just be printed out one by one.
|
|
|
|
|
|
| |
MAINTAINER?= line in here.
Idea by: jkh@FreeBSD.ORG
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
particular file, but there is a files/md5, it reports that it failed
the checksum
|
|
|
|
| |
to disallow prepending ../ in second level Makefiles
|
| |
|
|
|
|
| |
it would exit on *successful* extraction.
|
| |
|
|
|
|
| |
Add checksum check for extract, if checksum file present
|
|
|
|
|
|
|
|
|
| |
patch: extract
configure: depends patch
build: configure
install: build
Does this look ok?
|
|
|
|
| |
Submitted by: ollivier
|
|
|
|
| |
Submitted by: gpalmer
|
|
|
|
| |
Submitted by: gpalmer
|
|
|
|
| |
and it breaks mule the way it is now.
|
|
|
|
| |
feeble attempt to do so.
|
| |
|
| |
|
|
|
|
| |
needed for Autoconf 2
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
NO_EXTRACT ifdef so that tcpblast doesn't muck
things up
|
|
|
|
| |
bsd.port.subdir.mk: added check-md5 as target
|
| |
|
|
|
|
| |
BUILD_COOKIE instead
|
|
|
|
| |
inside PATCH_COOKIE
|
| |
|
|
|
|
| |
but needs more testing on more ports than I have on my box.
|
| |
|
| |
|
|
|
|
| |
Fixed.
|
|
|
|
|
|
|
|
|
|
| |
2) Change INSTALL_MANPAGES to NO_INSTALL_MANPAGES and document it
3) Add a PKGNAME variable to allow the package name
not to be dictated by stupid DISTNAMEs
4) Add a PATCH_DEBUG option and a slight change to the default
patch system - add --forward to help ensure correct patching
|
| |
|
|
|
|
|
| |
to blow away your current dir, because WRKDIR == CURDIR. This should
help tcpblast to not blow away itself in the clean target :-).
|
| |
|
|
|
|
|
| |
Conditionalize it off of INSTALL_MANPAGES until I can figure out just
why some X ports seem to like it and others not.
|
| |
|
|
|
|
|
|
|
|
|
| |
Further investigation showed that prefix was erroneously set to /usr/local
for X11 based ports as well, when the assumption was that they'd really go
into ${X11BASE} (an /etc/make.conf variable that the user's free to set).
Set X11BASE to /usr/X11R6 if the user hasn't already, and assume that
the user really wants prefix to point there when the port is XMKMF based.
|
| |
|
|
|
|
|
|
|
|
| |
MASTER_SITE_OVERRIDE - If set in the environment, will override everyone's
MASTER_SITES settings. Useful if you'd prefer to point to a
distfiles repository somewhere closer.
MASTER_SITE_FREEBSD - Sets OVERRIDE to be FreeBSD's own master repository.
|
| |
|
|
|
|
| |
list is traversed.
|
|
|
|
| |
attempts.
|
|
|
|
|
| |
`${MAKE} ${MAKEFILE} install', indirect the target through ALL_TARGET and
INSTALL_TARGET now, so they can be easily overridden.
|
|
|
|
| |
the same build, ignoring the INSTALL_COOKIE.
|
|
|
|
|
|
| |
about them.. :-) The patches/* won't work, it needs to be patches/patch-*
to avoid catching things like CVS files when working with a checked-out
copy of ports! Whoops!
|
|
|
|
|
|
|
|
|
|
|
| |
1. Make build rely on a BUILD_COOKIE now. I'm tired of builds
being redone gratuitously while I'm trying to debug a tree build
problem.
2. Remove all the literal `touch -f' commands and indirect them through
variables. This lets you "leave tracks" in different ways, depending
on the medium. Just part 1 of my planned changes to make builds
directly off the CD work.
|
|
|
|
| |
No need to call it `patch-aa' if you can simply call it `aa', etc.
|
|
|
|
|
| |
2. Make sure to pass PREFIX to sub-makes when installing. This allows you to
install to places like ${PREFIX}/bin in your own install rule.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
is an interactive port, and requires user input somewhere along
the way (either fetching, configuring, building or installing).
If the user then sets BATCH in their environment, this port will be
skipped. If the user sets INTERACTIVE, then ONLY those ports marked
interactive are run (allowing one to do all ports in two passes).
If the user sets both BATCH and INTERACTIVE, then a metal claw extends
from the CRT and brutally yanks their nose off.
|
| |
|
|
|
|
| |
Now both pre-install and install inherit the INSTALL_COOKIE.
|
|
|
|
|
|
|
|
| |
install cookie work any other way (perhaps I'm just being stupid).
In any case, INSTALL_COOKIE now works as advertised, and prevents duplicate
installations. pre-install users will have to keep their own cookies if
they wish to avoid duplicate installations, or tell me how to make the
rules run properly.
|
| |
|
|
|
|
| |
it issued again and again instead.
|
|
|
|
| |
configure: extract pre-configure ...
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Make DEPENDS fully qualified, and not implictly assume relative
to ${PORTSDIR}. This allows more arbitrary dependencies to be
specified. This also means that DEPENDS= x11/foo needs to be changed
to DEPENDS= ${PORTSDIR}/x11/foo in any Makefiles. I'll try to do
these changes myself.
2. Add an option NO_DEPENDS to disable the automagic building of depended
ports.
Submitted by: rww
|
|
|
|
| |
to track ${PREFIX} (this will override the PLIST prefix).
|
|
|
|
| |
to specify both (looks silly).
|
|
|
|
| |
at least the GNU ports play nice with PREFIX.
|
| |
|
|
|
|
|
| |
make an entire system work nicely with DESTDIR (to say nothing of being
able to move from /usr/local to somewhere else).
|
|
|
|
|
|
| |
Make DEPENDS now does a `make is_depended' in the target port.
This defaults to `all install' globally, but can be overriden locally
by a port if it wants to do different things when other ports depend on it.
|
|
|
|
|
|
|
|
|
|
| |
the light. `env' can be used to pass environment variables to shell
scripts this way, which means that all *configure/post-build scripts
_no longer take any arguments_; everything they should need (and more)
is now available in the environment. I'm working now to adapt the older
shell scripts over, but if you want beat me to it on some of your own
ports, don't let me stop you! :)
Submitted by: witr
|
|
|
|
| |
by Robert Withrow, but he prodded me into thinking about it again. Thanks, Rob.
|
|
|
|
|
| |
write permission to .CURDIR but write permission to WRKDIR.
Also, WRKDIR may be deleted and cookie still exist in CURDIR.
|
|
|
|
|
|
| |
made AND installed. Folks, check out DEPENDS if you have one port
that depends on another! With this change, it should be really convenient
to use.
|
| |
|
|
|
|
|
|
|
| |
make DEBUG_FLAGS=-g2
You can compile something for debugging at debugging level 2.
It will also take care not to strip the resulting executable(s).
|
| |
|
| |
|
| |
|
|
|
|
| |
HOME_LOCATION.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to a reasonable compromise:
MASTER_SITES now contains a space seperated list of sites for which each
DISTFILE may be retrieved. This should be a directory spec, which will be
concatenated with each file in DISTFILES. HOME_LOCATION is *gone* now
and isn't used for anything, so you can delete it from your Makefiles.
If you want to force a fetch from a given location, simply do something like:
MASTER_SITES= ftp://fnord.foo.bar/pub/dist
DISTFILES= a.tar.gz b.tar.gz
Your entry in MASTER_SITES will be tried first to fetch a.tar.gz and
b.tar.gz, followed by any master sites we have set up (right now, only
freebsd.cdrom.com).
|
|
|
|
| |
is fetched and what is actually unpacked.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. DISTFILE is gone and replaced by DISTFILES, which can contain one or
more file specifications.
2. MASTER_SITE created, which points to the distfiles directory on
freebsd.cdrom.com (which I'll set up in a moment).
3. HOME_LOCATION is now simply a hint, and is never directly used except
to inform the user when ncftp unable to transfer a file from
MASTER_SITE.
4. ncftp is now assumed to live somewhere in the path, in preparation for
Andrew bringing it in on a more permanant basis.
5. XMKMF defined - it was not before.
Thanks to Andrew (ache) for many helpful suggestions.
|
|
|
|
|
|
|
|
|
|
|
| |
multiple targets when dealing with creating a set of distribution files
from scratch. Another problem is *verifying* that a given file fetched
from its HOME_LOCATION is the one we wanted (what if the stupid ftp site
maintainer updated it in place?). Rich Morin pointed this out and suggested
some solutions. I need to think about it some more (suggestions?).
For now, we have a seperate `fetch' and `extract' target.
Submitted by: jkh
|
|
|
|
|
| |
Reviewed by: jkh
Submitted by: mr
|
|
|
|
|
|
|
|
|
|
| |
remains, and that's that this does not work with multiple targets, which
sort of throws the tk and fvwm distributions into a mess. tk needs both
a tarball and a patch file from the same site, fvwm needs up to 3 different
files if you want all the options. If anyone wants to take this the last
few steps of the way towards somehow handling cases like this, I'd be very
happy.
Submitted by: jkh
|
|
|
|
|
| |
working/closer to working now.
Submitted by: jkh
|
|
|
|
|
| |
convention to make searching for error messages easy.
Submitted by: jkh
|
|
|
|
|
| |
is turning into the original make rule from hell!
Submitted by: jkh
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
${DISTDIR}/${DISTNAME}${EXTRACT_SUFX}
With simply `${DISTFILE}' which defaults to the above. This lets you
easily name distribution files that don't cooperate with any rational
naming syntax.
Similarly, make a variable called ${PKGFILE} which fills the same purpose
for packages.
Just trying to make this thing really really general to suit every need.
Now I need somebody to figure out how to make the extract target auto-fetch
things from ${HOME_LOCATION} with ncftp *if* ncftp is installed and it
looks possible to reach the foreign site. That will take some fancy footwork,
but would be slick. I've changed this too so that HOME_LOCATION is no longer
set by default, allowing you to do an .if defined(..) check for it. The
extract rule now does this too.
Submitted by: jkh
|
|
|
|
|
| |
Reviewed by:
Submitted by:
|
|
|
|
|
|
| |
default extract and configure targets, add a pre-clean since I need it for
pkg_install port.
Submitted by: jkh
|
|
|
|
|
|
| |
to also run a rule before you apply patches and then go into the 3 stage
script configuration. This bit Adam David in his dgd port.
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
|
| |
started using some of its features reflexively.
Submitted by: jkh
|
|
|
|
|
| |
This will cause the configure pass to do an `xmkmf' if set.
Submitted by: jkh
|
|
|
|
|
|
|
|
|
| |
Add pre-{build,extract,install,...} targets for Torsten, who apparently
needs them. Can't do effective post-* targets without major work, sorry.
Jordan
Reviewed by:
Submitted by:
|
|
|
|
|
| |
can elect to dump all finished packages in one directory).
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
|
|
| |
sources. Configuring doesn't always _do_ anything, which is why it's
a warning and not an error.
Submitted by: jkh
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
special ports building targets and will recurse properly. Sorry,
Julian E - no fancy prompts, just recursion! :-)
Added a `bundle' target. Purpose is as follows:
You want to give someone a complete tree sans distfiles (for
sticking on CDROM perhaps?) but the difficulty there is that
the first time the user types `make clean', all the unpacked
sources are gone again. Typing `make bundle' recreates the
original distfile if it can, so someone can "back up" their
unpacked tree easily with one command.
Whoops, just thought of something - it should warn if you
configured the working source.
Ok, next commit! :)
Submitted by: jkh
|
|
|
|
|
|
| |
thing with recursive build, configure, bundle or extract targets.
Reviewed by:
Submitted by:
|
|
|
|
|
| |
${PORTSDIR} too now - pass it to any and all config scripts.
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. New variable DEPENDS lets you list packages that this depends on,
relative to the top (lang/tcl, x11/tk, etc). These packages will
always get made first.
2. Don't configure again if you've already done so successfully.
3. Add pre-configure and post-configure hooks. You can now do a pre-configure,
a local configure, a port-provided configure and finally a post-configure
if you really really want to. I can't imagine anything this will leave us
not being able to do! :) [ Yes, I have actually found a use for at least
two of these in one port - see x11/tk!].
Submitted by: jkh
|
|
|
|
|
| |
was I thinking before..
Submitted by: jkh
|
|
|
|
| |
Submitted by: jkh
|
|
|
|
|
| |
then run it even if GNU configure is to be run later.
Submitted by: jkh
|
|
but fairly usable at this stage.
Submitted by: jkh
|