Commit graph

5775 commits

Author SHA1 Message Date
rillig
96435d56fa pkgtools/pkglint: update to 20.1.6
Changes since 20.1.5:

Category Makefiles must only list subdirectories in SUBDIR that actually
contain a package.  There is no need to mention the other directories.
This is the same as in the top-level Makefile, where mk/ and regress/ are
not listed.

Packages from pkgsrc-wip may have a COMMIT_MSG file with a suggested
commit message for importing the package into main pkgsrc.
2020-05-17 07:07:18 +00:00
rillig
9a194515dc pkgtools/createbuildlink: remove unused placeholder 2020-05-16 06:28:52 +00:00
rillig
d19556fce1 pkgtools/createbuildlink: use SUBST instead of ad-hoc sed
This allows to show the actual changes by setting SUBST_SHOW_DIFF=yes,
and with SUBST_NOOP_OK=no it also demonstrates that no substitutions are
needed for substplistbasedirs.

Another thing this demonstrates is this wrong patch:

-echo >>$sedrules "s|@@PKGVERSION@@|@PKGVERSION@|g"
+echo >>$sedrules "s|@3.17@|3.17|g"
2020-05-16 06:24:15 +00:00
rillig
4209ef06ce pkgtools/pkglint: update to 20.1.5
Changes since 20.1.4:

No more wrong warnings about the Solaris /bin/sh. These warnings had been
there for 14 years, preventing pkgsrc developers from using the $$(...)
command substitution and negation in shell conditions.

https://mail-index.netbsd.org/pkgsrc-changes/2020/05/01/msg212194.html
2020-05-09 19:26:11 +00:00
rillig
2ec8663c66 pkgtools/pkglint: update to 20.1.4
Changes since 20.1.3:

For patches that patch a single file, the filename of the patch should
correspond to the patched file. There are a few different naming schemes
in action, therefore the check is relatively loose. Patches that are
called patch-[a-z][a-z] continue to be allowed for historic reasons.
Patches that are called patch-CVE-* are also allowed.

The entries in doc/CHANGES-* are checked for consistency. For example,
it doesn't make sense to add a package twice or "update" a package from
version 1.0 to version 1.0. All version numbers in these entries must
be valid pkgsrc versions, i.e. start with a digit and only use
characters from -.0-9A-Z_a-z.
2020-05-08 19:50:04 +00:00
jperkin
a1bd6c01e6 pkg_install: Revert part of last commit.
We need to use the library Makefile so that libnetpgpverify is built.  Fixes
bootstrap.
2020-05-05 09:02:43 +00:00
agc
8d6726aab6 libnetpgpverify now uses its own protected symbols, update build process to
account for this.
2020-05-04 19:14:59 +00:00
jperkin
18d845cc68 pkgin: Unbreak PKGPATH subst change. 2020-05-04 11:15:50 +00:00
tnn
3cc9fe5aa4 don't need a wildcard here 2020-05-02 10:43:44 +00:00
tnn
e8cdb9630f pkglint/select.mk: prefer golang pkglint on NetBSD/aarch64 9.1 or later 2020-05-02 10:33:15 +00:00
rillig
e210d74974 pkgtools/pkglint: update to 20.1.3
Changes since 20.1.2:

Stricter check for Python version numbers. Before, 25 and 26 had not
been marked as wrong.

In assignments like PKGNAME=${DISTNAME:S,from,to,}, modifiers that don't
have any effect generate a note. Most of these modifiers are redundant
or outdated.

Patches must not add well-known absolute paths like /usr/pkg, /var and
/etc since these must be overridable by the pkgsrc user. Other absolute
paths continue to be allowed.
2020-04-30 21:15:03 +00:00
plunky
894c5e9f65 add afl-3.0 as acceptable default license 2020-04-30 09:47:51 +00:00
jperkin
ccc3e27c10 pkgin: Update to 0.16.1.
The "jperkin should have run the test suite before releasing 0.16.0" release.

## Version 0.16.1 (2020-04-29)

 * Don't attempt to update the keep list if we're only downloading packages.
 * Avoid C99isms for now, fixes CentOS 6 build.
 * Ignore "pkg_admin rebuild-tree" output, removes spurious "Done." messages
   from output.
 * Some minor internal refactoring.
2020-04-29 15:09:20 +00:00
rillig
9057d45716 pkgtools/pkgin: define PKGPATH before including mk.conf
PKGPATH is one of the few variables that is guaranteed to be defined when
mk.conf is included. Conditions like ".if ${PKGPATH} == category/package"
trigger a "Malformed conditional" when this variable is not defined.
2020-04-28 02:43:21 +00:00
jperkin
104f4863f2 pkgin: Update to 0.16.0.
## Version 0.16.0 (2020-04-27)

 * Rebuild +REQUIRED_BY files after each pkgdb modification, ensuring
   consistency and avoiding "Can't open +CONTENTS of ..." errors during
   subsequent upgrades.
 * Improved output sorting.
 * Turn off WARNS.
 * Minor cleanups.
 * Documentation fixes.
 * Flush yes/no prompt before reading response (Michael Forney).
2020-04-27 14:54:47 +00:00
rillig
bd33698e2a pkgtools/pkg_filecheck: fix absolute path to PKG_DBDIR 2020-04-27 05:35:29 +00:00
sborrill
f6c23d12bd Allow NetBSD distribution tarball file extension to be defined with DISTRIB_EXT.
Default to tgz.
Bump to version 1.39
2020-04-23 11:28:08 +00:00
rillig
8c83e680a9 pkgtools/check-portability: make test == an error
It had only been a warning before, due to a forgotten nerrors++. The
check in mk/check/check-portability.awk already treats this case as an
error.
2020-04-19 12:47:27 +00:00
rillig
703d1f721c pkgtools/check-portability: update to 20.1.0
Changes since 19.4.3:

The variable name RANDOM_FILE is ok since it doesn't have a special
meaning to some shell implementations. Seen in www/curl.
2020-04-19 12:05:14 +00:00
rillig
7e5d8473be pkgtools/pkglint: update to 20.1.2
Changes since 20.1.1:

Ensure that relative paths to other packages have the canonical form
../../category/package.

Add notes about pathname patters that mention ${WRKSRC} even though they
are already defined to be relative to WRKSRC.

Fix check for redundantly added categories. The check had previously
reported that the included file would be redundant, which was wrong.
It's always the including file that provides the redundancy.
2020-04-13 19:46:44 +00:00
bsiegert
9429a8bf7a Revbump all Go packages after default version switch to 1.14. 2020-04-12 11:01:37 +00:00
adam
24daafa112 Recursive revision bump after textproc/icu update 2020-04-12 08:27:48 +00:00
khorben
32d09f38b3 pkg: update to version 1.9.99.11
The changes since version 1.99.9 appear to be:

- New pkg upgrade --vulnerable
2020-04-10 23:46:14 +00:00
khorben
83e301dfe2 pkg: update to version 1.99.9
The changes since version 1.99.4 appear to be:

- Fix pkg register issues with some version of libarchive:
  * hardlinks not being made hardlinks sometime
  * issues when PREFIX is a symlink to another directory
- Use portable mechanism to find the number of CPUs which allows pkg repo to be
  faster on linux
2020-04-10 23:38:50 +00:00
khorben
66d29d9766 pkg: fix build with developer checks enabled
This adds a patch to fix a portability check.

Bumps PKGREVISION.
2020-04-10 23:28:32 +00:00
riastradh
47c5a1e893 Bump version for pbulk script fixes. 2020-04-04 20:44:36 +00:00
riastradh
c92a9b3913 Fix typo: $client_prepare_chroot, not clients_prepare_chroot. 2020-04-04 15:17:48 +00:00
riastradh
4880294ca4 Fix order of assignments so we set path as intended, not to empty. 2020-04-04 15:17:36 +00:00
rillig
c26a5fad6c pkgtools/pkglint: update to 20.1.1
Changes since 20.1.0:

In UNLIMIT_RESOURCES, the recently added virtualsize is allowed.

Packages that have distfiles without any digit in their name should
define DIST_SUBDIR to avoid polluting the global namespace. The
top-level distfiles directory should only contain versioned filenames.
2020-03-26 07:02:44 +00:00
rillig
8792f5214c pkgtools/pkglint: update to 20.1.0
Changes since 19.4.13:

It is an error to have TODO lines in DESCR files. These are typically
generated by url2pkg and should be replaced with proper text before
committing the package.
2020-03-23 19:55:08 +00:00
rillig
24e2b05c2a pkgtools/pkglint: update to 19.4.13
Changes since 19.4.12:

