Commit graph

9321 commits

Author SHA1 Message Date
bsiegert
25d59f2644 Add /usr/local for include and libdir on ChromeOS.
Third-party (i.e. non-pkgsrc) C toolchains (I am using chromebrew)
install to /usr/local, as that is where you can have write access.
With this, a bootstrap on ChromeOS finishes successfully.
2017-11-21 19:16:47 +00:00
leot
104096936c mk/defaults/options.description: add `oauth' PKG_OPTION
This is used by mail/nmh and probably can be useful also for other packages.
2017-11-21 10:34:32 +00:00
minskim
51312b8775 Escape whitespace in PKG_JAVA_HOME when setting JAVA_HOME 2017-11-20 17:17:50 +00:00
khorben
5535fa5372 Really use the parent sink for ld(1) 2017-11-16 02:43:51 +00:00
khorben
e6f2bb8178 Introduce a command sink for ld(1) with MKPIE
When not using cwrappers, so far PKGSRC_MKPIE was only automatically
applied when linking using gcc(1) (when enabled). This is now also the
case for packages using ld(1) to link executables.
2017-11-16 02:16:56 +00:00
khorben
0f9d009bd0 Recognize more situations where not linking executables
This is only relevant for PKGSRC_MKPIE. It partly reflects a fix that
was committed to the cwrappers for MKPIE, where the "-pie" flag was
automatically added in spite of the linker not actually creating an
executable.
2017-11-16 00:40:07 +00:00
khorben
edf994459b Obtain the MKPIE flags from the environment
This solves an issue with the command sink component of the MKPIE
wrapper for GCC, where the contents of the _MKPIE_CFLAGS.gcc and
_MKPIE_LDFLAGS.gcc variables was guessed. It is now communicated to
cmd-sink-mkpie-gcc through the environment instead.
2017-11-16 00:36:10 +00:00
khorben
38179c5558 Let the MKPIE command sink for GCC re-use the generic command sink
The cmd-sink-mkpie-gcc component for PKGSRC_MKPIE support on GCC was
lagging behind the generic one. This makes sure it cannot happen again,
by invoking the generic sink right away.
2017-11-16 00:31:47 +00:00
khorben
542893c887 Revert "Always add "-fPIC" when linking with PKGSRC_MKPIE"
It seems to break emulators/qemu.
2017-11-15 19:04:24 +00:00
khorben
32a7cecedb Look for ar(1) in $_ORIG_PATH with PKGSRC_MKREPRO
This no longer hard-codes the path to ar(1) as /usr/bin/ar. It is not
possible to use the original value of $TOOLS_PATH.ar as it is usually
not set.
2017-11-12 16:41:40 +00:00
khorben
42bd86cfb0 Add initial support for building packages reproducibly
It currently tackles two problems:
- gcc(1) hard-coding full paths in debugging information (with one
  caveat at the moment)
- ar(1) hard-coding user IDs in archive headers

This allows packages built from the same tree and options to produce
identical results bit by bit. This option should be combined with ASLR
and PKGSRC_MKPIE to avoid predictable address offsets for attackers
attempting to exploit security vulnerabilities.

This is still disabled by default, and only supports NetBSD so far.

As discussed on tech-pkg@
2017-11-12 13:34:14 +00:00
tnn
e5b08a6647 define MASTER_SITE_CRATESIO (for downloading rust crates) 2017-11-08 11:58:02 +00:00
khorben
ae8efeb19b Configure "append_executable" adequately for cwrappers
Match cwrappers' expectations and place an argument per line in the
configuration. Tokenize the arguments when writing the configuration
instead of inside cwrappers.

This should fix PKGSRC_MKPIE.
2017-11-08 03:52:50 +00:00
khorben
24807e5120 Always add "-fPIC" when linking with PKGSRC_MKPIE
This makes sure a simple "cc -o hello hello.c" will still build a valid
executable. It does not let us detect when CFLAGS or LDFLAGS are
ignored anymore, but it is legitimate for packages to expect it to work
without any additional parameter.

ld(1) does not expect "-fPIC" but it seems to be ignored by our wrappers
in this case, so no disruption is expected there.
2017-11-07 16:57:58 +00:00
bsiegert
60ec14b08f Support OS_VARIANT on Linux, support ChromeOS.
This adds a detection for Chrome OS and Chromium OS based on /etc/lsb-release,
which sets LOWER_VENDOR, like for other Linux distros. It also sets OS_VARIANT
to the value of LOWER_VENDOR, so we can have conditionals for ChromeOS. It is
missing some things that are silently assumed to be part of Linux base
systems, such as POSIX attr support, NIS and more.

ok jperkin@
2017-11-03 18:07:40 +00:00
khorben
7b8b0022a0 Typo 2017-11-01 15:29:09 +00:00
rillig
06a71adf6e Improved index generation for "make help".
The index is sorted alphabetically and mentioned in a plain "make help"
call.
2017-10-31 16:24:42 +00:00
schmonz
ab23fea1c7 Remove QMAIL_QFILTER_TMPDIR knob, no longer needed. 2017-10-28 15:56:48 +00:00
schmonz
03bd31b7e8 Move mail/nullmailer defaults to mk/defaults/mk.conf. 2017-10-28 04:46:35 +00:00
adam
f58d525a43 Added support for PostgreSQL 10.0 2017-10-23 20:34:27 +00:00
jaapb
c13eafcd7e Modified file so that opam automatically uses findlib 2017-10-17 09:42:52 +00:00
jperkin
5e65a78af3 mk/platform: Remove unsupported Darwin/SunOS linker arguments. 2017-10-10 13:57:23 +00:00
wiz
8444b9a444 Comment out debug printf. 2017-10-06 14:46:21 +00:00
jlam
2c5ffee9f0 reduce-depends.awk: Also reduce "exact match" and "any version".
Also reduce patterns of the form:

	pkg-version	(exact match)
	pkg-[0-9]*	(fnmatch pattern matching any version)
2017-10-04 04:13:12 +00:00
jlam
c47bf45c32 reduce-depends.awk: Match version strings containing tilde (~). 2017-10-04 04:13:00 +00:00
jperkin
45f7f890ca mk: Disable SSP checks on systems where it is provided in libc.
The currently implementation of SSP checks simply look for a DT_NEEDED
dependency on libssp, and doesn't yet have a way to check for it being
enabled when it is done via libc.
2017-10-03 13:18:00 +00:00
jperkin
1605dd1b43 mk: Add support for SSP checks. 2017-10-03 09:43:06 +00:00
jperkin
8dbb87e55a mk: Fix SSP detection when using pkgsrc GCC.
We can't rely on _GCC_VERSION as an accurate indicator of the GCC version,
as when using a pkgsrc GCC it will be set to 0 until the pkgsrc GCC is
available and we can detect its version.  Instead, move the logic later to
after CC_VERSION is set and use that instead.
2017-10-03 09:38:16 +00:00
schmonz
9fee74596e Document "daemontools-moresignals" option. 2017-10-03 00:36:05 +00:00
wiz
bece876d09 mk: check for installed files that are not in PLIST by default
Previously, this was only enabled with PKG_DEVELOPER.

Ok kamil@ jperkin@
2017-10-02 14:14:04 +00:00
jlam
6b7428c49d reduce-depends.awk: Avoid "delete array" statement for portability.
POSIX awk doesn't allow "delete array" to delete an entire array.
For portability, one must delete each element of the array.
2017-10-01 22:58:19 +00:00
jlam
aca4516d1d reduce-depends.awk: Avoid gensub() for portability. 2017-10-01 17:57:18 +00:00
jlam
5cd938212b reduce-depends.awk: Reduce "pkg>1" and "pkg<2" into "pkg>1<2".
Enhance the reduce-depends.awk script to reduce a larger set of
dependencies into a single dependency.  The patterns representing
intervals of version numbers (can be open-ended) are of the form:

	pkg>lower
	pkg>=lower
	pkg<upper
	pkg<=upper
	pkg>lower<upper
	pkg>lower<=upper
	pkg>=lower<upper
	pkg>=lower<=upper

These patterns are now condensed into a single dependency of the
same form.  For example, given the following patterns:

	pkg>=1.0
	pkg>2.0
	pkg<3.0
	pkg<=4.0
	pkg>=2.5<3.5

the reduced pattern becomes:

	pkg>=2.5<3.0

Add the test script used to help with refactoring and adding the
new feature to the script.

This is a mostly complete rewrite of the script; change the
license to the standard 2-clause BSD license used by TNF.
2017-10-01 04:00:40 +00:00
kamil
a1747d8bf4 mk/defaults/options.description: Drop unused gdb6-tui
gdb6 - the only user of gdb6-tui - has been eliminated from pkgsrc.
2017-09-29 14:07:52 +00:00
wiz
eef80df883 emacs22*, emacs23*, emacs24*: remove unmaintained emacs versions
As announced in
https://mail-index.netbsd.org/pkgsrc-users/2017/09/11/msg025563.html

This still leaves emacs20, emacs21, and the current version, emacs25.
2017-09-29 12:40:26 +00:00
maya
58176b4461 remove ftp variant when http server already exists
pretty sure these are the same server but ftp is considerably slower on
a high latency connection
2017-09-29 06:17:12 +00:00
schmonz
7c2c4a6e0a Replace LOCALBASE usage with PREFIX. 2017-09-28 16:15:49 +00:00
wiz
06bd0ca307 *: remove qt3 and the packages using it, including KDE3
Announced in https://mail-index.netbsd.org/pkgsrc-users/2017/09/10/msg025556.html
2017-09-26 10:26:54 +00:00
wiz
371e3139fb fetch/sites.mk: ftp.tuwien.ac.at times out, remove it 2017-09-17 10:55:17 +00:00
wiz
694ba19af5 mk: remove import target
While it would be useful, the current implementation has not been
updated even to use 'cvs add' instead of 'cvs import' (policy change
in 2012). Use the import-package.sh script currently residing in wip/
instead.
2017-09-16 09:34:25 +00:00
wiz
901afb5669 mk/misc/developer.mk: improve commit message
Commits to doc/ might also affect the TODO file, so use
"doc: " instead of "CHANGES-2017: " as default prefix.

Suggested by jperkin.
2017-09-13 09:06:34 +00:00
wiz
b24bc849af mk/bsd.pkg.mk: Adapt changes-entry target
Prefix package name to commit message.
2017-09-12 14:04:59 +00:00
jperkin
3f417abb31 Limit GCC SSP support to 4.x and newer. 2017-09-11 09:06:41 +00:00
jaapb
2a1c37e0c9 Moved jbuilder detection forward so it deals with opam properly 2017-09-08 22:18:46 +00:00
jaapb
4dc5b9d626 jbuilder not always uses opam, it's just the default 2017-09-08 19:09:26 +00:00
jaapb
d825f855a1 Added options for ocaml 4.05 2017-09-08 09:05:37 +00:00
jaapb
daaeaf91f5 Added variable to have ocaml-jbuilder only build certain packages 2017-09-08 08:39:06 +00:00
jmcneill
e33d8e5b89 Add a description for the el1 package option. 2017-09-07 15:31:53 +00:00
wiz
b635b7e7af Describe pcre2-jit option. 2017-09-07 13:48:22 +00:00
wiz
44faa0cdcd Remove teTeX* packages and references to them.
teTeX was desupported in 2006, and we have texlive in pkgsrc since 2009.
2017-09-06 16:49:21 +00:00