Commit graph

10283 commits

Author SHA1 Message Date
rillig
86009680de mk/buildlink3: fix breakage from previous commit
The expressions for USE_BUILTIN.* and for IGNORE_PKG.* can be undefined.
The function 'empty' takes care of these, the direct expressions
generate a (misleading) error message 'Malformed conditional'.
2022-07-09 08:19:18 +00:00
rillig
4a3543ae2c mk/buildlink3: remove makefile hacks for NetBSD 5
pkgsrc does not support NetBSD 5 anymore.

Back then, when expanding the body of a .for loop, the variable values
were inserted verbatim in the body, allowing for lots of unintended
special effects, making it essentially impossible to use these values
directly in conditions.

In this case, the values do not contain double quotes, that's why
enclosing the ${_pkg_} in double quotes worked.

See src/usr.bin/make/unit-tests/directive-for.mk for more details,
search for '2008-12-21'.

Combining .for loops with 'empty(...)' conditions still does not work,
so replace these with direct comparisons.  Before 2008-12-21, using
'empty(...)' was the safer variant because it avoided the uncontrolled
code injection.

No functional change.
2022-07-09 07:46:02 +00:00
jperkin
85445a6166 mk: Remove -std overrides for clang.
Reported to cause problems on FreeBSD, and clang is generally pretty
aggressive about defaulting to newer versions anyway.
2022-07-07 17:19:55 +00:00
jperkin
9b652873fc mk: Move GCC <= 4.4 override out of for loop.
Possible performance improvement, no funtional change.
2022-07-07 16:23:39 +00:00
rillig
9936282d9a mk/subst.mk: fix indentation of directives 2022-07-06 20:59:51 +00:00
rillig
f0fdfc082c mk/bsd.pkg.mk: fix alignment and indentation, no functional change 2022-07-06 19:06:31 +00:00
rillig
817ca3a5b7 mk/install: fix indentation and alignment, no functional change 2022-07-06 18:53:58 +00:00
markd
0ec066acdf tools: re-add (accidentally?) dropped realpath 2022-07-05 20:35:45 +00:00
jperkin
b5a2d55ae0 mk: Add support for newer C standards.
For now the GCC "c99 == gnu99" override is kept, but gnu99 is now supported as
a specific value for USE_LANGUAGES, so we may want to be specific where
required.

c11 and c17 (and the corresponding gnu11/gnu17 versions) are newly supported.
2022-07-05 17:32:24 +00:00
gutteridge
ed6f85a2e8 license.mk: fix grammar in another comment 2022-06-29 00:02:32 +00:00
gutteridge
864d0c26df license.mk: fix some grammar in a comment 2022-06-28 23:57:17 +00:00
nia
672c9b56b6 mk: Bump default postgres version to 14 2022-06-28 09:38:38 +00:00
pin
5c784c7f5b Document spotify-player image option 2022-06-19 07:02:18 +00:00
adam
cb24fa01e0 gcc.mk: support gcc12 2022-06-16 15:46:22 +00:00
rillig
e6a3d9d52d mk/developer.mk: reorganize documentation for 'make cce'
In most cases, the command 'make cce' is all that is needed to add a
changes entry, so put it at the top of the documentation.  The smaller
steps are useful when updating multiple packages at once, which is less
often the case.

Make the possible values for CTYPE stand out, instead of hiding them in
the body text.
2022-06-16 04:56:49 +00:00
nia
a82b7cab8a rust: For clarity, rename rust-llvm to rust-internal-llvm 2022-06-13 13:38:19 +00:00
rillig
21ca7c2ff7 mk/find-pkgconfig-files.mk: fix copy-and-paste leftovers
The pkg-config files are not header files.