Files that are mentioned redundantly in PLIST files generate an error.

Missing DESCR files generate an error.

Hard-coded /usr/pkg in patches generates an error.
2020-03-22 17:43:15 +00:00
tnn
52ffc6ace4 rc.subr: mark as not for unprivileged, because of PREFIX:=/ abuse 2020-03-22 13:21:05 +00:00
bsiegert
f5efefe062 Revbump all Go packages after go113 update. 2020-03-21 16:57:00 +00:00
rillig
18059b34de pkgtools/check-portability: automatic test, refactoring 2020-03-21 15:02:20 +00:00
rillig
f08be7b699 pkgtools/pkglint: increase performance 2020-03-18 08:42:48 +00:00
rillig
0b88ed50ca pkgtools/pkglint: update to 19.4.12
Changes since 19.4.11:

Redundant additions to BUILDLINK_API_DEPENDS and BUILDLINK_ABI_DEPENDS
get warnings since they may have been needed in the past but the
dependent package has increased its required version numbers over time.
2020-03-18 08:24:49 +00:00
rillig
9559fc179c pkgtools/pkglint: update to 19.4.11
Changes since 19.4.10:

The use of PKG_OPTIONS and PKG_BUILD_OPTIONS in buildlink3.mk and other
files is checked for common mistakes.

Checking the indentation of a continuation line no longer crashes in edge
cases.
2020-03-15 11:31:24 +00:00
rillig
689d54f107 pkgtools/check-portability: fix function names 2020-03-14 09:47:09 +00:00
rillig
5568a175e9 pkgtools/check-portability: update to 19.4.3
Changes since 19.4.2:

Fixed a crash when a file started with an empty line.
2020-03-14 09:18:49 +00:00
rillig
6659486108 pkgtools/check-portability: elimitate common subexpression 2020-03-13 16:43:05 +00:00
rillig
c03a78cece pkgtools/check-portability: update to 19.4.2
Changes since 19.4.1:

