as it's only used internally by bsd.prefs.mk.
* Make _PKGSRCDIR a public variable by renaming it to PKGSRCDIR.
Also, generate its value from ${_PKGSRC_TOPDIR} so it's less fragile
than the old method of stripping off the last two components of
${.CURDIR}. PKGSRCDIR may now be used after bsd.prefs.mk is defined.
* Change all references to _PKGSRCDIR to PKGSRCDIR.
in the process. (More information on tech-pkg.)
Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.
Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
create PLIST awk substitution patterns for directories created by the
current package. This is particularly useful for base packages that
create a directory structure that is then used by subsequent (dependent)
packages.
- added options for enabling/disabling specific checks
- added options for enabling/disabling specific warnings
- improved the --help message
and corresponding man page updates.
From Roland Illig with slight fixes by me.
include fixing fgetln() to account for \0 characters due to implementing
it using fgets() (analysis provided by Urban Boquist). Also add a
definition for __restrict if not present since it is used in the regex
implementation code from src HEAD.
This has been tested to work correctly on:
FreeBSD-4.8/i386
NetBSD-1.6.2/i386
Solaris 9
When comparing two version numbers vector the shorter one needs to be
extended with 0. Cf. src/usr.sbin/pkg_install/lib/str.c:vtest().
Previously lintpkgsrc considered that 'png-1.2.6', which version vector is
[1,0,2,0,6], is "less" than 'png-1.2.6rc1', which version vector is
[1,0,2,0,6,-1,1]. No wonder lintpksrc -V considered the package png-1.2.6
being vulnerable wrt the 'png<1.2.6rc1' entry in pkg-vulnerabilities files.
While here teach lintpkgsrc about the 'alpha' and 'beta' version elements.
Tests are found in pkgsrc/regress, tests are run by executing pkg_regress.
Based on an idea discussed at pkgsrcCon 2004. Thanks to dillo@ for review
and refinements, and to jlam@ for review.
which are the full option names used to set rpath directives for the
linker and the compiler, respectively. In places were we are invoking
the linker, use "${LINKER_RPATH_FLAG} <path>", where the space is
inserted in case the flag is a word, e.g. -rpath. The default values
of *_RPATH_FLAG are set by the compiler/*.mk files, depending on the
compiler that you use. They may be overridden on a ${OPSYS}-specific
basis by setting _OPSYS_LINKER_RPATH_FLAG and _OPSYS_COMPILER_RPATH_FLAG,
respectively. Garbage-collect _OPSYS_RPATH_NAME and _COMPILER_LD_FLAG.
rcorder is designed to print out a dependency ordering of a set of
interdependent files. Typically it is used to find an execution
sequence for a set of shell scripts in which certain files must be
executed before others.
First two chunks of diff: Fix for perl-5.6.1; addresses PR 26718.
Remainder:
- made $category a local variable of checkfile_Makefile
- redefined the meaning of the return value of the check_* subs
(siehe Zeile 37 des Patches)
Welcome to 3.89.
include:
* Rework the way that poll() is detected so that it more closely
follows how the rest of the replacement functions are detected.
* Split err*() and warn*() functions into separate err.c and warn.c
files so that we can more finely isolate the objects files pulled
in by the linker. This should fix building textproc/nbsed on Solaris.
* Move more definitions from nbcompat.h into nbcompat/*.h. This makes
it more clear which NetBSD headers are expected to provide which
function declarations and macro definitions.
* Clean out nbconfig.h by moving all of the relevant definitions into
the correct nbcompat/*.h files.
* Update all of the library functions to the latest from src HEAD.
Also change the way that sources are modified when imported -- we
now include <nbcompat.h> before the first system header, include
<nbcompat/*.h> versions of headers instead of system ones where
available, and "#if 0" the sections that make no sense when being
built outside of the NetBSD source tree. This should make future
updates from src HEAD, e.g. for security updates or bug fixes,
easier.
* Move all private headers into a subdirectory and include the headers
from the private directory. This avoids any nameclashes with system
headers with the same name.
the Makefiles so that they can be built by really basic make programs.
Move the awk script in the Makefile into a separate file for clarity, and
so that really basick make programs won't choke on the continuation lines.
from the previous version include:
- Add a mtree2nbcompat script to ease importing from src HEAD into
pkgsrc.
* Implement -M to "merge" entries, even with different types. This
can be used in /etc/security to allow special.local to override
types of entries in special (e.g, replacing a dir with a link).
* Rename Wflag to mtree_Wflag, to be more "external namespace" friendly.
branch of src). Changes from version 20040730 include:
Modify pkg_info so that it will only print information on uninstalled
binary packages in the current working directory if -. is given on
the command line. If no -. is given, pkg_info will look for its
information in the ${PKG_DBDIR}. This addresses a long-held gripe on
the part of a number of people, including myself (agc), which completely
violated the POLS.
Add a -q switch to pkg_admin, which allows it to work in a quiet
manner. Fixes the change request in PR 26583, but in a different
manner, preserving existing behaviour and making the new behaviour
dependent upon a command line option.
include:
* Adding a regex(3) implementation for those platforms that don't
have one, e.g. IRIX 5.3.
* Allow nbcompat.h to be included multiple times in case it's needed
to override values of set by config.h in bootstrap packages. This
should fix problems with building pkg_install and pax on platforms
that have /usr/include/glob.h.
* Remove namespace.h, which should be a no-op since we're building
a userland library separate from the NetBSD sources.
* Remove HAVE_CONFIG_H checks from sources since we're always going
to have and and we're always going to be including it.
* Rename all inclusion guards in nbcompat/*.h to be _NBCOMPAT_*_H_ so
that it won't get triggered by any settings in system headers.
This has been tested on:
FreeBSD-4.8/i386 Debian Linux 3.0 (woody)
IRIX 6.5 MacOS X 10.2.8
MacOS X 10.3.5 NetBSD-1.6.2/i386
NetBSD-2.0_BETA/i386 Red Hat Linux 7.3
Solaris 7/sparc Solaris 8/sparc
Solaris 9/sparc
version of libnbcompat instead of requiring libnbcompat to be installed.
This simplifies testing of bootstrap packages without root privileges
on a system that has already been bootstrapped.
include working around an apparent bug in an autoconf macro defined in
aclocal.m4. This should now cause getopt_long() to be built on systems
that are missing getopt.h. This version of libnbcompat has been tested
on the following platforms:
FreeBSD-4.8/i386
MacOS X 10.2.8
NetBSD-1.6.2/i386
include:
* Re-adding a default value for pkg_use_nbcompat_vis; this was
causing the configure script to fail on platforms that had funky
versions of vis(). This should fix reported problems on Solaris 8
and on IRIX 5.3.
* Added setgroupent() and setpassent() compatibility functions so
that pwcache.c will build without complaining about an incompatible
pointer type assignment.
* Remove unused tests for <arpa/nameser.h>, <netdb.h>, h_errno and
hstrerror(). These were originally used to bootstrap lukemftp, but
tnftp doesn't need libnbcompat to build nowadays, so we don't need
these anymore.
* Cleanup: in cases where we test for a function using AC_REPLACE_FUNCS,
move the function prototype into a nbcompat header that is the
same name as the NetBSD header that contains that declaration,
and include that file in place of the original one within
nbcompat.h.
This version has been tested to build on the following systems:
FreeBSD-4.8/i386 NetBSD-1.6.2/i386
FreeBSD-5.2.1/i386 NetBSD-2.0_BETA/i386
IRIX 6.5 Red Hat Linux 8.0
MacOS X 10.3.4 Solaris 8
MacOS X 10.3.5 Solaris 9
Should hopefully fix PR 26551, but if anyone has a better solution, or is
willing to do the necessary work to allow pkg_tarup to be run by any user,
ideas are welcomed.
Say hi to version 1.6.2.
configuring libnbcompat. This adds more things to the environment, e.g.
AWK, CFLAGS, CPPFLAGS, etc. This should fix problems building on IRIX 5.3
where the system nawk wasn't being properly found.
> Re-work the code which checks the recorded build versions of a binary
> package to make pkg_add work properly when no +BUILD_INFO file exists.
>
> Modify the return value from read_buildinfo() to return 1 for success
> and 0 for failure.
>
> Use symbolic constants, rather than integers.
>
> If we can't read the build information, always tell of this fact.
>
> Bump version to 20040730
>
> Addresses PR 26429; a different version of these mods were verified to
> allow a +BUILD_INFO-less binary package to be added by Martin Husemann.
include:
(1) Add a statvfs() implementation based on statfs(), and remove the
statfs() NetBSD-compatibility implementation. statvfs() is used
in src/usr.sbin/pkg_install on the HEAD branch.
(2) Add a fnmatch() implementation, needed by IRIX. fnmatch() is used
in src/usr.sbin/pkg_install on the HEAD branch.
(3) Remove fseeko(), inet_ntop(), inet_pton(), sl_*() strptime(), and
timegm() as they're not used by any of the bootstrap packages that
require libnbcompat (pax, mtree, pkg_install). All that's left is
what's necessary to bootstrap those three packages.
particular data set has the current directories under ${pkgsrc} for
all known packages, unlike the location of where the package lived
when you built it. It may have moved, you see. This makes it
possible for pkgdepgraph to rebuild (so to speak) packages that have
moved.
And now there are 2.7.
Add several command line options to control how and where pkg_tarup creates
packages. pkg_tarup is now functional enough that pkg_tarup_all just runs it.
Add various bits of quoting to make packages that contain filenames with
spaces more likely to work.
Add a man page.
Make buildlink3.mk file output the default, and ignore any "-3" flags
on the command line for people who can't change their habits quickly.
Increase version to 3.5.
o Instead of returning an error, pass the control to the actual call. This
avoids a failure in make because of broken uname() when libkver is used.
OK'd by seb@.
Parse Make .{if,endif,else,elif,include} directives which
contain a space between the . and the directive. Fix an include
path issue which this threw up. Now 'lintpkgsrc -d' correctly
extracts the PKGNAMEs for the gcc3 packages.
It still doesn't understand 'dewey' versions with alpha chars, or
some of the more interesting makefile constructs, but it looks closer
to reality.
- made the program compile with "use strict"
- completely rewrote some subs to make the code more readable
- converted the global ("local") variables into local ("my") ones ;-)
- limited the scope of variables where possible
- added file and line number to the error messages where possible
Patch contributed by Roland Illig in private mail.
Changes:
- Handle a rarely used patch format correctly
- Do not output superflouus linebreaks anymore
- Check the contents of the COMMENT field only if it exists
- Handle invalid dependency specifications correctly
- Correctly handle Makefile variables ordering
- Output complete filename of absolute filenames
- Added a new scheme for loading text files into memory so that the
location of an error or warning can be given exactly (file + line) to
the user.
- Refactored the checkfile_patches_patch subprogram to use the new text
file processing and to make clearer what is checked.
- Rework undefined variable handling. Fixes issue introduces in 3.80
- Never run a pkg_info in pkgdistdir. Avoids a serious misfeature of
pkg_info whereby it looks for a package in the current directory
by default.
- Append appropriate dirs to path - should fix pkg/23534
- Undefined variables evaluate to blank not UNDEFINED - should fix pkg/24475
- Handle ${C and ${S constructs that use separators other than /
- Slightly more debugging
- die if uname fails
== functional changes ==
- prints the various "OK: ..." messages only when called with "-v".
- prints a summary after pkgsrc category checks
- fixed a bug for commented category entries (in line 1718)
- removed the option "-q". It has become unnecessary
== refactoring ==
- more consistent naming scheme for variables and functions
- replaced some "local" with "my" when possible
- clustered the variables that are processed by the ${SED} commands
- provided function prototypes for argument checking
- replaced the old perror by log_{error,warning,info}.
- Avoided the (implicit or explicit) use of $_ in many places
Patch contributed by Roland Illig via private mail.
required to install fonts/jmk-fonts and fonts/sgi-fonts with recent X.
Suggested by Kibum Han.
Also add mkfontscale to CONFLICTS because mkfontscale installs
bin/mkfontscale.
Bump PKGVERSION to 1.11.
- Ensure that the first attempt to build pkgtools/digest inside the
chroot works by explicitly setting PKGSRC_COMPILER to gcc (pkg_comp
assumes NetBSD in lots of places, so this assumption is acceptable).
It was failing because it set PKGSRC_COMPILER to the empty string in
the environment, which breaks the build.
It's misleading to have uninstalled rc.d scripts in ${FILESDIR}
marked executable just because they were inadvertently committed
that way; they need to be processed by the install machinery in
order to work.
Since we set desired permissions at install time, it's generally
best to avoid having "executable" files in pkgsrc (with the notable
exception of pkglocate, which runs in place).
For files not yet committed, please correct the permissions before
committing. For files already in the repository, you'll need help
from an administrator.
either indicate how involved the rebuild process is (how many
interrelated packages can be deleted/rebuilt at once) or specific
packages you do not want to impact (like...perl?).
Welcome to 2.6.
- Improve I/O buffer mangement.
- Don't put "@exec" and "@unexec" in the package list for symbolic links
which point to normal files. This allows the automatic manual
decompression to handle symbolic links to manual pages correctly.
The update fixes PR pkg/25723 by Kouichirou Hiratsuka.
and HAVE_SYS_POLL_H if we don't have a native poll() implementation.
prevents including of libnbcompat's poll.h as well as the system's
poll.h where we should be ignoring the system's poll.h.
fix tested by Jeff Rizzo on MacOSX 10.3.3.
codepath to be executed by correcting the SHOW_* macro definitions. Also
fix up some function prototypes so this builds with -Wall. Fixes from
pkg/25494.
Add a new flag -Q (for "query") to pkg_info(1) to query the build
information for the definitions of specific variables that were saved
from build time, e.g.
$ pkg_info -Q PKGPATH glib
devel/glib
$ pkg_info -Q PROVIDES glib
/usr/pkg/lib/libglib.so.13
/usr/pkg/lib/libgmodule.so.13
/usr/pkg/lib/libgthread.so.13
Should use RCD_SCRIPTS mechanism (which can automatically
install to ${RCD_SCRIPTS_EXAMPLEDIR}) which automatically
registers the rc.d script(s) in the PLIST.
New version is 3.73.
(MacOSX 10.3) by adding a custom test for _POLL_EMUL_H_ which is
defined in poll.h on some MacOSX 10.3 systems.
not all 10.3 systems have poll.h, so only do the poll() test if at
least one of the header files is found.
in addition to member 'st_flags' of struct stat. Use HAVE_FILE_FLAGS instead
of HAVE_STRUCT_STAT_ST_FLAGS.
This avoids confusion on UnixWare which has 'st_flags' but does _not_ support
file flags.
tree:
Make pkg_add recognise binary packages built with ignored recommendations
(IGNORE_RECOMMENDED set in the presence of RECOMMENDED pre-requisites).
This change is fully backward-compatible: binary packages have set the
corresponding BUILD_INFO since RECOMMENDED was implemented. Packages
built before that time will install as before.
Bump PKGTOOLS_VERSION to 20040411.
This closes PR pkg/24712 by Thomas Klausner.
- Fix nawk issues (NetBSD-2.0 and Solaris) - Fixes PR pkg/24931
- Fix inverted -k test when generating list of binary packages
- Misc cleanup & removal of debugging entry
revision 1.5
date: 2004/04/06 05:56:07; author: agc; state: Exp; lines: +14 -11
Fix signature verification after pkg_add and friends were changed to use
fexec() - trying to exec "gpg --verify %s" won't work with fexec, so split
up the command into separate words.
- Make kern-GENERIC.tgz part of the default SETS value, so that we get a kernel
inside the chroot. If the user removes it from the list, and no /netbsd file
exists after extraction, create an empty /netbsd kernel.
This fixes packages that look for a kernel during compilation, like net-snmp.
Found by cube@.
multiple identical strings appear in a source file.
As a result, comparing char *o to the "" pointer gives the wrong result
in vis.c, as the "" pointer we're checking against isn't the same as the
"" which initialised char *o.
Use a global pointer initialised to "", and use it for MAKEEXTRALIST()
calls.
Thanks to Christos Zoulas for suggesting the right solution :)
include creating buildlink3.mk files that include other buildlink3.mk
files outside of the region that is protected against multiple inclusion.
This is required to fix a bug in properly ordering the packages listed
in BUILDLINK_PACKAGES.
in XFree86>=4.3; ignore it when checking dependencies or buildlinking.
Skip also randrext (Xrandr's header files) in this case.
The patch agains x11-links' builtin.mk is a slightly modified version of
the patch jlam@ posted in:
http://mail-index.netbsd.org/tech-pkg/2004/03/15/0001.html
ok'd by jlam@
pkg_install, but older NetBSD installations, e.g. 1.5.3, won't support
them. In this case, we explicitly use the native GCC compiler to
avoid problems with depending on pkgsrc GCC for building pkg_install.
Just a comment doesn't seem to suffice in all cases. For no-op commands,
use an explicit "true" invocation to avoid problems. (A future merge of
current bmake may fix this issue.)
- check for existence of fsid_t type, and typedef it if missing
- check for existence of struct statvfs.f_basetype field
- if <sys/mkdev.h> is included and makedev() is missing, try to use mkdev()
- add replacement library file for utimes() by wrappering utime()
included manually by a package, but is intended for inclusion by
bsd.buildlink3.mk. It will be used to avoid special-casing x11-links
when creating symlinks into the buildlink directory.
- Do not check for fnmatch(3) in the default configure script because we
don't know beforehand if a package wants a GNU or a POSIX version of it.
This fixes the build of, for example, diffutils.
autoswc is an utility that automatically generates system wide cache files
for use with configure scripts created by GNU autoconf, and specially by
those executed within pkgsrc.
Reason for the move: pkgtools' Makefile says this category is for packages
used within pkgsrc. autoswc is specially designed to work for pkgsrc, so
it is better placed here. And it may get more exposure ;-)
- Recognize the PKGSRC_COMPILER variable and set it automatically in mk.conf.
- Add the REAL_CCACHE variable: if set, the directory pointed by it will be
null-mounted inside the chroot in a place known by ccache to store the
cache. This is useful to keep it across rebuilds of the sandbox.
Idea suggested by gavan@.
- added support for RPM archive compress with bzip2 as used by e.g.
SuSE Linux 8.2.
- (hopefully) made portable
- rewrote ugly code for handling "-s" command line option
- converted source to KNF
- Use WRKDIR_BASENAME instead of OBJMACHINE to get a unique name of object
directories. This way, multiple jails can use the same pkgsrc tree with
write access and get the right obj links.
- Fix COPYROOTCFG.
something to check the shared library type.
(An entertaining way to pick up on issues seems to be to set CFLAGS to include
an argument not understood by the base compiler, such as '-march=pentium3')