While here, use ':=' for the variable assignments above procedure files
and document how to check the results during development.
2022-06-13 06:54:10 +00:00
rillig
668e7fe2b1 mk/help: replace 'appear' with 'occur', as it is more accurate 2022-06-11 15:58:41 +00:00
rillig
28c763d058 mk/curses: mark USE_NCURSES as package-settable
There are several packages that set this variable, even though it is not
documented in curses.buildlink3.mk.
2022-06-11 15:02:28 +00:00
pin
7c3c1eba59 Document spotify-player option 2022-06-07 10:28:23 +00:00
jperkin
00d9b1eb87 mk: Add PKGSRC_USE_MKTOOLS support.
When enabled, pull in the pkgtools/mktools package to use C-based tools for
certain parts of the pkgsrc mk infrastructure.  Default is off for now while
any portability issues are shaken out, but it has been tested successfully on
at least illumos, macOS, and NetBSD.

The first tool is mk-buildlink-symlinks which creates the buildlink3 symlinks
as part of the "wrapper" phase.  This significantly improves performance,
especially with packages that have a lot of buildlink3 dependencies.  For
example, the time for "bmake wrapper" in x11/kde-workspace4 goes from:

  real     3:20.696394375
  user       50.553556463
  sys      2:23.883823896

to:

  real       19.873100598
  user        8.141441461
  sys        11.740602820

It's expected that other tools will be added over time to speed up other parts
of the infrastructure.
2022-06-07 10:04:25 +00:00
wiz
53aee86d74 mk: revert unintended commit 2022-06-07 09:35:15 +00:00
wiz
b45cc32a32 mk: remove documentation for introspection option
This option is not needed any longer and should be removed from packages
that still have it.