Fixed an assertion error when reading binary file, reported by tnn via
private mail.
2020-03-13 16:20:34 +00:00
rillig
da15757bea pkgtools/check-portability: reduce dependencies
Since this is a very basic program, it should not depend on anything more
complicated, to avoid creating cyclic dependencies.
2020-03-13 08:17:18 +00:00
rillig
b9e43a0b48 pkgtools/check-portability: explain how to fix the errors 2020-03-12 19:45:06 +00:00
rillig
86eb11d3ba pkgtools/check-portability: make explanation for [[ more precise 2020-03-12 19:26:17 +00:00
rillig
0b6b0bb8b0 pkgtools/check-portability: minor stylistic corrections 2020-03-12 08:55:07 +00:00
rillig
509ef148b0 pkgtools/check-portability: update to 19.4.1
Changes since 19.4.0:

* Makefile.am and Makefile.in are checked even though they don't start
  with a #! line.
* Only shell programs with an interpreter that is clearly a POSIX shell
  are checked. Before, there was a blacklist of interpreters to be
  skipped.
* Lots of refactorings and code cleanups.
* Some additional test files.
2020-03-12 08:42:34 +00:00
rillig
e1f4ffd38d pkgtools/check-portability: fix build for partly-privileged mode 2020-03-12 00:05:36 +00:00
rillig
3c199d5660 pkgtools/check-portability: fix exclusion for test files 2020-03-11 23:50:05 +00:00
rillig
b8b6cbe5f5 pkgtools/check-portability: add checks from check-portability.awk
This makes those checks redundant as soon as check-portability is
installed. This is only a temporary solution until the test phase is
over.
2020-03-11 23:36:32 +00:00
rillig
6df1e80257 pkgtools/check-portability: improve local function names 2020-03-11 22:41:17 +00:00
rillig
0790285428 pkgtools/check-portability: check extracted files for portability issues
Checks whether the given files use features of programming languages that
are not portable to a wide range of platforms.

See mk/check/check-portability.mk.

https://mail-index.netbsd.org/tech-pkg/2020/03/10/msg022787.html

This new check is not active by default, and the package is not forced to
be installed. This will be done after getting some experience in
practical cases.

The code has been tested by extracting about 1.7 GB of pkgsrc distfiles
and scanning for lines containing both "[[" and "]]".
2020-03-11 19:15:03 +00:00
brook
bae1f1e3df Select fields explicitly from df.depends in make.df.depends().
The function make.df.depends() constructs a dataframe for DEPENDS lines in
the updated Makefile.  That dataframe is combined with other dataframes for
different portions of the Makefile.  Consequently, all the dataframes must
have the same fields or combining with rbind() fails.  Previously, the
dataframe had the wrong set of fields; this explicitly selects the correct
set that matches the other dataframes so that they can all be combined
correctly.
2020-03-11 16:13:35 +00:00
wiz
4e3b1b97c2 librsvg: update bl3.mk to remove libcroco in rust case
recursive bump for the dependency change
2020-03-10 22:08:37 +00:00
wiz
8f80abc5f2 revbump: 2.15: update check-cvs-diff for current ruby and python versions. 2020-03-08 17:06:16 +00:00
wiz
f669fda471 *: recursive bump for libffi 2020-03-08 16:47:24 +00:00
rillig
f9486e2bfe pkgtools/pkglint: update to 19.4.10
Changes since 19.4.9:

In continuation lines with long values, pkglint no longer suggests to
move the continuation backslash in the middle of the variable value, as
that would be impossible.

Warn when a shell command is assigned to a variable that only takes
pathnames. Shell commands can contain command line options, and these
are not pathnames.

The TOOLS_PLATFORM.tool variables are not defined on every platform.
When these variables are used outside an OPSYS check, a warning lists
the platforms where the tool is undefined or only defined conditionally.
2020-03-07 23:35:35 +00:00
brook
eaf33f2b50 Define RPKG, not rpkg, in the environment for R2pkg.R
When reading the environment, R2pkg.R expects RPKG to be the name of the
R package.  Fix the inadvertent use of lower case in the variable name.
2020-03-05 17:15:31 +00:00
brook
86f2f40e73 Add a hyphen (-) to each stored argument so recursive calls work.
In order for recursive calls of R2pkg to work, they must receive the same
set of arguments as the original.  Previous argument handling stripped the
hyphen (-) from each argument; this explicitly restores it.
2020-03-05 17:07:54 +00:00
rillig
2d8401554a pkgtools/pkg_install: add errno details when remove fails
Before, it wasn't clear why removing the file failed. It could be ENOENT
or EPERM or EBUSY, and these lead to different causes.

https://mail-index.netbsd.org/pkgsrc-users/2020/02/28/msg030552.html
2020-03-01 11:02:04 +00:00
rillig
27fa54b11d pkgtools/pkglint: update to 19.4.9
Changes since 19.4.8:

Packages that include omf-scrollkeeper.mk even though their PLIST doesn't
contain any .omf files will generate an error message, suggesting that
the .include line be removed.
2020-02-17 20:22:21 +00:00
rillig
1467f17803 pkgtools/pkg_regress: update to 0.6
Changes since 0.5:

mktemp does not use a file pattern anymore. That file pattern had the
effect that all temporary files had the same name: /tmp/pkg_regress.
2020-02-15 14:40:45 +00:00
rillig
77cc481aa0 pkgtools/pkglint: update to 19.4.8
Changes since 19.4.7:

The diagnostic for homepages using FTP is simpler now.

When running pkglint recursively on the top-level directory, the
inter-package checks (distfile hashes, unused licenses) are enabled
implicitly. This way, the only effect of the -Cglobal option is now
whether the pkgsrc infrastructure files are checked as well.

The check for removed packages that have not been recorded in
doc/CHANGES prints the correct lines when pkglint is run with the
--source option.

Fatal technical errors are no longer treated as diagnostics since they
are none. That was an early conceptual mistake, but since these fatal
error didn't happen often, it didn't matter.

In diagnostics, when referring to other lines, the previously used words
before/after have been replaced with above/below to avoid any confusion
whether space or time is meant.

In CONF_FILES, spaces and quotes are allowed.
See https://gnats.netbsd.org/42191.

Fixed unintended side-effects when running pkglint --autofix --only.
Before, all fixes were applied to the file, whether or not they matched
the --only option.

Fixed resolution of relative paths of the form ../../category/package
when they appeared in an infrastructure file.

Lots of refactorings and housekeeping, as usual.
2020-02-15 13:48:40 +00:00
rillig
96e597af35 pkgtools/pkglint: update to 19.4.7
Changes since 19.4.6:

HOMEPAGE definitions that use http no longer get a warning that they
should migrate to https. Those that could be migrated have been migrated,
and the remaining homepages are not yet ready, so there's no benefit in
having this warning by default. Only in --network mode and when the https
site is indeed reachable, the warning is shown.

In long continued lines, the continuation backslash should be preceded by
a single space. Pkglint had wrongly removed that space in a few cases
before.
2020-02-05 04:09:00 +00:00
bsiegert
f6baaa9181 Revbump all Go packages after go113 update. 2020-02-02 14:18:56 +00:00
rillig
9503650a8e pkgtools/pkglint: use ASCII-only variant of the preformatted manual page 2020-01-26 20:16:29 +00:00
rillig
f49ae4dc78 pkgtools/pkglint: fine-tune manual page 2020-01-26 19:35:22 +00:00
rillig
9637f7852e all: migrate homepages from http to https
pkglint -r --network --only "migrate"

As a side-effect of migrating the homepages, pkglint also fixed a few
indentations in unrelated lines. These and the new homepages have been
checked manually.
2020-01-26 17:30:40 +00:00
rillig
ef335d31bc pkgtools/pkglint: update manual page 2020-01-26 17:18:25 +00:00
rillig
d68fef625d pkgtools/pkglint: update to 19.4.6
Changes since 19.4.5:

Added the --network option, which allows pkglint to use HTTP calls for
determining whether the homepage of a package is reachable.

Added migration from http URLs to the corresponding https URLs. This is
only done if the https URL is indeed reachable or well-known to support
https.

Added migration from https SourceForge URLs back to http URLs since a
previous pkglint run had migrated URLs to non-working https URLs. See
https://mail-index.netbsd.org/pkgsrc-changes/2020/01/18/msg205146.html.

Added a warning for HOMEPAGE that uses ftp:// since that is not
user-friendly. In the same way, download-only host names on SourceForge
are not suitable as a homepage since they usually only generate a 404.
2020-01-26 17:12:36 +00:00
rillig
bd845d8f1e pkgtools/pkglint: update to 19.4.5
Changes since 19.4.4:

Fixed automatic replacement from http SourceForge URLs to their https
counterparts. According to their official documentation, the https URLs
are not on the same hosts as before, but on *.sourceforge.io.
2020-01-23 21:56:50 +00:00
gutteridge
b26fda5d98 pkgclean: check that PKGSRCDIR is a valid directory
For those of us who have multiple pkgsrc trees, or move them around,
and forget the path gets hard-coded into the shell script, or make a
typo when supplying an alternate PKGSRCDIR, and then wonder why nothing
gets cleaned.
2020-01-19 03:31:30 +00:00
rillig
b686dd9180 all: migrate several HOMEPAGEs to https
pkglint --only "https instead of http" -r -F

With manual adjustments afterwards since pkglint 19.4.4 fixed a few
indentations in unrelated lines.

This mainly affects projects hosted at SourceForce, as well as
freedesktop.org, CTAN and GNU.
2020-01-18 23:30:43 +00:00
rillig
d4383d8737 pkgtools/pkglint: update to 19.4.4
Changes since 19.4.3:

Packages that still use http in their HOMEPAGE URL generate warnings that
the URL should use https instead.
2020-01-18 21:56:09 +00:00
jperkin
26c1bffc9f *: Recursive revision bump for openssl 1.1.1. 2020-01-18 21:48:19 +00:00
schmonz
25ce273e64 Mollify pkglint. 2020-01-16 16:54:36 +00:00
schmonz
3e85bf3c8c Specify Standard{Out,Error}Path for macOS launchd. Bump version. 2020-01-16 16:47:32 +00:00
wiz
1e368078b4 pbulk: add missing backslash 2020-01-16 13:49:57 +00:00
joerg
2f25ee0443 Fix pkg_admin expansion due to lost local change. 2020-01-15 19:14:01 +00:00
rillig
148b74ff05 pkgtools/R2pkg: remove a left-over debug message 2020-01-13 18:09:20 +00:00
rillig
46412eabe9 pkgtools/R2pkg: update to 0.6.4
Changes since 0.6.3:

* Fix hardcoded use of bmake.
2020-01-13 18:06:47 +00:00
joerg
ff7043b64c pbulk-0.67: Support both $NetBSD$ style RCS IDs and digests in +BUILD_INFO.
Bump configuration version for the new pkg_admin field.
2020-01-12 23:35:01 +00:00
rillig
be5c89688f pkgtools/pkglint: update to 19.4.3
Changes since 19.4.2:

PLIST_VARS identifiers must not contain characters that are interpreted
specially in regular expressions.

All pkgsrc text files except for doc/pkgsrc.{html,txt} must use the
default CVS keyword substitution.
2020-01-11 15:47:58 +00:00
bsiegert
5220c156ea Revbump Go packages after Go default version bump. 2020-01-10 13:32:09 +00:00
leot
974b9da412 pkg_alternatives: Update to 1.7
Changes:
1.7
---
 - Adjust pkg_alternatives(8) to point to the real user configuration wrapper
   file and bump date
2020-01-10 12:20:50 +00:00
joerg
c604a8dab6 pbulk-0.66: make it simpler to compute the duration of the scan phase
This is handy when benchmarking whole system performance.
2020-01-08 15:12:01 +00:00
ryoon
e7d267dfd3 pkglint: Remove an outdated file from PLIST to fix packaging 2020-01-06 21:40:40 +00:00
rillig
adba00ab92 pkgtools/pkglint: remove outdated ideas.go 2020-01-06 20:39:35 +00:00
rillig
20c705d876 pkgtools/pkglint: update to 19.4.2
Changes since 19.4.1:

Fixed variable resolution. Before, variables that had not been defined
in an included file could still end up in the scope of the package,
which made many of the pkglint checks unreliable.

Each condition that is used in the PLIST should be defined somewhere in
the package Makefile or its included files.

When loading a package Makefile, hacks.mk is loaded implicitly at the
end, just as the pkgsrc infrastructure does in mk/bsd.hacks.mk.
2020-01-06 20:38:42 +00:00
jperkin
4270a35ebb pkgin: Update to 0.15.0.
## Version 0.15.0 (2020-01-06)

 * Also match full package names when searching (Erik van Nooijen).
2020-01-06 09:39:02 +00:00
ryoon
97e1b5bec9 pkglint: Include more .go file to PLIST 2020-01-05 12:35:40 +00:00
rillig
2fe3b9fc38 pkgtools/pkglint: update to 19.4.1
Changes since 19.4.0:

The notes for inserting an empty line have been changed from "insert
after this line" to "insert before this line" to make the line numbers
in the diagnostics contiguous. There had been several places where the
diagnostics went from line 1 to line 2 and then back to line 1, which
was confusing.

The lines in ALTERNATIVES files are checked for trailing whitespace.
This is only for consistency with the other checks. In the whole pkgsrc
tree all ALTERNATIVES files are already fine.

The diagnostics for comments in .endif/.endfor lines that don't
correspond to their .if/.elif/.for counterparts now includes the exact
line number of the corresponding condition, to make the warning easier
to fix.

The diagnostics for wrong variable value alignment now mention the
current column in addition to the desired column, to make it easier to
see by how much and in which direction the indentation should be fixed.

Variables that are used in conditions before they are actually defined
need the :U modifier.
2020-01-04 19:53:13 +00:00
rillig
446a181446 pkgtools/pkglint: update to 19.4.0
Changes since 19.3.19:

Empty PLIST files now generate an error instead of a warning since there
is no reason for having these empty files.

If a follow-up line in a Makefile is completely empty, there is no note
about trailing whitespace anymore since the warning about the misleading
empty line already covers this case.

The remaining code changes are only refactorings.
2019-12-30 16:27:13 +00:00
rillig
7efaf56ff6 pkgtools/pkg_regress: update to 0.5
Changes since 0.4:

The log output in verbose mode surrounds each test now and says
immediately whether that test fails. Before, that information was
collected and only shown at the very end of the output, which was
inconvenient.
2019-12-17 15:38:43 +00:00
rillig
c25511f60a pkgtools/pkglint: update to 19.3.19
Changes since 19.3.18:

Small improvements to edge cases in SUBST blocks.

Small improvements to edge cases in variable assignment and alignment
of the continuation backslashes.

The --source option shows the changes from autofix, even when the
--show-autofix option is not given. This is a welcome side-effect of
making the autofix logging simpler and more predictable.
2019-12-16 17:06:05 +00:00
rillig
68f328d785 pkgtools/pkglint: remove mkalign code
This is an early prototype that is not used in the pkglint code. It will
be included when it is ready and tested.
2019-12-15 01:29:06 +00:00
rillig
626431cd38 pkgtools/pkglint: update to 19.3.18
Changes since 19.3.17:

The SUBST check has been completely rewritten. It can handle several
SUBST classes at the same time now. This reduces the number of wrong
warnings.
2019-12-14 18:04:15 +00:00
bsiegert
924057ee4f Revbump all Go packages after Go 1.12.14 update. 2019-12-13 07:43:47 +00:00
rillig
70a94d3869 pkgtools/pkglint: update to 19.3.17
Changes since 19.3.16:

Pkglint now handles SUBST blocks correctly, even those in which some of
the variables are defined conditionally. It correctly reports those that
are missing in at least one of the possible branches.

PKG_JVM is no longer marked as deprecated. It was once package-settable.
Since 2002 it is system-provided, and the package-settable counterpart
is PKG_JVM_DEFAULT. This does not fit into pkglint's simple model of
deprecating variables since the variable name is still valid, it should
just not be defined by packages anymore.

The alignment of variable assignments has been fixed in some edge cases.
In continuation lines where the backslash is beyond column 72, the
whitespace before the continuation backslash is fixed to a single space.
2019-12-13 01:39:23 +00:00
jperkin
0d591897dd pkgin: Update to 0.14.0.
## Version 0.14.0 (2019-12-12)

 * Ensure reverse dependencies are considered when a "pkgin install" triggers
   an upgrade of a local package, avoiding potentially nasty bugs.
 * Minor performance improvement.
2019-12-12 15:52:53 +00:00
rillig
394bfa01cb pkgtools/pkglint: update to 19.3.16
Changes since 19.3.15:

When a package-settable variable gets a default value using the ?=
operator, pkglint no longer suggests to include bsd.prefs.mk, since that
doesn't make sense. Including bsd.prefs.mk only defines user-settable
and system-provided variables.

User and group names may be a single character only. While not widely
used, it's syntactically valid and there's no reason to prevent this.

In variable assignments, when pkglint removes unnecessary whitespace
between the variable name and the operator, it keeps the indentation of
the variable value the same as before. Previously, the indentation had
been changed, which required another run of pkglint --autofix.

PREFIX can only be used as a replacement for LOCALBASE after the whole
package Makefile has been loaded. This is because PREFIX is defined
very late, by bsd.pkg.mk. Therefore, don't suggest to replace LOCALBASE
with PREFIX in .if conditions.

When pkglint suggests to replace INSTALL_DATA_DIR commands with setting
INSTALLATION_DIRS instead, paths with a trailing slash are correctly
looked up in the PLIST. This suggests to use AUTO_MKDIRS more often.
2019-12-09 20:38:15 +00:00
rillig
c08a423e60 pkgtools/pkglint: update pkglint to 19.3.15
Changes since 19.3.14:

Invalid lines in PLIST files are now reported as errors instead of
warnings. If pkglint doesn't know about it, it must be an error.

In PLIST files, all paths are validated to be canonical. That is, no
dotdot components, no absolute paths, no extra slashes, no intermediate
dot components.

Fewer notes for unexpanded variable expressions in DESCR files. Before,
the text $@ was reported as possible Makefile variable even though it
was just a Perl expression.

README files are allowed again in pkgsrc package directories. There was
no convincing argument why these should be forbidden.

A few diagnostics have been changed from NOTE to WARNING or from WARNING
to ERROR, to match their wording.

When pkglint suggests to replace :M with ==, the wording is now "can be
made" instead of "should".
2019-12-08 22:03:37 +00:00
rillig
375c4f5dd3 pkgtools/pkglint: update to 19.3.14
Changes since 19.3.13:

When pkglint suggests to replace !empty(VARNAME:Mfixed) with ${VARNAME}
== fixed, the exact suggested expression is now part of the diagnostic.
The check and the autofix have been improved. They now apply only to the
last modifier in the whole chain, everything else was a bug in pkglint.

Pkglint now knows the scope of variables better than before. It knows
the difference between variables from <sys.mk> like MACHINE_ARCH, which
are always in scope, and those from mk/defaults/mk.conf, which only come
into scope later, after bsd.prefs.mk has been included. It warns when
variables are used too early, for example in .if conditions.

The pathnames in ALTERNATIVES files are now checked for absolute
pathnames. This mistake doesn't happen in practice, but the code for
converting the different path types internally made it necessary to add
these checks. At least this prevents typos.

The special check for obsolete licenses has been removed since their
license files have been removed and that is checked as well.

Variables named *_AWK may be appended to.

The variables _PKG_SILENT and _PKG_DEBUG are no longer deprecated, they
are obsolete now. They are not used in main pkgsrc and pkgsrc-wip
anymore.

When a package sets a default value for a user-settable variable (which
is something that should not happen anyway), it should .include
bsd.prefs.mk before, in order to not accidentally overwrite the
user-specified value.

Variable modifiers of the form :from=to are now parsed like in bmake.
They are greedy and eat up any following colons as well. This means that
${VAR:.c=.o:Q} replaces source.c with source.o:Q, instead of quoting it.
Pkglint now warns about such cases.

The handling of relative paths in diagnostics is now consistent. All
paths that are part of a diagnostic are relative to the line that issues
the diagnostic.

Fatal errors are no longer suppressed in --autofix mode.

Plus lots of refactoring, to prevent accidental mixing of incompatible
relative paths.
2019-12-08 00:06:37 +00:00
rillig
cdbbd83c0c pkgtools/pkglint: update to 19.3.13
Changes since 19.3.12:

The command line option -Wspace has been removed. Warnings and notes
about whitespace are now generated by default and cannot be switched
off. This is to ensure a consistent visual appearance of the package
Makefiles.

Shell programs that are indented unnecessarily deep generate a note by
default now. Before, the option -Wall was necessary to get these notes.

The check for unintended comments in multi-line shell programs is now
enabled again. It had been disabled some time ago as byproduct of a bug
fix in the shell parser.

The check for unique buildlink3 package identifiers now also works if
pkglint is run from a package directory instead of the pkgsrc root
directory.
2019-12-02 23:32:09 +00:00
rin
82fe727284 Indicate the original source it based on. No binary changes. 2019-12-01 06:05:44 +00:00
rin
537a90d421 Add NetBSD RCSID. No binary changes. 2019-12-01 06:03:58 +00:00
rin
0c7eb58a53 Support RPMs compressed by Zstd, found in Fedora 31.
Bump version.
2019-11-30 23:31:30 +00:00
rillig
403ff3f2c1 pkgtools/pkglint: update to 19.3.12
Changes since 19.3.11:

The command line option -Wstyle has been removed since it didn't have
any effect.

License names may contain underscores. This fixes 3 parse errors and 2
wrong notes about seemingly unused licenses.

The parser for Makefile variables has been improved for some edge cases.
The :M and :N modifiers behave surprisingly when they contain unbalanced
parentheses or braces. Pkglint now parses them in the same way as bmake,
but doesn't warn since these cases are not actually used in pkgsrc.
2019-11-30 20:35:11 +00:00
rillig
a306dffbe5 pkgtools/pkglint: update to 19.3.11
Changes since 19.3.10:

The check for buildlink3.mk files that are included conditionally in one
place and unconditionally in another place have been refined. Now they
also work in cases that do not involve any variables, such as when the
condition is a mere exists(filename).

References to variables that use parentheses instead of the usual braces
produce a warning now, even if pkglint cannot fix them automatically.
This affects only a few instances where more than one such variable
reference appeared in a single line.

The --log-verbose command line option has been removed since it does not
have any practical use other than improving the performance during
pkglint development itself. Because of that it hadn't even been
mentioned in the manual page.

Warnings for missing license files now report the path to the license
file relative to the line where the warning occurs, like everywhere
else.
2019-11-27 22:10:06 +00:00
wiz
c0f1e20be2 x11-links: remove libXevie
The X server stopped supporting this extension a long time ago.

Bump version.
2019-11-25 09:50:55 +00:00
rillig
e8482d1816 pkgtools/pkglint: update to 19.3.10
Changes since 19.3.9:

In diagnostics for suggested package updates, the exact line of doc/TODO
is mentioned. If a suggested update has an additional comment, the
brackets around that comment are not output anymore.

The check for defined but not used variables has been improved for the
edge case of defining a variable in the package Makefile and using it
in the buildlink3.mk file of the same package, which just doesn't work.

Makefile fragments in patches/ directories are now completely ignored.
It was a hypothetical case anyway.

Comparing PKGSRC_COMPILER using the == or != operators is now considered
an error instead of a warning. The common cases can be autofixed.
2019-11-23 23:35:55 +00:00
rillig
b43d1333d2 pkgtools/pkglint: update to 19.3.9
Changes since 19.3.8:

Match man pages in ALTERNATIVES with their counterparts in PLIST. In
PLIST files, ${PKGMANDIR} may be abbreviated as a simple "man", but not
in ALTERNATIVES.
2019-11-19 06:51:38 +00:00
rillig
6a4fb76594 pkgtools/pkglint4: update to 4.193.2
Changes since 4.193.1:

Disabled unreliable check about possible typos in variable names. For
example, in pkgtools/url2pkg the variable TEST_DEPENDS was flagged even
though it is well-known.

Disabled unreliable check about unknown shell commands. For example, in
pkgtools/pkglint4 all commands from ${PREFIX} are ok, but were still
flagged.
2019-11-18 08:06:58 +00:00
rillig
433c1aee4f pkgtools/url2pkg: add unit test for USE_TOOLS 2019-11-18 07:56:02 +00:00
rillig
6acf204db0 pkgtools/url2pkg: update to 19.3.7
Changes since 19.3.6:

Detect whether the package uses GNU Make, based on the top-level
Makefile.
2019-11-18 07:50:51 +00:00
rillig
2fd8141705 pkgtools/pkglint: be strict about invalid doc/CHANGES entries 2019-11-17 02:55:56 +00:00
rillig
0e893646a7 pkgtools/pkglint4: update to 4.193.1
Changes since 4.193.0:

Don't mark BUILDLINK_TRANSFORM.${OPSYS} as deprecated.
2019-11-17 02:54:10 +00:00
rillig
20fd8730b0 pkgtools/pkglint: update to 19.3.8
Changes since 19.3.7:

Made check for doc/CHANGES file stricter. The check now catches entries
for added packages that are missing the word "version".
2019-11-17 02:06:01 +00:00
rillig
3fab179c40 pkgtools/pkglint: update to 19.3.7
Changes since 19.3.6:

Improved variable value alignment.

Fixed wrong warning about comment lines that were interpreted as shell
commands before.

Warn when the first category of a package doesn't correspond to the
path in the filesystem. This affects 603 packages.

No longer warn about deprecated BUILDLINK_TRANSFORM.${OPSYS}. The
deprecation warning was meant for BUILDLINK_TRANSFORM.${pkgbase}, but
since pkglint cannot distinguish between these, the warnings were wrong.
2019-11-17 01:26:25 +00:00
wiz
b0b2569805 evieext: remove, it's part of xorgproto now
Noted by taca.
2019-11-15 09:18:16 +00:00
rillig
7f67b9fbbe pkgtools/url2pkg: update to 19.3.6
Changes since 19.3.5:

No longer print a stack trace when Ctrl+C is pressed.
2019-11-14 20:03:47 +00:00
triaxx
4427cb5aec pkg_chk: add NO_CHECKSUM= yes to appease pkglint 2019-11-10 10:30:50 +00:00
triaxx
61e73ca199 pkg_chk: fix PR pkg/54675
Some OS (e.g. Arch Linux) do not have hostname in their base set of
packages.

pkgsrc changes:
---------------
  * Replace $(hostname) by $(uname -n).

Thanks jperkin@!
2019-11-10 10:25:43 +00:00
rillig
5d38f7a07a pkgtools/pkglint: update to 19.3.6
Changes since 19.3.5:

Improved indentation and alignment of multi-line variable assignments.

Improved indentation of multi-line shell commands.

Added warning for adding unquoted words to PKG_FAIL_REASON, which is a
list of messages, one per line.

Lines that start with tabs followed by a # are not shell commands, they
are comments. Bmake treats them in the same way.

Change the type of BROKEN to be a list of messages, instead of a single
message. This allows at least a bit of formatting in the error messages.
2019-11-04 18:44:21 +00:00
wiz
6c1e67a77b pkgin: fix build with gcc-8.x
Turn off string truncation and overflow warnings until the code is fixed
2019-11-04 08:39:04 +00:00
rillig
f2837a2c0f pkgtools/pkglint: update to 19.3.5
Changes since 19.3.4:

Variable uses in parentheses (such as $(VAR) instead of ${VAR}) are
treated the same. The ones in parentheses had less support before.

Improved the checks for options.mk files, adding support for options
that are defined using .for loops and those referring to other
variables.

Packages that set DISTFILES to an empty list no longer require a
distinfo file.

Patches whose filename contains the word CVE may patch more than one
target file.
2019-11-02 16:37:48 +00:00
rillig
d4cef40230 pkgtools/pkglint: update to 19.3.4
Changes since 19.3.3:

In cases where the conditions for including buildlink3.mk files differ
between the package itself and its own buildlink3.mk file, explain how
to determine PKG_OPTIONS for dependencies.

Don't issue wrong warnings in options.mk files when the options are
handled in a .for loop.
2019-11-01 19:56:52 +00:00
rillig
5e88ef68e9 pkgtools/url2pkg: update to 19.3.5
Changes since 19.3.4:

Added the license names from R2pkg and texlive2pkg.
2019-10-28 20:17:24 +00:00
rillig
32b1197bb9 pkgtools/url2pkg: update to 19.3.4
Changes since 19.3.3:

The code that handles license names is the same for Python and Perl
modules.

Python packages that use distutils.extension can be handled. An example
package is devel/py-pysha3.

The DESCR file is filled from the package's README file.

The PLIST is generated with some comments providing further assistance.
2019-10-27 19:19:54 +00:00
rillig
7e9533246a pkgtools/url2pkg: move license handling from Python to common code
This way, the code is shared between Python modules, Perl modules, and
maybe in the future R packages.

No functional change.
2019-10-27 13:15:04 +00:00
rillig
48ebfd0f74 pkgtools/pkglint: update to 19.3.3
Changes since 19.3.2:

The rationale for variables like BROKEN, GCC_REQD and for direct
inclusion of builtin.mk files may span multiple lines, and it may end
with an empty comment line.
2019-10-26 11:43:36 +00:00
rillig
fe85bf5b22 pkgtools/pkglint: update to 19.3.2
Changes since 19.3.1:

* Pkglint no longer warns about a missing :Q modifier if there is also
  a :D modifier, since the latter hides the original variable value
  from the expression value.

* Variable names like .CURDIR are now allowed in the _VARGROUPS section.

* In dependency lines like "${_COOKIE.extract}:", pkglint no longer
  warns about the unknown target. No matter whether this is a file name
  or even a list of other targets, there's no chance for a typo here.

* If some dependencies are included conditionally, and the package
  Makefile and buildlink3.mk disagree, and the conditions depend on
  PKG_OPTIONS, pkglint outputs a helpful explanation.

* The check for including builtin.mk directly can be disabled by giving
  a reason in a comment at the end of the line.
2019-10-26 09:51:47 +00:00
rillig
e21dca09cc pkgtools/R2pkg: format source code 2019-10-25 19:00:16 +00:00
rillig
941232a552 pkgtools/R2pkg: remove unused code 2019-10-19 22:10:58 +00:00
rillig
4aeb97616f pkgtools/R2pkg: refactoring 2019-10-19 21:32:02 +00:00
rillig
d5d380541c pkgtools/R2pkg: refactoring, tests 2019-10-19 21:12:18 +00:00
rillig
330530e02e pkgtools/R2pkg: make license handling code simpler 2019-10-19 19:10:31 +00:00
rillig
9f3bbc66d1 pkgtools/R2pkg: create fewer temporary files 2019-10-19 18:47:59 +00:00
rillig
e1a3e3d515 pkgtools/R2pkg: code cleanup, use fewer temporary files 2019-10-19 18:43:51 +00:00
rillig
7592d88865 pkgtools/R2pkg: make USE_LANGUAGES code simpler 2019-10-19 17:30:10 +00:00
rillig
5cb91c7b35 pkgtools/R2pkg: clean up shell program 2019-10-19 17:15:00 +00:00
rillig
80b0ad0df6 pkgtools/R2pkg: clean up shell program 2019-10-19 16:18:55 +00:00
rillig
592516565b pkgtools/R2pkg: update to 0.6.3
Changes since 0.6.1:

* Fix comparison of articles (a, an) in comments.
2019-10-19 15:47:03 +00:00
rillig
7cbd7fcc3d pkgtools/R2pkg: refactoring, tests 2019-10-19 14:52:40 +00:00
rillig
d74b3e43fa pkgtools/R2pkg: code cleanup 2019-10-19 13:55:09 +00:00
rillig
1a6da8e03d pkgtools/R2pkg: refactoring, tests 2019-10-19 13:37:00 +00:00
rillig
5b63090125 pkgtools/R2pkg: refactoring, tests 2019-10-19 11:47:23 +00:00
rillig
45180f7fb3 pkgtools/R2pkg: refactoring, tests 2019-10-19 11:04:46 +00:00
rillig
c3eb38efc4 pkgtools/R2pkg: make write.Makefile simpler 2019-10-18 22:10:46 +00:00
rillig
b36cbe9825 pkgtools/R2pkg: refactorings, tests 2019-10-18 21:42:20 +00:00
rillig
18e20d3517 pkgtools/R2pkg: remove unused code, add tests 2019-10-18 17:18:03 +00:00
rillig
05380acf01 pkgtools/R2pkg: fix tests with virtual files
textConnection does not expect a trailing '\n' in its argument.
2019-10-18 16:07:53 +00:00
bsiegert
cb070cf0eb Revbump all Go packages after lang/go112 update 2019-10-18 14:58:43 +00:00
rillig
e4c54a6929 pkgtools/R2pkg: add more tests 2019-10-17 22:08:13 +00:00
rillig
8583a0f1ac pkgtools/R2pkg: add tests 2019-10-17 17:50:54 +00:00
rillig
c8408e31df pkgtools/R2pkg: refactorings, small bugfixes, tests
find.Rcpp is now guaranteed to return a boolean.

Added some tests and many more templates that are still waiting to be
filled.
2019-10-17 17:14:34 +00:00
rillig
48ac9a62c8 pkgtools/R2pkg: fix indentation, make tabs visible 2019-10-17 01:21:12 +00:00
rillig
9c614d3f09 pkgtools/R2pkg: remove unused code 2019-10-15 18:44:21 +00:00
joerg
47fa1134f9 Use tab for indendation as the rest of the block. 2019-10-13 21:50:54 +00:00
joerg
7cc86d5212 Use __UNCONST to remove const attributes before free. 2019-10-13 21:49:36 +00:00
rillig
d9d373311f pkgtools/R2pkg: shorten code in read.Makefile.as.dataframe 2019-10-13 19:34:13 +00:00
rillig
a88f3e92b6 pkgtools/R2pkg: add more unit tests 2019-10-13 19:13:47 +00:00
rillig
5540d90513 pkgtools/R2pkg: add unit tests 2019-10-13 18:13:03 +00:00
rillig
9fe8d9ca3a pkgtools/R2pkg: code cleanup 2019-10-13 17:23:29 +00:00
rillig
5154306621 pkgtools/R2pkg: replace integer indices with named attributes 2019-10-13 17:20:00 +00:00
rillig
f63450b9c1 pkgtools/R2pkg: make R2pkg.R testable
Placing the code into a main function allows the tests to source the file
without any side effects.

The LC_ALL=C environment variable is necessary on NetBSD/x86_64 8.0 in
the en_US.UTF-8 locale since otherwise R dumps core in the source(...)
call, deep inside towctrans.
2019-10-13 15:35:48 +00:00
rillig
95d5be1715 pkgtools/R2pkg: fix typo 2019-10-13 13:28:45 +00:00
rillig
c158cfcbc6 pkgtools/R2pkg: separate R code from shell code
Before, it was difficult to edit the R code since all dollars,
backslashes and backticks had to be escaped. Separating the code also
makes the R part testable on its own.
2019-10-13 13:26:22 +00:00
rillig
9d7f6112a0 pkgtools/R2pkg: update to 0.6.1
Changes since 0.6:

* Run properly even if TMPDIR is not set.

* Quote variables to prevent unintended interpolation.

* Write error messages to stderr instead of stdout.
2019-10-13 09:43:26 +00:00
rillig
374ae0b4a4 pkgtools/url2pkg: remove unnecessary update_vars field 2019-10-13 08:48:23 +00:00
rillig
b36f2433db pkgtools/url2pkg: rename type Url2Pkg to Globals 2019-10-12 17:38:16 +00:00
rillig
70122f7240 pkgtools/url2pkg: fix type hinting declarations 2019-10-12 17:28:44 +00:00
rillig
d5250cbc60 pkgtools/pkglint: update to 19.3.1
Changes since 19.3.0:

* In buildlink3.mk files, the package identifier doesn't have to match
  the PKGBASE from the package Makefile exactly. The PKGBASE may have a
  leading "lib" (for libiconv and libgettext), as well as a trailing
  number (for emacs20 and netatalk22).

* GITHUB_RELEASE is added to the variables that should appear in a fixed
  order in the package Makefile.

* In the MASTER_SITE URLs, the transport protocol is irrelevant for
  matching direct URLs to the predefined MASTER_SITE_* variables.
2019-10-11 23:30:02 +00:00
joerg
a07706e7d6 pkg_install-20191008: Add pkg_admin digest command 2019-10-11 11:57:41 +00:00
triaxx
cd3c709f82 rc.subr: which is not present in Arch Linux boostrap 2019-10-11 11:56:06 +00:00
joerg
fe227f6b78 pkg_admin(1): sort commands 2019-10-08 21:33:35 +00:00
prlw1
c02441770e Rename py-meson to meson.
The motivation is to consider meson as an application, so there is only
one copy on the system, and as a python 3 program, it can build python 2
packages.
2019-10-07 09:28:09 +00:00
rillig
44cbbac051 pkgtools/url2pkg: update to 19.3.3
Changes since 19.3.2:

* Replaced the Perl implementation with the Python implementation.

* Improved detection of WRKSRC: only directories are candidates, regular
  files are ignored.

* R packages are handled by R2pkg instead of url2pkg.
2019-10-06 12:55:30 +00:00
rillig
5e9c9526ef pkgtools/url2pkg: remove Perl implementation
The Python implementation has received more bugfixes, new features and
handles all kinds of edge cases better. All previous features have been
either copied or intentionally omitted.
2019-10-06 12:52:13 +00:00
rillig
8f0befb40e pkgtools/url2pkg: update man page 2019-10-06 12:50:41 +00:00
rillig
e2df0a63ff pkgtools/url2pkg: refer to R2pkg for creating R packages 2019-10-06 12:50:23 +00:00
rillig
167f4e9d9c pkgtools/pkglint4: remove more unreliable or outdated checks
CFLAGS and LDFLAGS had been checked for GCC-style flags only. This didn't
make sense since wrong flags would be detected on the exotic platforms
anyway.

The experimental --autofix has been removed.

The check for "# used by" comments in Makefile.common has been removed.
Especially the --autofix could damage files.

The warnings for ICON_THEMES have been removed since they appear in
groups of thousands, and the old pkglint cannot issue warnings "once per
file" simply.
2019-10-06 11:45:05 +00:00
rillig
195ab1e0c0 pkgtools/pkglint4: remove some unreliable checks
The warnings about variable permissions were not understandable enough to
be acted upon. The new pkglint does this better.

The languages that are allowed in USE_LANGUAGES are defined differently
in the pkgsrc infrastructure, thus the old parsing code does not work
anymore. Therefore all identifiers are allowed now.

Dependency patterns like 'package>=1.0<2.0' are no longer marked as
wrong.

The debatable warning about plural names is gone.

The order of variables in simple Makefiles is no longer checked. Some new
variables have been added in the meantime, and keeping the consistent
order is not of utmost importance to those pkgsrc developers who work
with pkglint4. They are experienced enough to know the rules.

Missing manual pages are no longer marked in the PLIST files. It's not
the job of pkgsrc to provide these files.

The warning about unnoticed errors in pipelines like 'find | xargs' has
been removed because the shell parser is unreliable. This is solved
better in the new pkglint.
2019-10-06 11:06:42 +00:00
rillig
95b06139fc pkgtools/pkglint4: remove broken version check
The version number '4.193.0' had always been compared to the string
'pkglint4-4.193.0', which when interpreted as a version number, was:
(16, 11, 7, 12, 9, 14, 20, 4, 0, 193, 0, 0). This was always greater than
the (4, 0, 193, 0, 0).
2019-10-06 10:46:18 +00:00
rillig
a5f3f1aedf pkgtools/pkglint4: update to 4.193.0, remove check for absolute paths
The check for absolute paths is not necessary since it doesn't provide
any benefit. It had been removed from pkgtools/pkglint already.
2019-10-06 10:33:34 +00:00
rillig
28229f8599 pkgtools/url2pkg: improve determining WRKSRC
For setting WRKSRC, only the directories in WRKDIR are relevant, not the
files.
2019-10-06 08:24:18 +00:00
rillig
40f0613279 pkgtools/url2pkg: fix version tag detection 2019-10-06 05:53:00 +00:00
rillig
153d122916 pkgtools/url2pkg: update to 19.3.2
Changes since 19.3.1 (only to the Python implementation):

* In Python packages, the variables LICENSE, HOMEPAGE and COMMENT are
  filled from their counterparts in setup.py, no matter whether
  the package uses setuptools or distutils.core.

* For buildlink3 dependencies, the variables BUILDLINK_DEPENDS and
  BUILDLINK_API_DEPENDS are added to the package Makefile.

* The DESCR and PLIST files are only created if they are missing.
  Existing files are not overwritten.

* Packages that contain .po files will set USE_PKGLOCALEDIR=yes.
  Before, only packages that contained .mo or .gmo did that.

* More download URLs from SourceForge can be handled.

* SourceForge packages get their HOMEPAGE set correctly.

* When matching the URL against the MASTER_SITE_* variables, the
  protocol is ignored. This allows https URLs to use the
  MASTER_SITE_GNU, which still uses http.

* Python packages from GitHub only get their MASTER_SITES converted to
  PyPI if they can be actually downloaded from there as well. This
  check was missing before.
2019-10-05 22:02:32 +00:00
rillig
a21b921705 pkgtools/url2pkg: clean up path handling 2019-10-05 21:05:50 +00:00
rillig
13d86735e6 pkgtools/url2pkg: clean up code 2019-10-05 19:59:04 +00:00
rillig
ef574bcc42 pkgtools/url2pkg: add test for main function 2019-10-05 19:24:35 +00:00
rillig
dda3ba4427 pkgtools/url2pkg: fixed migration of Python packages from GitHub to PyPI 2019-10-05 18:00:09 +00:00
rillig
69161ba6da pkgtools/url2pkg: ignore URL protocol
The MASTER_SITE_GNU still uses http:// for downloading the distfiles.
Since typical URLs today use https://, ignore the protocol when matching
the given URL against the MASTER_SITE_* variables from mk/fetch/sites.mk.
2019-10-05 12:22:51 +00:00
rillig
ee09a14fc0 pkgtools/url2pkg: improve URL handling for SourceForge
* Improved handling of SourceForge URLs
* Fixed wrong HOMEPAGE for URLs composed from MASTER_SITE_*
* Improved the existing tests and added some more
2019-10-05 11:02:30 +00:00
rillig
20c0cec0e4 pkgtools/url2pkg: reorganize the Python implementation
The previous version of the code was largely work in progress. Now the code
has been grouped and sorted. A few bugs have been fixed on the way:

* If a PKGNAME had been added in the interactive editor session, it had
  been overwritten before. This was because of a typo.

* The whole code has been grouped into classes, to clearly show the
  dependencies between the parts.

* Generation of the initial Makefile has been split into smaller methods,
  to make them individually testable and to reduce the scope of the local
  variables.

* When creating a package in a directory pkgsrc/local/*, "local" is not
  used as the primary category of the package.

* GNU configure and other configure scripts are also detected if they are
  not placed directly in WRKSRC.

* Packages that contain *.po files will have USE_PKGLOCALEDIR=yes in the
  package Makefile. Previously, only *.mo or *.gmo files triggered this
  variable.

* When PKGNAME is based on DISTNAME, it is only written to the package
  Makefile if there is an actual prefix or transformation.
2019-10-04 22:26:34 +00:00
rillig
1dad43e5ec pkgtools/url2pkg: keep DESCR and PLIST, fix GConf detection
The files DESCR and PLIST are no longer overwritten. They are only
created if they don't exist.

The GConf schemas detection had written the include line too often, once
for every schema file.
2019-10-03 23:02:59 +00:00
rillig
9f6159e636 pkgtools/url2pkg: ignore commented variables 2019-10-03 18:28:29 +00:00
rillig
a79314833e pkgtools/url2pkg: use filenames relative to WRKSRC
Before this change, the Python implementation had written absolute paths
to PKGCONFIG_OVERRIDE, which didn't make sense.
2019-10-03 16:43:58 +00:00
rillig
df89c4576a pkgtools/url2pkg: add BUILDLINK_API_DEPENDS and BUILDLINK_DEPENDS 2019-10-03 16:32:47 +00:00
rillig
6723bb6cd0 pkgtools/url2pkg: remove leftover debug print statement 2019-10-03 14:48:48 +00:00
rillig
35fa65524e pkgtools/url2pkg: improve Python implementation
* verbose mode no longer crashes
* licenses and other variables are copied to the package Makefile
* several more automatic tests
2019-10-03 12:52:54 +00:00
rillig
b1d365d642 pkgtools/url2pkg: update to 19.3.1
Changes since 19.3.0:

* Added an alternative url2pkg implementation in Python that will
  eventually replace the Perl implementation. Reasons are:

  * Perl is cumbersome to type with all the special characters
  * Perl does not even have a Boolean type, after all the years
  * Perl cannot check the number of arguments passed to subs
  * Python does not suffer from the above limitations
  * Python is available on as many platforms as Perl

* The two implementations will be kept in sync until all the features
  have made it into the Python implementation, and everything has
  automatic tests.

* Added the -v or --verbose command line option.
2019-10-03 09:37:40 +00:00
rillig
ae18c3f6b7 pkgtools/url2pkg: fix option handling 2019-10-03 09:31:36 +00:00
rillig
44572afbfd pkgtools/url2pkg: small adjustments
* Fixed copy-and-paste typo in MakeMaker Perl module.

* Added -v command line option.
2019-10-02 15:57:37 +00:00
rillig
0b4c862c88 pkgtools/pkglint: update to 19.3.0
Changes since 5.7.24:

* There is no need to ask the dummy MAINTAINER from url2pkg whether
  committing changes is ok.

* When autofixing a condition like !empty(PKGPATH:Mliteral), don't
  generate unnecessary parentheses around ${PKGPATH} == literal.

* In a _VARGROUPS section, the public variables should be listed
  before the private variables, to put important things first.

* When pkglint suggests to be run again with the -e, -fs or -F options,
  repeat the whole command line, to allow for copy-and-paste.

* The checks for PKGPATH are fixed and enhanced. It is not a relative
  path like in ../../category/package, but relative to the pkgsrc root.

* Unintended file globbing in sed commands such as s,.*,any, gets a
  warning.

* MASTER_SITES should normally end with a slash, in rare cases an
  equals sign or a colon are correct, too.

* Detect redundant directories in INSTALLATION_DIRS.
2019-10-01 21:37:59 +00:00
rillig
b38d9bdba3 pkgtools/url2pkg: update to 19.3.0
Changes since 2.37:

* Test dependencies in Perl MakeMaker modules are copied to the
  package Makefile.

* Unknown dependencies in Perl MakeMaker modules no longer abort url2pkg
  but instead are added as "# TODO" dependencies to the package Makefile.

* The license from Perl MakeMaker and Python modules is copied to the
  package Makefile.

* The build dependencies, COMMENT and HOMEPAGE from Python setuptools
  modules are copied to the package Makefile.

* No more "undefined $url" when running url2pkg in a directory that
  already has a package Makefile and is extracted.
2019-10-01 19:41:23 +00:00
rillig
3d927c90d8 pkgtools/url2pkg: update to 2.37
Changes since 2.36:

* Fixed generation of the package Makefile. Due to a typo, the line that
  included bsd.pkg.mk had been omitted, making any generated package fail.
2019-10-01 18:43:46 +00:00
bsiegert
866c85b303 Revbump all Go packages after 1.12.10 update.
ok wiz@ for PMC
2019-09-26 20:10:39 +00:00
jperkin
c0b827e822 pkgin: Update to 0.13.0.
## Version 0.13.0 (2019-09-24)

 * "pkgin upgrade" now upgrades all packages instead of only keep packages, and
   essentially replaces "pkgin full-upgrade".  Selective upgrades have always
   been risky and provide no benefit, especially in light of refresh support.
   "pkgin full-upgrade" is retained for compatibility but marked as deprecated.
 * Refresh the local package repository when a forced update is requested, so
   that a failed update can be repaired easily.
 * Switch NetBSD default repository from ftp.netbsd.org to cdn.netbsd.org.
2019-09-24 12:57:22 +00:00
rillig
0c496b4733 pkgtools/libnbcompat: fix regular expression literals in AWK program
gawk: nbcompat.awk:5: warning:
regexp escape sequence `\#' is not a known regexp operator
2019-09-13 20:23:50 +00:00
rillig
89c2624ba0 pkgtools/texlive2pkg: fix pkglint warning 2019-09-13 13:45:22 +00:00
rillig
3ac301ed80 pkgtools/texlive2pkg: fix shell quoting, update to 1.8
Before this fix, running "texlive2pkg --help" in a directory that
contains a file named "d" would output only "d" instead of "[-d]".
2019-09-13 13:43:30 +00:00
rillig
06f9c49ddb pkgtools/url2pkg: refactor to group the subs that modify Makefile lines 2019-09-13 13:31:39 +00:00
rillig
8bc8671851 pkgtools/url2pkg: use MetaCPAN HOMEPAGE for Perl modules 2019-09-13 06:22:33 +00:00
rillig
fb81fe5b18 pkgtools/url2pkg: refactor code for determining WRKSRC into separate sub 2019-09-13 05:38:27 +00:00
rillig
b689ab5ca7 pkgtools/url2pkg: fix typo, left over from manual testing 2019-09-13 05:19:27 +00:00
rillig
58d2d50c2a pkgtools/pkglint: update to 5.7.24
Changes since 5.7.23:

* Improved the _VARGROUPS check for ignored variables
* Removed wrong warnings for variable expressions like ${VAR:Dyes:Uno}
* Used correct terminology for the :Q modifier (it's not an operator)
2019-09-12 21:15:48 +00:00
rillig
98ce03c078 pkgtools/url2pkg: replace CRLF with LF 2019-09-12 20:02:07 +00:00
rillig
68987c00b5 pkgtools/url2pkg: update to 2.36
Changes since 2.35:

* Added support for Module::Build Perl modules.
2019-09-12 18:23:00 +00:00
rillig
5467eed239 pkgtools/url2pkg: refactoring: don't use experimental smartmatch 2019-09-12 05:56:59 +00:00
rillig
dbcbecdd52 pkgtools/url2pkg: claim maintainership 2019-09-12 05:49:03 +00:00
rillig
8c03e5a125 pkgtools/url2pkg: strip leading v from distfile version number 2019-09-12 05:45:34 +00:00
rillig
9afe00458e pkgtools/url2pkg: update to 2.35
Changes since 2.34:

* Python packages get a PKGNAME variable containing PYPKGPREFIX
* Refactoring: merged duplicate code for reading dependencies
2019-09-12 04:18:28 +00:00
rillig
70d0f3ed60 pkgtools/url2pkg: split Perl package code into separate subs 2019-09-12 02:49:33 +00:00
rillig
46c30b6289 pkgtools/url2pkg: discover test cases automatically 2019-09-12 02:35:07 +00:00
rillig
5cc81c5b85 pkgtools/url2pkg: update to 2.34
Changes since 2.33:

* code cleanup in MakeMaker.pm
* don't create a PLIST for Perl packages

* allow Python dependencies from setup.py to use spaces around >=
* properly indented Python code according to PEP 8
* added mock for setuptools.find_package
* only try to migrate a package from GitHub to PyPI if it is really
  a Python package on GitHub
2019-09-11 05:25:55 +00:00
nia
83beeda6cf pkg_select: Add networking libs on SunOS 2019-09-09 10:03:21 +00:00
maya
45f14a7175 url2pkg 2.33: fix cargo packaging typo.
We don't have a third match to the regex.
2019-09-09 08:08:02 +00:00
rillig
38f0aa6a18 pkgtools/pkglint: update to 5.7.23
Changes since 5.7.22:

* Added a warning for lines that look empty but are actually follow-up
  lines from a previous line.

* Added notes for unusual placement of the continuation backslash. It
  should always be preceded by a single space or tab, or be in column
  73.

* Improved check for needlessly complicated !empty(PKGPATH:Mcat/pkg)
  that is transformed into the simpler ${PKGPATH} == cat/pkg, even if
  the package name contains hyphens, dots, plus or slashes.

* Added check for the _VARGROUPS section since that section contains
  many redundancies that can easily be checked. For example, in
  mk/compiler/gcc.mk the _VARGROUPS section is 67 lines long and
  contains far more than 100 variables. It's tedious to manually check
  this file for internal consistency. That's better left to pkglint.

* The empty variable is no longer flagged as "used but not defined".
  It appears in expressions like ${:Ustring}.

* When --source is combined with --explain, don't unnecessarily
  repeat the source code for a single line if there are several
  diagnostics. Instead, even omit the empty line between the diagnostics
  for the same line.
2019-09-08 22:47:47 +00:00
nia
dcb43af864 pkg: needs pthreads.
fixes build on netbsd-9.
2019-09-07 23:30:45 +00:00
nia
6610a0da5e pkg_select: remove Werror, helps building on netbsd-current 2019-09-07 23:18:57 +00:00
adam
435af01a8b Changed PYTHON_VERSIONS_INCOMPATIBLE to PYTHON_VERSIONS_ACCEPTED; needed for future Python 3.8 2019-09-02 13:19:35 +00:00
nia
4061210488 Switch packages using GLUT to FreeGLUT.
Start building FreeGLUT with GLUT compatibility on.

- GLUT's maintainance state is much worse than FreeGLUT's, with no
  substanital commits since 2011.
- GLUT can no longer be consider a core component of Mesa or X11.
- Nobody except us seems to be using it...

Other vendors still shipping GLUT:
- GoboLinux, T2 SDE, PLD Linux

Revbump packages using GLUT or freeglut by default.
2019-08-30 17:01:32 +00:00
nia
5ba9a08f9e x11-links-1.30: Add xproxymngproto.pc 2019-08-29 10:59:00 +00:00
gdt
e0be187af7 pkgtools/pkg_rolling-replace: Update to 0.24.8
Be more tolerant of not finding PKGPATH, and basically attempt to skip
the package rather than treating it as a fatal error.  (This was a
stray edit that I've been running with for a while.)
2019-08-27 19:30:36 +00:00
markd
361a8eacce texlive2pkg: update to 1.7
add option to derive doc tarball path from the base package path.
allow tarball path to be a url.
2019-08-27 06:21:18 +00:00
rillig
00b8c55b94 pkgtools/pkglint: update to 5.7.22
Changes since 5.7.21:

* The files from wip/mk do not belong to the main pkgsrc infrastructure.
  Therefore, when loading the package Makefile to look for defined but
  unused variables, parsing doesn't stop in these files.
2019-08-25 21:47:11 +00:00
rillig
397e7ee2b6 pkgtools/pkglint: update to 5.7.22
Changes since 5.7.21:

* The files from wip/mk do not belong to the main pkgsrc infrastructure.
  Therefore, when loading the package Makefile to look for defined but
  unused variables, parsing doesn't stop in these files.
2019-08-25 21:44:37 +00:00
rjs
f57dc4ec7f x11-links-1.29: Add libxshmfence. 2019-08-23 15:18:39 +00:00
nia
9a362856a2 x11-links-1.28: Add dri3proto 2019-08-22 13:01:14 +00:00
nia
772c540667 x11-links-1.27: Add libXfont2 2019-08-22 12:35:37 +00:00
rillig
269a5efe8e pkgtools/pkglint: update to 5.7.21
Changes since 5.7.20:

* PKG_OPTIONS that are handled using patterns are correctly identified.

* Simple R packages should follow the canonical variable order.

* Fixed some edge cases for aligning variable assignments.

* Improved detection of allowed values for USE_LANGUAGES.
2019-08-21 16:45:16 +00:00
hauke
6febf13e03 Bump the _other_ version, since the sources have changed. 2019-08-21 13:22:10 +00:00
hauke
29ff1771b9 Properly preserve patch comments when working with a readonly pkgsrc tree.
Do not prefix an absolute path argument with $cwd.
Declare a handful of variables, and 'use warnings'.

Fixes PR pkg/54485
2019-08-21 13:00:06 +00:00
nia
3df6869755 x11-links-1.26: Add libsync.h from libdrm 2019-08-21 11:51:46 +00:00
nia
dda183b23d x11-links-1.25: Add xcb-dri3.pc 2019-08-21 09:48:41 +00:00
rillig
a125668415 pkgtools/url2pkg: rewrite regular expression to avoid confusing mcedit 2019-08-18 21:04:37 +00:00
rillig
22c2dd5000 pkgtools/url2pkg: add a few more tests 2019-08-18 18:02:48 +00:00
rillig
b03b08976f pkgtools/url2pkg: document and clean up the code 2019-08-18 17:34:13 +00:00
rillig
3cd16da354 pkgtools/url2pkg: rename helper functions 2019-08-18 16:18:04 +00:00
rillig
d4af333aea pkgtools/url2pkg: migrate from GitHub to PyPI if necessary
Suggested by gdt@ via private mail.
2019-08-18 16:09:01 +00:00