summaryrefslogtreecommitdiff
path: root/mk/bsd.pkg.mk
AgeCommit message (Collapse)AuthorFilesLines
2005-08-08Restore the @(..)s which were removed in rev 1.1706.veego1-7/+7
They are needed in the fetch-list case to prevent outputting anything if the distfile is allready in $DISTDIR.
2005-07-22Sort the dependencies list alphabetically when checking if they arerillig1-2/+3
installed. That makes it easier to check if a specific package is listed or not.
2005-07-17Override the INSTALL setting in sys.mk that messes up the rest of thejlam1-1/+2
logic in the tools framework.
2005-07-16Get rid of USE_PERL5. The new way to express needing the Perl executablejlam1-2/+2
around at either build-time or at run-time is: USE_TOOLS+= perl # build-time USE_TOOLS+= perl:run # run-time Also remove some places where perl5/buildlink3.mk was being included by a package Makefile, but all that the package wanted was the Perl executable.
2005-07-15Drop distinction between PKGSRC_USE_TOOLS and USE_TOOLS by makingjlam1-10/+10
PKGSRC_USE_TOOLS go away. There is now only a single USE_TOOLS variable that specifies all of the tools we need to build/run the package.
2005-07-06For the fetch-list target: Do not use mkdir if just creating a shellreed1-14/+9
script that will make the directory later. This fixes the problem where it fails when doesn't have write access -- for example use "make fetch-list" to create the shell script to use on another system. Thank you, Geert Hendrickx, for your feedback. Also in a few places echo ${fetchfile:T} instead of ${fetchfile}. (Todo: maybe should not say "not fetched" until has tried all sites.)
2005-06-27pkglint does not output any "OK" lines by default, so there's no need torillig1-2/+2
filter them out.
2005-06-27Improve English in warning. From Rhialto in PR 30610. (second occurrence)wiz1-2/+2
2005-06-27Improve English in warning. From Rhialto in PR 30610.wiz1-2/+2
2005-06-23Clean up some clutter in pkgsrc/mk: move the ${OPSYS}.*.dist mtreejlam1-2/+2
files into mk/platform, where they now live with the ${OPSYS}.mk files.
2005-06-23Back out previous -- committed by mistake.wiz1-3/+1
2005-06-23Add missing line continuation backslashes.wiz1-1/+3
Noted by Jukka Salmi.
2005-06-23Split out the check-wrkref implementation and related variables fromjlam1-67/+1
bsd.pkg.mk into bsd.pkg.check.mk file.
2005-06-23Split out the check-files implementation and related variables intojlam1-114/+9
a new bsd.pkg.check.mk file. This new file will eventually collect all of the various "check" targets that are run at install-time. While here, change the implementation of check-files so that it is not so monolithic. Change the meaning of the CHECK_FILES variables so that if it's not "no", then the file checks are run. Also, allow these checks to be run if the user explicitly sets CHECK_FILES in /etc/mk.conf, even if PKG_DEVELOPER is not defined.
2005-06-23Reverse the checks for the value of CHECK_WRKREF so that if it's valuejlam1-4/+4
isn't "no", then we run the checks. This allows for possibly making CHECK_WRKREF a more multi-valued option or list in the future.
2005-06-14Allow the test for whether the file is a text file to be overridden viajlam1-2/+3
CHECK_WRKREF_IS_TEXT_FILE.
2005-06-13In the check-wrkref target, change the algorithm so that text filesjlam1-7/+20
are checked for ${WRKDIR}, but all files are checked for ${TOOLS_DIR} (assuming that ${TOOLS_DIR} is in ${WRKDIR}). Also, let CHECK_WRKREF_PKG set the name of the package to check.
2005-06-11Add a default fall-through for the shell case statement (portabilityjlam1-1/+2
issue).
2005-06-10check-wrkref is a make target that greps through the installed filesjlam1-1/+56
for a package and looks for references to the build directory. If any such references are found and PKG_DEVELOPER is defined, then exit with an error. This target is automatically run after a package is installed if CHECK_WRKREF is "yes". The default value for CHECK_WRKREF is "no". You can specify certain files to be skipped during the check by setting CHECK_WRKREF_SKIP to a list of shell globs. Installed files that match these globs are skipped when running the check-wrkref target. The original implementation was from Dan McMahill sent to me in private email. I've added a few more bells and whistles for this commit. This target will be helpful for catching any unwrapped files or mis-embedded tool paths.
2005-06-09General improvements to the changes-entry target:jlam1-10/+20
* Improve the documentation. * Avoid running commands during Makefile processing by using the :sh modifier instead of defining variables using != * Add a new variable PKGSRC_CHANGES that holds the path to the CHANGES file to be modified. * Use ${ID} and ${DATE}, which are provided by the tools framework and avoid PATH issues.
2005-06-09Don't reinvent PKGPATH, which already contains just the "category/package"jlam1-3/+2
portion of the path.
2005-06-09Add a documentation block above the changes-entry target.jlam1-1/+16
2005-06-09Delay running of id until it is needed. Fixes PR 30477 by Neil Hoggarth.wiz1-5/+3
2005-06-08Add changes-entry target, which adds an entry for the current packagewiz1-1/+22
into pkgsrc/doc/CHANGES. The type of the entry depends on what CTYPE is set to, which defaults to "Updated". Other possible values are "Added", "Renamed", "Moved", and "Removed". An example usage would be: cd /usr/pkgsrc/category/package make changes-entry CTYPE=Added after you added a new package, and similar for the others. If NETBSD_LOGIN_NAME is not set in /etc/mk.conf, it defaults to your local login name.
2005-06-04Added a leading underscore to the names of the *_COOKIE variables, as theyrillig1-54/+54
are not part of the public interface.
2005-06-03Back out revision 1.1684. MAKEFLAGS was being propagated incorrectlyjlam1-14/+1
through to dependencies, which caused dependencies to have improper lists of tools required. XXX This whole mess with MAKEFLAGS and which ones are passed along when XXX running the install-depends target needs to be fixed for real.
2005-06-01Massive cleanup of buildlink3.mk and builtin.mk files in pkgsrc.jlam1-5/+1
Several changes are involved since they are all interrelated. These changes affect about 1000 files. The first major change is rewriting bsd.builtin.mk as well as all of the builtin.mk files to follow the new example in bsd.builtin.mk. The loop to include all of the builtin.mk files needed by the package is moved from bsd.builtin.mk and into bsd.buildlink3.mk. bsd.builtin.mk is now included by each of the individual builtin.mk files and provides some common logic for all of the builtin.mk files. Currently, this includes the computation for whether the native or pkgsrc version of the package is preferred. This causes USE_BUILTIN.* to be correctly set when one builtin.mk file includes another. The second major change is teach the builtin.mk files to consider files under ${LOCALBASE} to be from pkgsrc-controlled packages. Most of the builtin.mk files test for the presence of built-in software by checking for the existence of certain files, e.g. <pthread.h>, and we now assume that if that file is under ${LOCALBASE}, then it must be from pkgsrc. This modification is a nod toward LOCALBASE=/usr. The exceptions to this new check are the X11 distribution packages, which are handled specially as noted below. The third major change is providing builtin.mk and version.mk files for each of the X11 distribution packages in pkgsrc. The builtin.mk file can detect whether the native X11 distribution is the same as the one provided by pkgsrc, and the version.mk file computes the version of the X11 distribution package, whether it's built-in or not. The fourth major change is that the buildlink3.mk files for X11 packages that install parts which are part of X11 distribution packages, e.g. Xpm, Xcursor, etc., now use imake to query the X11 distribution for whether the software is already provided by the X11 distribution. This is more accurate than grepping for a symbol name in the imake config files. Using imake required sprinkling various builtin-imake.mk helper files into pkgsrc directories. These files are used as input to imake since imake can't use stdin for that purpose. The fifth major change is in how packages note that they use X11. Instead of setting USE_X11, package Makefiles should now include x11.buildlink3.mk instead. This causes the X11 package buildlink3 and builtin logic to be executed at the correct place for buildlink3.mk and builtin.mk files that previously set USE_X11, and fixes packages that relied on buildlink3.mk files to implicitly note that X11 is needed. Package buildlink3.mk should also include x11.buildlink3.mk when linking against the package libraries requires also linking against the X11 libraries. Where it was obvious, redundant inclusions of x11.buildlink3.mk have been removed.
2005-06-01*.makevars.mk doesn't exist until after ${WRKDIR} is created, whichjlam1-1/+14
doesn't happen until after the package is extracted. Prior to extraction, cache the variables named in MAKEVARS using MAKEFLAGS instead. This avoids invoking each expensive computation up to four times before it gets cached. For packages that include lots of buildlink3.mk files, this saves a lot of CPU time.
2005-06-01Include bsd.makevars.mk in bsd.prefs.mk instead of bsd.pkg.mk. Thisjlam1-2/+1
allows the saved make variables to be re-set whenever bsd.prefs.mk is included, and is a shortcut for the common case where a Makefile includes both.
2005-06-01Separate out the logic to include the correct <phase>.makevars.mk filejlam1-22/+2
into a new file bsd.makevars.mk that can be included by other Makefiles.
2005-05-31Convert USE_GNU_TOOLS into USE_TOOLS as the former is no longer supportedjlam1-2/+1
in pkgsrc.
2005-05-31Rename describe-options to show-options, replacing the old show-optionsdillo1-4/+4
target.
2005-05-29Simplify unprivileged builds by adding a new variable, UNPRIVILEGED, that,jmmv1-1/+4
when set to YES, changes multiple defaults to let this work properly.
2005-05-26Fixed the output of show-tools.rillig1-2/+2
2005-05-22Finish removing instances of _USE_NEW_TOOLS from pkgsrc.jlam1-20/+4
2005-05-22Remove the old tools framework and references to _USE_NEW_TOOLS.jlam1-18/+1
2005-05-22Fixed some quoting issues.rillig1-34/+34
2005-05-21In computing _REPLACE_LOCALEDIR_PATTERNS_FIND_cmd, make sure the :shjlam1-5/+10
operator does not result in an empty string as make(1) doesn't like them. Also, rewrite the variable substitution for the find(1) command to be more readable, and get rid of the extra grep(1) in favor of using :N.
2005-05-20Change instances where we stored `shell command` in a make variable intojlam1-6/+5
variables that use the :sh modifier. This still causes expansion to only happen when referenced, and has the advantage of being :Q-safe. Bring back the changes from revision 1.19 of mk/subst.mk now that the problem noted above has been fixed. This passes the buildlink-unwrap regression test.
2005-05-18Replaced the NO_WRKDIR_SYMLINK variable with CREATE_WRKDIR_SYMLINK, asrillig1-2/+3
suggested by Alistair. If you don't want the symlinks, set the variable to "no".
2005-05-18If NO_WRKDIR_SYMLINK is defined, no symlink to ${WRKSRC} is created whenrillig1-1/+3
the WRKOBJDIR is set explicitly. This allows for having pkgsrc mounted r/w without actually modifying it.
2005-05-18Added the show-tools target, which emits a shell code fragment defining allrillig1-1/+14
tools known to the pkgsrc infrastructure.
2005-05-17Turn _MANCOMPRESSED into a strictly "yes" and "no" variablejlam1-2/+6
(case-sensitive) to simplify writing the do-install target code that automatically compresses or decompresses man pages after installation.
2005-05-17Rework the README.html generation code. Major changes are:dmcmahill1-6/+8
- completely redo the code which decides on the machine architecture, operating system, and operating system version for the binary packages. The old way just used to directory names to take a guess. The new way creates a cache file containing meta-data for all the binary packages in each "All" directory. This cache file is consulted when generating the lists of available binary packages. The meta-data is obtained with pkg_info so it should always be correct even if you do something silly like mix OS_VERSION or MACHINE_ARCH packages up in the same directory. Among the benefits are: works when PACKAGES is not $PKGSRC/packages, works with a more or less arbitrary subdirectory structure, works when there are subdirectories for multiple operating systems. This portion of the fix should address PR25390. The cache files are only updated when the contents of an "All" directory changes or if the cache file format changes. There is some room for improving the updating of the cache files, but its not too bad the way it is. - fix up some of the awk code so that generadme.awk works with Solaris nawk as well as NetBSD's nawk and gawk (for pre-2.0 systems). - remove some "if ! foo" shell constructs to increase portability. - be more consistent with what variables get passed to mkreadme from make and which ones are determined automatically. Mostly this meant moving stuff into mkreadme to make it easier to run it standalone.
2005-05-17Save the names of the patches applied during the patch phase into thejlam1-2/+2
patch cookie file, one per line. A package with no patches applied will have a patch cookie file with no lines (zero bytes).
2005-05-16Don't have USE_TOOLS+=imake replace USE_IMAKE. Rather let the formerjlam1-2/+2
specify that imake is used by the package, while the latter triggers the special do-configure process.
2005-05-16Fix mistake in previous commit -- expr is required by the wrapperjlam1-2/+5
framework. Problem & fix from tron@.
2005-05-16No package seems to be using ${NICE} so don't require it.jlam1-3/+3
2005-05-16Don't require m4 for all packages, only for packages that use it.jlam1-3/+3
2005-05-16tee is only used by bsd.bulk-pkg.mk.jlam1-5/+5