https://mail-index.netbsd.org/pkgsrc-users/2022/06/06/msg035658.html
2022-06-07 09:34:50 +00:00
gutteridge
2effd70468 curses.builtin.mk: fix a typo in a comment 2022-06-06 01:24:11 +00:00
wiz
7d68d36907 mk: revert unintended commit 2022-06-04 09:05:18 +00:00
wiz
ab5f1da898 mk: remove option description for unused option 2022-06-04 09:04:27 +00:00
gutteridge
b9dcd03c21 pf.buildlink3.mk: simplify ONLY_FOR_PLATFORM
Someone already dropped the FreeBSD bounds (previously FreeBSD-[5-9]*-*)
with the assumption we're only concerned with modern releases, so do the
same consistently for all, rather than adding more handling for NetBSD
10.x and above. (We can't reasonably be supporting NetBSD from more than
16 years ago, or OpenBSD from 20 years ago. And the DragonFly pattern
wasn't exact, either, as only 1.1 onward included pf.)
2022-06-01 21:42:02 +00:00
gutteridge
28c860a56a gcc.mk: restore GCC 6 handling
This is partly intended as a workaround to fix behaviour on NetBSD 8.x
where GCC 7 was being pulled in universally after the prior commits
here. Now it behaves as expected. There is an unaddressed issue in this
code that needs to be examined further. (This has been discussed in
more than one recent thread on teck-pkg@, including John Klos's report
of this issue.)

In any case, GCC 6 has also seen build improvements by nia@, who noted
it's safe to simply revert part of the original change set, in one of
those discussions on tech-pkg. (We can't use the hack introduced in the
prior revisions for GCC 6, though, or this same broken dependency
pattern occurs and will universally force GCC 6 instead of 7 on NetBSD
8.x.)

Tested on NetBSD 8.2_STABLE and 9.2_STABLE with various packages,
including tcsh, the original reported issue.
2022-05-28 02:31:47 +00:00
tnn
4b6fe7adc0 mark NetBSD-current/evbarm as eligible for openjdk11 & openjdk17 2022-05-26 21:29:37 +00:00
tnn
27cb3e9920 java-vm.mk: bump PKG_JVM_DEFAULT to openjdk17 where it prior was openjdk11
Except for NetBSD 8 which is too old for openjdk17 due to the base GCC,
so keep that at openjdk11. Also update platform support matrix.
2022-05-26 21:04:33 +00:00
wiz
e7a0ba745c mk: use lang/ocaml/native.mk instead of wip/* 2022-05-25 17:18:13 +00:00
jaapb
5f05f46db9 Recursive revbump associated with update of ocaml.
Also change of mk/ocaml.mk to lang/ocaml/ocaml.mk.
2022-05-24 18:51:47 +00:00
nia
28450fe530 mk: Use OPSYS_VERSION 2022-05-24 13:08:26 +00:00
nikita
9980e6202c gitlab: underscore is a valid character in gitlab project/user names. 2022-05-24 13:05:37 +00:00
nia
532dc1a4b6 java-vm.mk: Use OPSYS_VERSION 2022-05-24 09:46:05 +00:00
nikita
24852d9fda Add USE_GITLAB, based on github.mk, to make gitlab MASTER_SITE
handling less repetitive.

 To use, set in Makefile:
 DISTNAME=     exampleproject-1.2
 MASTER_SITES= ${MASTER_SITE_GITLAB:=accountname/}

 The following variables alter gitlab.mk behavior:

 GITLAB_PROJECT        defaults to PKGBASE
 GITLAB_TAG            defaults to PKGVERSION_NOREV
                       sometimes you want to override with v${PKGVERSION_NOREV}
                       SHA-1 commit ids are also acceptable
 GITLAB_RELEASE        defaults to not defined, set this to ${DISTNAME}
                       when packaging a release not based on a git tag.
 GITLAB_SUBMODULES     manually set submodule information:
                       values should be:
                       GitLab_user GitLab_project tag_or_hash submodule_path
 GITLAB_TYPE           overrides the autodetected MASTER_SITE URL scheme:
2022-05-23 21:45:45 +00:00
nia
725c7fc567 gcc.mk: fix syntax 2022-05-21 09:26:50 +00:00
nia
e59dd36da6 gcc.mk: Force USE_GCC_RUNTIME (etc.) on older NetBSD versions that
request a newer compiler. Stop selecting gcc6, it receives very
limited testing due to NetBSD 9 having gcc7, and probably doesn't
work due to some newer hardening checks stopping it from building.
2022-05-21 09:04:50 +00:00
nia
f1cca5afcb mk: set EXTRACT_ENV on NetBSD<9, seen on tech-pkg 2022-05-21 07:37:39 +00:00
gutteridge
510571864b sites.mk: update primary Apache sites 2022-05-21 00:44:58 +00:00
schmonz
baff7364d5 Darwin.mk: add OSX_SDK_MAP for 12.4 (to use 12.3). 2022-05-18 19:30:17 +00:00
dholland
59ca6ecae9 typo in comment 2022-05-14 21:48:51 +00:00
ryoon
8a00c7a6b0 mk/defaults: Add a description about sunaudio option 2022-05-13 14:29:58 +00:00
ryoon
b92844230d mk: Enable openjdk17 2022-05-13 14:28:29 +00:00
schmonz
84417be6a2 tools.Linux.mk: set TOOLS_PLATFORM.date. 2022-05-09 16:44:40 +00:00
nia
9869d36c73 mk: Stop defaulting to -Werror with BSD makefiles outside the NetBSD
source tree
2022-05-09 15:35:31 +00:00
jperkin
4743692ff2 mk/checksum: Remove distinfo before replacing.
This avoids .nfs* warts when pkgsrc is on NFS.
2022-05-08 12:25:18 +00:00
ryoon
a2a411efab mk/defaults/mk.conf: Update for editors/emacs28 and editors/emacs27
Noticed by wiz@. Thank you.
2022-05-05 21:07:30 +00:00
nia
544167f8c6 mk: Use OPSYS_VERSION to numerically compare NetBSD versions 2022-05-05 08:30:43 +00:00
nia
2a874d2ec2 mk/Linux: nologin is in /usr/sbin on debian 2022-05-01 08:10:11 +00:00