summaryrefslogtreecommitdiff
path: root/mk
AgeCommit message (Collapse)AuthorFilesLines
2018-02-18Reorder MASTER_SITES_GNU:maya1-6/+8
- Put the main mirror at the lowest priority. it seems to be struggling. - Add two mirrors that seem decent at the highest priority.
2018-02-10Import global switch for libusb's implementation [1/2]khorben2-1/+44
This switch is meant to be used by packages requiring an implementation of the former libusb (as in devel/libusb). The original implementation can be chosen by setting LIBUSB_TYPE to "native". The alternative implementation libusb-compat (as in devel/libusb-compat) wraps libusb1 (in devel/libusb1). This implementation can be chosen by setting LIBUSB_TYPE to "compat". On NetBSD, it has the advantage of not requiring root privileges to locate and use USB devices without a kernel driver. This first part only imports the switch framework itself.
2018-02-08Fix an inconsistency for package database directory.triaxx1-3/+9
The pkgdb variable generated for pbulk.conf is ${PREFIX}/var/db/pkg but bootstrap generates by default PKG_DBDIR=${PREFIX}/pkgdb. This fix add a common PKGDBDIR variable used for both pbulk.conf and bootstrapkit.
2018-02-03Append happy to the DEFAULT_ACCEPTABLE_LICENSES listkamil1-1/+4
happy is DFSG, not evaluated by OSI/FSF No objections from <Greg Troxel>
2018-01-26Remove useless options for duplicitytriaxx1-2/+0
2018-01-26mk/compiler.mk: Support gnu++03 and c++03 in USE_LANGUAGES.jperkin1-6/+6
These can be used by packages when building with a compiler which defaults to a newer standard than the source supports (e.g. namespace issues).
2018-01-25Don't include TEST_DEPENDS in the normal dependency reduction run.joerg1-2/+2
2018-01-25Fix spelling, it is PKGSRC_RUN_TEST.joerg1-2/+2
2018-01-24mk/tools/replace.mk: Add support for `:test' to add tools to TEST_DEPENDSleot1-1/+5
With this change is now possible to mark tools only needed for testing via: USE_TOOLS+= <tool>:test Discussed with <joerg>
2018-01-15mk: Introduce *_SUPPORTED variables for security features.jperkin1-13/+19
Using variables such as PKGSRC_USE_SSP in package Makefiles to disable SSP does not work due to the parsing order in bsd.prefs.mk. Even if it did, it's not a good idea to mix user and package settable variables, and would cause issues in complex packages where bsd.prefs.mk is included early (e.g. Makefile.common). Packages can now set {MKPIE,MKREPRO,FORTIFY,RELRO,SSP,STACK_CHECK}_SUPPORTED=no to correctly disable security features if necessary.
2018-01-14Add missing empty TEST_DEPENDS for the bootstrap case.joerg1-2/+2
2018-01-13Introduce TEST_DEPENDS.joerg7-16/+63
Place them in ALL_DEPENDS iff PKGSRC_RUN_TESTS is set, so that bulk builds will pick them up.
2018-01-11Add FETCH_PROXY and FETCH_PROXY.{ftp,http,https}.alnsn1-5/+39
2018-01-10Added 'lwt' option.jaapb1-0/+1
2018-01-07In guess-license, use ninka for determining the licenses.rillig1-3/+13
Ninka can be installed from wip/ninka and analyzes each file individually, thereby providing a much more detailed analysis than the ad-hoc method that only looks at some COPYING files. If Ninka is not installed, the naive fallback continues to be used.
2018-01-07Improved documentation for "make help".rillig5-8/+14
The check for target(help) prevents a warning when "make help" is run from a category directory.
2018-01-05Improved license detection for the guess-license target.rillig1-15/+14
Before, the first file that looked like a license file was considered. The others were completely ignored. This led to a wrong license for cross/arm-none-eabi-gcc. To prevent these cases in the future, the license is only guessed if there is exactly one file with a typical license name. This approach is still naive, but at least a little more precise. Replacing the guess-license with a determine-licenses is much more complicated though, since each source code file may have its own license declared, and handling all these special cases leads to very complex license expressions (like "gnu-gpl-v3 for all files, except for special.c, which is apache-2.0 or mit). This is very hard to do correctly.
2018-01-03Improved guess-license for practical use.rillig1-19/+17
2018-01-02Added the guess-license target.rillig1-3/+51
It compares the license file from the package with the available licenses in licenses/ and shows the diff to the best match. This will hopefully make it easier for package authors to include the LICENSE variable in the package Makefile. This variable being missing is one of the most frequent error messages from pkglint (4187 out of 20044).
2018-01-02Allow package developers to easily see and check the SUBST changes.rillig1-1/+8
2018-01-02Remove traces of crypto restrictions.maya3-24/+3
ok for idea riastradh
2018-01-02Remove crypto restrictions from kerberos users.maya1-6/+1
2018-01-02Added more keywords for "make help".rillig1-2/+3
2018-01-01apache22: remove, it was eol'd in June 2017wiz4-21/+11
Remove packages that only work with apache22. Remove apache22 references.
2017-12-27mk/configure/cmake.mk: Fix typos in comments.wiz1-4/+4
2017-12-23mk: Describe new fossil options.wiz1-1/+3
2017-12-13Removed unused vatnumber-suds option nameadam1-1/+0
2017-12-03*: remove ftp.kddlabs.co.jp, does not provide ftp servicewiz1-3/+2
2017-12-03mk: Remove ftp.kddlabs.co.jp from sites, does not provide ftp servicewiz2-8/+3
2017-12-03Revert gnu-config/missing, new version loops.joerg1-147/+262
2017-12-01Sync with upstreamsevan3-335/+241
2017-11-29Also append the CFLAGS for MKPIE for c++(1)khorben1-1/+2
From spz@, thanks!
2017-11-21Add /usr/local for include and libdir on ChromeOS.bsiegert1-1/+6
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-21mk/defaults/options.description: add `oauth' PKG_OPTIONleot1-0/+1
This is used by mail/nmh and probably can be useful also for other packages.
2017-11-20Escape whitespace in PKG_JAVA_HOME when setting JAVA_HOMEminskim1-2/+2
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