summaryrefslogtreecommitdiff
path: root/mk
AgeCommit message (Collapse)AuthorFilesLines
2017-11-16Really use the parent sink for ld(1)khorben1-2/+2
2017-11-16Introduce a command sink for ld(1) with MKPIEkhorben2-1/+41
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-16Recognize more situations where not linking executableskhorben1-2/+2
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-16Obtain the MKPIE flags from the environmentkhorben2-5/+9
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-16Let the MKPIE command sink for GCC re-use the generic command sinkkhorben1-10/+2
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-15Revert "Always add "-fPIC" when linking with PKGSRC_MKPIE"khorben1-2/+2
It seems to break emulators/qemu.
2017-11-12Look for ar(1) in $_ORIG_PATH with PKGSRC_MKREPROkhorben1-2/+4
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-12Add initial support for building packages reproduciblykhorben7-5/+66
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-08define MASTER_SITE_CRATESIO (for downloading rust crates)tnn1-1/+4
2017-11-08Configure "append_executable" adequately for cwrapperskhorben1-2/+4
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-07Always add "-fPIC" when linking with PKGSRC_MKPIEkhorben1-2/+2
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-03Support OS_VARIANT on Linux, support ChromeOS.bsiegert1-1/+7
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-01Typokhorben1-3/+3
2017-10-31Improved index generation for "make help".rillig2-6/+11
The index is sorted alphabetically and mentioned in a plain "make help" call.
2017-10-28Remove QMAIL_QFILTER_TMPDIR knob, no longer needed.schmonz1-6/+1
2017-10-28Move mail/nullmailer defaults to mk/defaults/mk.conf.schmonz1-1/+11
2017-10-23Added support for PostgreSQL 10.0adam1-3/+12
2017-10-17Modified file so that opam automatically uses findlibjaapb1-1/+2
2017-10-10mk/platform: Remove unsupported Darwin/SunOS linker arguments.jperkin2-2/+5
2017-10-06Comment out debug printf.wiz1-2/+2
2017-10-04reduce-depends.awk: Also reduce "exact match" and "any version".jlam2-63/+432
Also reduce patterns of the form: pkg-version (exact match) pkg-[0-9]* (fnmatch pattern matching any version)
2017-10-04reduce-depends.awk: Match version strings containing tilde (~).jlam2-2/+27
2017-10-03mk: Disable SSP checks on systems where it is provided in libc.jperkin3-3/+6
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-03mk: Add support for SSP checks.jperkin4-2/+193
2017-10-03mk: Fix SSP detection when using pkgsrc GCC.jperkin1-12/+12
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-03Document "daemontools-moresignals" option.schmonz1-0/+1
2017-10-02mk: check for installed files that are not in PLIST by defaultwiz1-6/+2
Previously, this was only enabled with PKG_DEVELOPER. Ok kamil@ jperkin@
2017-10-01reduce-depends.awk: Avoid "delete array" statement for portability.jlam1-5/+10
POSIX awk doesn't allow "delete array" to delete an entire array. For portability, one must delete each element of the array.
2017-10-01reduce-depends.awk: Avoid gensub() for portability.jlam1-2/+2
2017-10-01reduce-depends.awk: Reduce "pkg>1" and "pkg<2" into "pkg>1<2".jlam3-63/+601
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-09-29mk/defaults/options.description: Drop unused gdb6-tuikamil1-1/+0
gdb6 - the only user of gdb6-tui - has been eliminated from pkgsrc.
2017-09-29emacs22*, emacs23*, emacs24*: remove unmaintained emacs versionswiz1-4/+2
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-29remove ftp variant when http server already existsmaya1-3/+1
pretty sure these are the same server but ftp is considerably slower on a high latency connection
2017-09-28Replace LOCALBASE usage with PREFIX.schmonz1-3/+3
2017-09-26*: remove qt3 and the packages using it, including KDE3wiz1-2/+0
Announced in https://mail-index.netbsd.org/pkgsrc-users/2017/09/10/msg025556.html
2017-09-17fetch/sites.mk: ftp.tuwien.ac.at times out, remove itwiz1-3/+1
2017-09-16mk: remove import targetwiz2-121/+1
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-13mk/misc/developer.mk: improve commit messagewiz1-2/+2
Commits to doc/ might also affect the TODO file, so use "doc: " instead of "CHANGES-2017: " as default prefix. Suggested by jperkin.
2017-09-12mk/bsd.pkg.mk: Adapt changes-entry targetwiz1-2/+2
Prefix package name to commit message.
2017-09-11Limit GCC SSP support to 4.x and newer.jperkin1-4/+6
2017-09-08Moved jbuilder detection forward so it deals with opam properlyjaapb1-10/+9
2017-09-08jbuilder not always uses opam, it's just the defaultjaapb1-2/+2
2017-09-08Added options for ocaml 4.05jaapb1-0/+3
2017-09-08Added variable to have ocaml-jbuilder only build certain packagesjaapb1-1/+9
2017-09-07Add a description for the el1 package option.jmcneill1-0/+1
2017-09-07Describe pcre2-jit option.wiz1-0/+1
2017-09-06Remove teTeX* packages and references to them.wiz1-6/+1
teTeX was desupported in 2006, and we have texlive in pkgsrc since 2009.
2017-08-29Remove references to gnupg21 in preparation for its removal.wiz1-2/+0
2017-08-27Use NetBSD rcsid.sevan1-1/+1
Reminded by joerg.
2017-08-25Add support for PKGSRC_MKPIE with cwrapperskhorben2-5/+8
This is based on a patch submitted on 16/04/2017 on tech-pkg@ and adapted by joerg@ for pkgtools/cwrappers. It only consists in the missing part to actually generate PIE executables with cwrappers if configured to do so (currently disabled by default). The aim is really to produce safer binaries where ASLR is in use. This part in pkgsrc is only supported on NetBSD (x86) with GCC at the moment. Tested on NetBSD/amd64, with and without cwrappers, with and without PKGSRC_MKPIE (all four combinations).