Commit Graph

5785 Commits

Author SHA1 Message Date
sthen
4648b5acd5 oops, revert local diffs from my test build tree 2021-02-19 23:14:45 +00:00
sthen
248932be74 switch MODPY_BIN_SUFFIX to -2 for py2 and (blank) for py3
switch ports using command-line tools from py-sphinx that don't need a
py2 version of it to py3-sphinx
2021-02-19 23:13:00 +00:00
sthen
b2fe97ef21 add uid and rcscript for the daemon for icinga director; mention in pkg-readme 2021-02-10 15:35:38 +00:00
espie
c77c37126d readlink might give you a relative link, which you then have to finish
resolving yourself (fixes update-patches in japanese/onew)
2021-02-09 17:34:40 +00:00
kn
348ac5410b Remove ftp.cs.tu-berlin.de (NXDOMAIN) 2021-02-07 22:02:04 +00:00
sthen
a7e057a338 Change COMMENT for debug packages to just use PKGSTEM not FULLPKGNAME.
In some cases (mostly with insane distnames from local test builds, but
conceivably also possible with long combinations of flavours) they can
exceed the character limit. Discussed with espie@ who pointed out that
plist_db doesn't include entries for debug packages.

From Mikolaj Kucharski.
2021-02-06 15:24:48 +00:00
kn
05532e3bec Disable _hitch after security/hitch removal
Reminder from Matthias Schmidt, thanks.
2021-02-01 12:41:37 +00:00
sthen
39b4146d34 mention the port dir (devel/gettext,-tools) not just "gettext-tools" in
the poisoned scripts; easier to cut-and-paste
2021-01-31 21:18:23 +00:00
rsadowski
c4d5ada820 Remove Qt4 checks
We no longer want to import "new" Qt4 applicatios.
2021-01-30 08:01:10 +00:00
sthen
3613cd7af4 Change ccache handling from adding to BUILD_DEPENDS to doing an ".if exists"
check. Newer ccache uses cmake making it impractical to break the loop by
just disabling ccache for the individual ports on the way to building ccache.
2021-01-24 14:38:34 +00:00
kettenis
6716b674c9 Add powerpc64 to GCC49_ARCHS.
ok jasper@
2021-01-18 19:32:50 +00:00
sthen
c4cf25a65c add 863 for mail/dcc 2021-01-17 21:27:04 +00:00
abieber
1018dcc930 Teach go.port.mk and Go.pm how to escape modules that contain uppercase
letters.

OK kn, make magic from espie/naddy, feedback from afresh1 and sthen.
2021-01-16 23:38:13 +00:00
kn
9196604f15 Support .rpm in EXTRACT_CASES
Less special cases in (rare) ports, pluse one can use EXTRACT_FILES as usual now.

OK espie robert
2021-01-10 22:29:33 +00:00
sthen
0f8fca3a21 mips64el moved to clang, update ports arch-defines to match. from Brad. 2020-12-22 12:53:42 +00:00
sthen
ca096aa34b poison some py-related things which are easy to get wrong:
MODPY_ADJFILES (should be MODPY_ADJ_FILES)
MODPY_PYPI (should be MODPY_PI)
2020-12-15 14:52:27 +00:00
rsadowski
87a069bf2f Remove kde3/kde4 and phonon check(s)
OK sthen
2020-12-12 15:12:07 +00:00
rsadowski
5f64f2567d Disable _kdesud and _kdm from KDE3/4 2020-12-12 07:30:48 +00:00
paco
3bd9ffa229 prevent error on modgo-gen-modules when MODGO_MODULES or MODGO_MODFILES
are not defined

ok abieber@
2020-12-08 09:03:29 +00:00
sthen
681eeb9d7b Use strip -d, not just plain "strip", when removing debug symbols from
binaries for packages using DEBUG_PACKAGES. This avoids the current
situation where a backtrace is useless (function names all "??") if
a package was built with DEBUG_PACKAGES but the debug-foo package is
not installed.  ok espie@ pirofti@
2020-12-04 15:04:52 +00:00
sthen
c6ef3bc530 +blackbox_exporter 2020-11-21 12:26:50 +00:00
sthen
bf68142e73 switch py-tagpy to py3-only and remove its only py2-consumer audio/zeya
(a ten year old network daemon, no longer maintained in ports or upstream;
distfiles were fetched from debian who removed it from their packaging ~5
years ago). py-tagpy is one of the few consumers of boost's py2 library.
ok jca
2020-11-14 11:57:56 +00:00
ajacoutot
5d8191de37 Comment the _colord user/group. 2020-11-14 11:07:10 +00:00
danj
456f70f468 Comment _wiresep
net/wiresep has been removed in June after wg(4) arrival.
2020-11-13 23:31:37 +00:00
espie
79d673f522 by default, only run pkg-locatedb for "new" files, so that people will
actually run it by default

okay sthen@
2020-11-08 17:01:52 +00:00
espie
c52fecbcac left a bit of dead code while refactoring 2020-11-07 10:54:22 +00:00
solene
b89bf0335d + _i2p for net/i2p 2020-11-04 19:15:30 +00:00
abieber
0a093b7690 reserve 860 for net/dendrite 2020-10-22 13:52:57 +00:00
paco
fa9826f854 new target modgo-gen-modules for lang/go
It generates the lists for MODGO_MODULES and MODGO_MODFILES
Useful to update go ports.

ok abieber@
2020-10-09 13:23:51 +00:00
jasper
aeb6c4582b mop up after apache-activemq removal 2020-09-12 15:33:51 +00:00
abieber
9b54d33cad reserve 859 for net/miniflux 2020-09-08 22:35:04 +00:00
rsadowski
fb3931fb4c Rework multimedia/phonon multimedia/phonon-backend
- Remove infrastructure/bin/portcheck bits.
2020-08-20 17:58:57 +00:00
solene
6e9c7f648b Comment _ajaxterm user after www/ajaxterm removal
Pointed out by danj@
2020-08-20 13:31:17 +00:00
sthen
54a13723b7 bump SYSTEM_VERSION on clang archs, to trigger pkg_add to update
everything so that people updating from subsequent snapshots won't
have old clang 8-compiled packages lying around.

also will work around the problem where packages don't have WANTLIB
in sync, in some cases these have an unlisted dependency on libc++
which won't have been updated as needed (found by matthieu@).

ok ajacoutot@
2020-08-13 17:08:45 +00:00
bcallah
475f912824 Reserve 858 for _purritobin. Forgot to do this on import.
Spotted by naddy@, thanks.
2020-08-13 14:02:18 +00:00
jca
04197b1fe1 Add powerpc64 to LLVM_ARCHS
from Brad
2020-08-11 08:27:24 +00:00
kettenis
1e4c58a117 Add support for powerpc64.
ok naddy@, jsg@
2020-07-12 07:59:48 +00:00
abieber
096e6c6ae4 Teach 'portgen go' how to re-use existing ports. Also remove debug lines
that made it in.

OK afresh1@
2020-07-11 22:26:01 +00:00
espie
9a3fd2f8c5 do NOT check license issues for !current packages, because we don't care
that much, and more importantly, because there may be gaps in the database
for various reasons
2020-07-04 18:29:21 +00:00
espie
b1b8421b9e seems that other people do not use this...
get rid of cdrom_okay
2020-07-04 16:54:22 +00:00
espie
877acdbb0a thinko 2020-07-04 16:53:42 +00:00
sthen
6992f5117a update search.cpan.org -> metacpan.org, from cwen@ in 2018,
similar diff from Yozo TODA. bumps to follow.
2020-07-03 21:42:55 +00:00
sthen
75244c1bf6 portgen: unbreak PyPI 2020-07-02 21:07:51 +00:00
espie
24e163809a register-plist is a logical place to be able to save stuff elsewhere,
set up to be able to save manpages
2020-06-28 10:58:25 +00:00
abieber
273b7fe1fe Remove extra shell.
Fix from espie@
2020-06-26 23:26:04 +00:00
espie
ada8dbb7b9 explain why FAKE_TREE_OWNER is not a regular option 2020-06-26 14:47:05 +00:00
espie
2519958a27 add code to write conflict-related info in the cookie, so that if it changes
we rerun pkglocate
also check the pkglocate cookie vs the fake cookie, so that we rerun things
if somehow fake was rerun without cleaning things first (unlikely, but still)
2020-06-26 13:00:07 +00:00
espie
75f4ce503e manage a pkglocate_cookie, so that pkglocate is not run every time.
Note the TODOs, there's some code to be written to actuall re-run
pkglocate when the conflicts change.
2020-06-26 12:00:27 +00:00
espie
5918cd90f0 add a PKGLOCATE_COOKIE that will be filled in by update-plist
turns out update-plist already groks -D thanks to inheriting from
common code!
2020-06-26 11:51:16 +00:00
espie
a0db38ea1e nit, help debug 2020-06-26 11:02:32 +00:00
abieber
970e853fd4 Add the ability to follow redirected dependencies.
- De-duplicate our .mod and .zip files.
- Move chdir to a child process.
- Break MODGO_MODULES and MODGO_MODFILES values into their own lines
  for easier reading.
2020-06-25 13:57:45 +00:00
espie
c5cb81bbcb remove the switch, use a map name -> class
this makes it easier to add languages, and also provides more decent
error reports in case of a bad language

okay afresh1@
2020-06-22 12:51:12 +00:00
kn
26fdc586a0 Liste failed patches at the end of "make patch"
Updating bigger ports with lots of patches, combing the target's output
for failed hunks can be cumbersome;  print failed patch files one per line
iff there are any to provide immediate feedback on what wrong and where.

"definitely wanted" landry
Style nits, OK espie
2020-06-16 13:41:42 +00:00
espie
81880cb49e refactor, no functional change. Start grouping and naming options 2020-06-13 09:14:14 +00:00
landry
43bd00b16b add uid/gid 857 for _web2ldap user 2020-06-12 11:27:08 +00:00
espie
111c80ba34 add a -s snap option that will always write plist into a separate
directory if no error
2020-06-10 07:42:39 +00:00
espie
9951bc2039 I forgot about the mogrified part, respect -n too
tweak the message to show that nothing got written
2020-06-10 06:54:29 +00:00
espie
41099bc700 add option -n, as it's the simplest one to do
(do all the checks, but don't write a thing. useful for bulks with test
changes that should be reverted later)
2020-06-09 21:00:33 +00:00
espie
84a844882e add REGISTER_PLIST_OPTS
to be used to allow various things
2020-06-09 11:01:08 +00:00
paco
2c326f8b33 add FIX_CLEANUP_PERMISSIONS and enable it by default on go.port.mk when
using MODGO_MODNAME.

This is needed to work around this issue:
https://github.com/golang/go/issues/27455

which makes `make clean` because of the restrictive permissions.

input and corrections from sthen@ and jca@
ok sthen@ jca@ espie@
2020-06-08 13:16:26 +00:00
espie
5c9ecb1ee7 fix some PORTS_PRIVSEP tidbits:
UPDATE_COOKIES and BULK_COOKIES are not generated by dpb, but if you
build stuff manually and use dpb, they can happen, and you will see error
messages in dpb logs (trying to remove them as _pbuild), so give them
to _pbuild/tweak fix-extract-permissions accordingly.

Also fix an old feature where you can force UPDATE_COOKIES into WRKDIR
which got broken a long time ago.

Thanks to solene@ for tests
2020-06-01 08:41:36 +00:00
espie
4351660abb work a bit harder so that pkgpaths do not gain a bogus info by
autovivification

this allows to use is_stub once again
2020-05-31 19:24:26 +00:00
feinerer
b388e6927e Reserve uid/gid 855 for _repro and 856 for _return
OK sthen@
2020-05-29 20:52:28 +00:00
kn
487d2b660a Make make modifiers work in verbose-show
OK espie
2020-05-29 19:38:09 +00:00
espie
48ad98e6a8 revert temporarily
there's a bug elsewhere (autovivification of $w->{info}{BUILD_PACKAGES})
that I need to track down  that results in $w->{info} being defined but
NOT a proper object.

dpb errors out at end-of-LISTING in case of a parse error in any Makefile.

solene@ ran into this a few days ago, probably some other people, and
finally I met the bug today. Ouchie. sorry about that.
2020-05-28 20:53:40 +00:00
espie
53c96ec8e1 neuter strip if DEBUG_PACKAGES is set
tweak the path for copy-debug-info  so we don't accidentally neuter
THAT strip as well.

this helps getting cmake/qmake do the right thing without needing to
alter strip behavior.
2020-05-20 12:57:10 +00:00
kn
c65b8a6855 Add EXTRACT_FILES
Allow extraction of specific files only rather than all from distfile.

OK sthen espie
2020-05-18 18:18:33 +00:00
abieber
8921d9c50b Remove PKGNAME, setting DISTNAME is enough.
OK ajacoutot@
2020-05-17 14:33:04 +00:00
sthen
3e3ce667c1 portgen: where BDEP/RDEP are equal, write 'BUILD_DEPENDS=${RUN_DEPENDS}'
rather than 'RUN_DEPENDS=${BUILD_DEPENDS}' which is easily polluted by
compression utilities, ccache if used etc. Problem spotted by aja@ in a
port submission of mine where the skeleton was made by portgen.

While there, prefer setting 'TEST_DEPENDS=${RUN_DEPENDS}' rather than
to '${BUILD_DEPENDS}' if RDEP/BDEP are equal.

ok afresh1@
2020-05-16 21:44:23 +00:00
abieber
9e0580770b Teach portgen how to speak Go!
With this a port can be easily generated for Go applications that support Go
modules (there will be a go.mod file in the root of the project).

For example: https://github.com/jrick/domain/blob/master/go.mod

The mod file lists "github.com/jrick/domain" as the module name, so a portgen
command to build the above tool would be:

  portgen go github.com/jrick/domain

OK afresh1@ kmos@
2020-05-15 01:32:48 +00:00
kn
4f01408214 Default to python3 FLAVOR if possible
PyPI projects that already list multiple supported Python versions cause
portgen(1) to generate a flavoured port; of leaving FLAVOR emtpy, opt for
the highest available version.

This makes it use FLAVOR?=python3 insteaf of FLAVOR?= (empty) if any
sypport higher than Python 2 is listed.

Note that PyPI projects listing either only one sypported version or none
at all are not effected by this diff.

OK afresh1 kmos
2020-04-30 23:04:48 +00:00
schwarze
77ef99ead5 Delete mail/akpop3d.
Alexei dot Malinin at mail dot ru reported a compiler warning that,
in my opinion, probably indicates a security vulnerability, but due
to an incomplete description of the affected feature in the
documentation, it is unclear how it should be fixed.  The program
appears to be sloppily written, sloppily documented, and abandoned
upstream 15 years ago.

OK ajacoutot@ for deleting it.
2020-04-29 15:25:45 +00:00
danj
bcb2c51274 Comment ejabberd entry as it was removed on March 16th 2020-04-27 20:25:39 +00:00
danj
30a959d5e9 Remove jabberd removal leftovers 2020-04-27 20:23:00 +00:00
espie
a259946345 dist cleaning should match make fetch, namely also remove any left-over
.part files

as noticed by f.holop...
2020-04-20 11:49:57 +00:00
afresh1
aaf8c0f4be Support exact requirements in OpenBSD::PortGen::Ruby
Although I couldn't find a definitive guide to version specs,
I did find an example showing this seems to be how RubyGems work.

From Thomas L. <tom.longshine () web ! de>
2020-04-17 02:14:01 +00:00
espie
95e3a02abb separate the debuginfo property from its use to zap DEBUG_PACKAGES
out of existence: arch-defines.mk MUST be included very early on, so that
modules can use it to decide on behavior, BUT modules are allowed to set
DEBUG_PACKAGES without worrying about it, and so bsd.port.arch.mk must be
the place that zaps!

Discovered by sthen@, because xfce4.port.mk would start churning out
DEBUG_PACKAGES on every architecture.

tested by naddy@  because I wasn't sure I didn't miss something non obvious.
2020-04-16 19:33:29 +00:00
espie
63023c8241 missing piece for setting LOGDIR 2020-04-15 16:18:48 +00:00
sthen
1b6958f340 enable debug packages on aarch64; ok kmos@ jca@, "go ahead" phessler@
They do result in a bulk package build taking about a third longer, but
the bulk build machines are significantly faster than the machines most
people are running the produced packages on, so it's a trade-off: a bit
of pain for builders vs a lot of pain for users wanting to debug things
on their normal hardware.
2020-04-15 14:25:57 +00:00
sthen
5030bccdd4 bump _SYSTEM_VERSION for arm and aarch64, the ABI was changed in February
to address a speculative execution issue and old binaries can no longer be used.
ok phessler@
2020-04-15 13:45:02 +00:00
kn
0fd501de7b Build and package Mumble server component (murmur)
Simple MULTI_PACKAGES addition, no FLAVOR.

Diff from Thomas L. - thanks!
Tweaks and tests from me
"pkg_add murmur && rcctl start murmurd" just works on amd64 and sparc64
2020-04-13 13:18:36 +00:00
espie
a6cd76d399 fix build-debug-info so that it works with MULTI_PACKAGES with distinct
PREFIX.

Specifically:
- stop tweaking PREFIX for build-debug-info
- have build-debug-info use -B instead
- generate Makefile with full paths
- tweak the sequence in bsd.port.mk to NOT pass FAKE_SETUP around

This fixes got
2020-04-08 09:15:39 +00:00
espie
4f6822b7ff constrain EXTRACT_ONLY to be an actual distfile, so that we can be sure
it was checksummed.
(noticed on a port where EXTRACT_ONLY was a full file name and no longer
in distinfo, but still in DISTDIR)

thx naddy@ for making sure it didn't break in a bulk
2020-04-08 09:10:00 +00:00
espie
a8a6ebd059 forgotten in refactor: next -> return
run into by rsadowski@
2020-04-08 08:01:36 +00:00
sthen
6fc9527ff9 reserve 853 for sniproxy 2020-04-07 21:04:03 +00:00
espie
d1268b4574 produce a better error in case a distinfo file can't be read
wouldn't have stumped rsadowski@ for a few hours ;)
2020-04-07 16:02:04 +00:00
espie
abfd509eeb fix info queue... missed commit 2020-04-07 15:18:33 +00:00
ajacoutot
dda367647f Unbreak net/inetsim:
Error: newgroup _inetsim: not registered in ports/infrastructure/db/user.list
Error: newuser _inetsim: not registered in ports/infrastructure/db/user.list
2020-04-07 10:54:53 +00:00
espie
cb9902bbed use a temporary file name for Makefile so that if build-debug-info
fails, then bsd.port.mk doesn't have an existing target.
2020-04-07 10:45:20 +00:00
espie
6228c0a5a6 fix typo 2020-04-06 14:43:57 +00:00
espie
4f32234919 work-around current make limitation
fixes abieber's issue
2020-04-06 14:32:14 +00:00
sthen
3db8e8f070 Adjust arch-defines.mk for PowerPC switch to Clang/LLVM as default compiler.
From Brad, ok jca cwen.
2020-04-04 19:35:44 +00:00
espie
8b01b2d857 control socket: info queue
shows the 50 (tweakable?) first entries in the queue, with the weights
that resulted in that ordering
2020-04-04 16:45:33 +00:00
espie
ed91f81c7b use is_stub consistently
rename cores to info cores in preparation for other debug tidbits
fix help
add 'stub' to be tested
2020-04-04 08:40:36 +00:00
espie
5ecfac8bcf don't use mktemp, we don't really need the random name, and it's harder
to get decent permissions
noticed by kili@
2020-03-31 21:18:33 +00:00
espie
6fcfc4969e new command (to be specified more cleanly): rescan
for now it rescans "stubbed" ports in case you did change them (or if
they were stubbed because of missing dependencies, etc)

Could become something else/more powerful eventually
2020-03-31 19:06:44 +00:00
espie
c1787a7491 use abstraction 2020-03-31 19:05:45 +00:00
espie
29cc19fdac fix a typo on printing
add a debug command (cores) that shows explicitly each core known by
the core system, including idle cores (available) and "behind the scene"
stuff (ssh masters)
2020-03-31 11:13:14 +00:00
espie
a380cacf7b fix addhost... the init stuff was not magical enough, I need to explicitly
call init_core on the newly created core
2020-03-31 11:12:15 +00:00
espie
9c342b8b85 refactor so that I can run init_core independently on new cores 2020-03-31 11:11:36 +00:00
espie
2f332e01a7 oops, forgot CACHE_REPO in the committed version.
pointed out by our semi-anonymous friend (Lucas who ?)
2020-03-29 15:06:05 +00:00
espie
dfcb157ef7 /tmp/cvseSzodp 2020-03-29 12:11:45 +00:00
espie
5ae9691a7e use dwz to shrink debug packages by default
okay sthen, landry
2020-03-26 14:54:17 +00:00
espie
fb231dbdcd prepare for using dwz, but do not use it yet 2020-03-24 17:33:43 +00:00
espie
ddec8f851d activate DPB_LOCKNAME 2020-03-24 15:01:04 +00:00
jca
010091bbff Refresh MASTER_SITE_SAVANNAH
- mirrors.zerg.biz is no more (points to 127.0.0.1), drop it.
- savannah.c3sl.ufpr.br stopped their FTP service, use
ftp://ftp.cc.uoc.gr
- ftp.twaren.net replies 403 errors when fetching with ftp(1).
Move to mirror.ossplanet.net which is also in .tw and supports https
- also move mirror.csclub.uwaterloo.ca and nongnu.askapache.com to https
2020-03-23 19:57:58 +00:00
espie
7b701aa967 prepare for supporting (very limited) lockname tweaks
specifically, make sure dpb can't get confused if the same fullpkgname
points to two different locks (by stubbing/erroring out)

Clean up the code a bit so it shows up in equiv.log and as broken (so in
engine.log)

bsd.port.mk bits to test later (and document because this has lots of
caveats and should only be used under specific circumstances)
2020-03-23 19:22:22 +00:00
cwen
591d098553 Makefile.template: add a hook to remove MS-DOS line endings in files
needing patches.

Proposed by and OK sthen@
2020-03-22 17:18:01 +00:00
cwen
3583d94ca3 portcheck: add a check for MS-DOS line endings in patches.
Proposed by and OK sthen@
2020-03-22 17:16:30 +00:00
abieber
15bdfcedb2 rereserve 505 for -wiresep 2020-03-15 22:05:08 +00:00
abieber
f63083ccce reserve 851 for _whatsapp 2020-03-14 16:18:59 +00:00
naddy
b184bbfa73 Update MASTER_SITE_OSDN_JP to a list of mirrors that support https, resolve
to different IP addresses, are geographically distributed, and support IPv6
(except for the primary one).  ok jca@
2020-03-12 20:46:54 +00:00
espie
5a484d1b13 let's use a proper mktemp idiom for makesum 2020-03-11 16:46:34 +00:00
sthen
038ef37cc9 reserve 850 for snare 2020-03-11 12:22:51 +00:00
espie
ea2d970f94 generate distinfo.new then mv it to distinfo, instead of the other way
around, so that you can ^C an erroneous makesum that wouldn't change
anything before the end.
2020-03-10 17:15:19 +00:00
landry
ab424ab79c reserve uid 849 for _synapse user, reminded by Renaud Allard 2020-03-09 08:17:31 +00:00
sthen
8a28ff1600 reserve 848 for _loki 2020-03-07 10:01:32 +00:00
espie
c6d476f9b3 kill the other part of flavored SEPARATE_BUILDs that sthen missed 2020-03-06 15:21:25 +00:00
sthen
ece4503448 update MASTER_SITE_ISC, s/ftp/downloads/ 2020-03-06 12:00:17 +00:00
giovanni
040d338a3b reorganize MASTER_SITE_APACHE
ok sthen@
2020-03-06 11:03:57 +00:00
sthen
56727c35c7 bsd.port.mk: remove remnant of old SEPARATE_BUILD=flavored experiment.
Use FULLPKGNAME rather than just PKGNAME in the lockfile, allowing manual
builds to be run with multiple flavours in parallel.  ok espie@
2020-03-06 10:49:00 +00:00
espie
c2837d28c1 way better with correct precedences 2020-02-27 16:06:06 +00:00
espie
2d1ef323ad if a distfile is incomplete, some parts will be removed
I used to have "site" always set, but it takes space for broken files,
so I removed it, and it breaks in case distfiles are incomplete.

So, just make it possible for some things to go missing, and properly test
for them later.

Noticed by jca@
2020-02-27 15:53:35 +00:00
espie
e2a82816d0 much crisper signature messages.
- add a parameter "full" so that we don't show version mismatches twice
- remove host name from information, since the order is the same as the header
line.
- beautify by doing a line feed after banner and indent by two spaces so it
tends to fit on the line
2020-02-27 13:50:13 +00:00
espie
147744929a fix initialization order. Reporter MUST be setup before running Core::Init,
as the library checker in Signature uses myprint to show errors.
2020-02-27 11:48:17 +00:00
espie
52e4bd6f54 show control socket name (without path) on the main line, along with a shorter
"elapsed" message
2020-02-27 11:37:53 +00:00
espie
201e8ea072 I've had this in my tree for a while, let bsd.port.mk sanitize BUILD_DEPENDS
values for us, and use the cleaned up value for noconfigurejunk related
to automake (we can use internal variables in bsd.port.mk, obviously)
2020-02-26 15:34:48 +00:00
espie
5c6d5dbbc6 "poison" passing SUBDIR/SUBDIRLIST on the command line. It should be
in the environment like FLAVOR, SUBPACKAGE, as it needs to be unset in
recursion.

(fixed known users first. If I missed any, fix is easy)
2020-02-26 15:32:45 +00:00
espie
f06a675c92 fix SUBDIR handling in portcheck 2020-02-26 15:28:10 +00:00
espie
2497dfc0ac write a proper pipe handling for running make, with actual error handling
return the full output of make as an array each time.

mainly done because SUBDIR should be passed in the environment, otherwise
some really funky things happen (ask kn@)

naddy@ approves the direction
2020-02-26 15:25:47 +00:00
espie
01ce559a97 don't rerun build-debug-info all the time, as discussed with sthen@ and
pirofti@
2020-02-20 16:48:03 +00:00
espie
9706a26a55 allow nodebug to do its work 2020-02-20 16:41:16 +00:00
espie
424755b857 copy "no debug" over 2020-02-20 16:33:45 +00:00
sthen
99ebea5310 nicer "Package(s) would be named" text that covers both singular+plural
without sounding awkward, from espie@
2020-02-19 17:53:18 +00:00
sthen
c3d0163748 Show PKGNAMES before importing, this might prevent some imports done with
bogus names.  ok tb@
2020-02-18 21:55:49 +00:00
paco
7b27801ab3 fix cvs error on the last step of portimport(1).
Thanks tb@ and stsp@ for the help

ok tb@, kmos@
2020-02-18 15:26:48 +00:00
kmos
1dadf56584 Increase threshold for marking a job "frozen" from 10 seconds to 45 seconds
"I would be happy with that" sthen@
ok espie@
2020-02-14 18:51:46 +00:00
cwen
2f3c95f158 bsd.port.mk: remove COMPILER_VERSION from MAKE_ENV, it is not needed
anymore.

As a side effect, it unbreaks multimedia/mkvtoolnix on !clang archs.

Proposed by jca@, bulk tested by naddy@ on amd64 (thanks again!), and
me on macppc.

OK jca@
2020-02-14 13:06:29 +00:00
sthen
f69d1135ed be smarter about GH_TAGNAME; when generating the default DISTNAME, only
strip a leading "v" when it's followed by what looks like a version number,
also have it handle a few other common names seen in ports. likewise when
stripping 'v' from the default WRKDIST, also allow 'V', but only if
followed by digits (which seems a better match to what github are doing).

update the few ports which _require_ updates to match this change.

been through a bulk on i386 (plus I've diffed "make dump-vars" run in
in all ports having GH_TAGNAME before+after applying the patch), ok jca
2020-02-13 22:19:35 +00:00
espie
602b0245b9 XXX comment something that's not obvious at all in retrospect.
the chicken&egg issue was clear when I wrote the code, but it's easy
to lose track
2020-01-31 12:18:14 +00:00
espie
0c933445d6 be slightly more stringent in checks. In particular, don't allow
PORTSDIR to be the default if we're called from bsd.port.mk
2020-01-30 19:51:56 +00:00
ajacoutot
e463a0c2ae Prepend https://download.gnome.org/ to MASTER_SITE_GNOME. 2020-01-26 15:47:59 +00:00
sthen
4a3b12fca8 recognize .otb (OpenType bitmap) as a valid font suffix. ok espie 2020-01-26 13:07:07 +00:00
sthen
e170101a55 set BatchMode=yes on DPB ssh connections. ok espie 2020-01-26 13:02:32 +00:00
espie
764605fcee pass WRKOBJDIR thru so that pkg_create can holler on some mistakes 2020-01-26 12:51:47 +00:00
bluhm
fc99496661 Implement an rc script for iperf3 that starts the server as a daemon.
Add the _iperf3 user for this process.
input kn@ ajacoutot@; OK sthen@ jca@
2020-01-23 00:36:56 +00:00
espie
dde9bbcb7d repair call to unlock in the "dpb run as root" case.
just use make_args to run make transparently
2020-01-18 10:28:25 +00:00
espie
0099224d2e fix logic in the case where the proot is straight under /
problem noticed by Xiyue Deng
2019-12-29 10:35:23 +00:00
sthen
d57d24ed23 Catch up with the documentation that espie@ recently added to
bsd.port.mk(5) and actually make LLD_EMUL empty if the linker is not
ld.lld. Use a simpler variable-name-based lookup table rather than
string manipulation in a loop. Diff was worked out with espie a
couple of weeks ago.
2019-12-20 20:00:30 +00:00
sthen
6b8d182a2c add a reminder to commit db/user.list if pkg/P* contains tags to add users/groups 2019-12-20 19:52:26 +00:00
espie
16c8437688 make DEBUG_PACKAGES slightly less confusing for modules 2019-12-16 09:18:27 +00:00
espie
f56ed279b2 strip and objcopy do not like bad permissions. Moreover, they will silently
drop a setuid bit AND not error out when they can't do stuff.

Fix the perms pre-emptively, so that aja@ can DEBUG_PACKAGES login_krb5

There are bugs to fix in binutils...!!!
2019-12-15 15:28:44 +00:00
afresh1
e49022c4a4 Centralize multi-value variable formatting in portgen(1) 2019-12-15 00:57:49 +00:00
afresh1
7f6e61979c Look for existing ports by stem in portgen
Also caches the sqlports connection and query

OK abeiber@
2019-12-15 00:18:04 +00:00
afresh1
ed6197337f Have portgen(1) set FIX_EXTRACT_PERMISSIONS if necessary
Idea and initial patch from cwen@
OK abeiber@
2019-12-15 00:15:30 +00:00
espie
df22749e9b This is non obvious enough, document 2019-12-14 10:58:54 +00:00
espie
20e9bc753e much better with the actual test... I'm a moron 2019-12-14 09:56:04 +00:00
espie
d8154adcb8 fold some of the common logic in write_rule
- do the dir check late, so we don't create .debug dirs if not needed.
- add an emptyness check, so that we can warn if we produce an empty
debug package, and advise to tweak DEBUG_PACKAGES manually if there are
several subpackages involved
2019-12-13 10:17:44 +00:00
espie
353a9aa5c7 buglet: directory info should be per-subpackage
explain why link handling has to be global
2019-12-13 10:01:55 +00:00
espie
479214b7b0 add INSTALL_DEBUG_PACKAGES user knob now that this specific configuration
works

(to be documented once I finish pkg_delete -a)
2019-12-08 11:51:56 +00:00
espie
a91bd3601e shorten the default message for copying.
The only weird stuff is for links, so keep the full message there
2019-12-08 10:33:19 +00:00
espie
3368c98d52 have cryptic message be explicit about what locate db we're talking about 2019-12-06 13:40:46 +00:00
sthen
206b5fa7b1 -.if !defined(MAKE_JOBS) && ${DPB_PROPERTIES:Mparallel})
+.if !defined(MAKE_JOBS) && ${DPB_PROPERTIES:Mparallel}
2019-12-05 22:07:36 +00:00
sthen
e506a46e80 Treat DPB_PROPERTIES=parallel as a hint that a port is parallel-safe
for use in regular builds too; if that is present in a port, use
${PARALLEL_MAKE_JOBS} jobs in the build, defaulting to hw.ncpuonline.

Adjust PARALLEL_BUILD=No, this originally seemed intended to be a hint
that a port could NOT handle a parallel build, but current usage is
"don't pass make -jXX because this port has its own way to handle things",
instead change this to a slightly more understandable PARALLEL_MAKE_FLAGS
variable. This defaults to -j${PARALLEL_MAKE_JOBS} but can be reset for
build system requirements as needed (java/libreoffice have their own
mechanism) and is added automatically to MAKE_FLAGS where a build uses
>1 concurrent job.

Based on a diff from / ok espie@ - the default value may want revising
as hw.ncpuonline jobs will be too many in some cases (e.g. machines with
many cores or low RAM), but committing at this stage to avoid further
out-of-tree bikeshedding. If you need to restrict to a lower number of
jobs, set e.g. PARALLEL_MAKE_JOBS=2 in /etc/mk.conf, and please provide
feedback.
2019-12-05 21:18:08 +00:00
pirofti
eb7e1d06b3 Use strip(1) instead of objcopy(1) to remove debug information.
Few people complained that stripped binaries are slightly
larger now than they used to be when debug packages are enabled.

My investigations show that this is because objcopy --strip-debug is
less efficient than plain strip(1) which is what we use for non-debug
packages.

Reintroducing strip(1) does not affect current debug packages behaviour
in my experience. The link to the debug symbols is still there and
egdb(1) still loads it automatically and displays all the debug info.

OK espie@
2019-12-04 11:34:29 +00:00
espie
92dbe205b0 simpler check for gettext dependency anywhere in BUILD_DEPENDS.
We're in bsd.port.mk, so we're allowed to use internals, and _BUILD_DEP
contains exactly what we need.

okay naddy@
2019-12-02 18:59:03 +00:00
sthen
36eb147a1a oops, adjust previous to unbreak (needed _BUILDLIB_DEPENDS in addition
to BUILD_DEPENDS rather than replacing)
2019-12-02 12:02:05 +00:00
sthen
0660d1cde0 Change the gettext-tools poisoning to use _BUILDLIB_DEPENDS instead of
BUILD_DEPENDS and simplify (it's always defined, so no need for a "is defined"
check).

Although it's not used often there is now an external-facing library
that is part of gettext-tools so it's valid to have it listed as a LIB_DEPENDS
rather than a BUILD_DEPENDS.

_BUILDLIB_DEPENDS suggested by espie@ naddy@ as an improvement to my more
complex and less complete "check BUILD_DEPENDS and LIB_DEPENDS" which ignored
multi-packages.
2019-12-02 11:38:22 +00:00
espie
0ab1dbdef3 for the packaging step
- don't use $@D so that we can put two targets in there
- set a variable to add the debug package to the targets

This fixes behavior in the very specific case the normal package was already
built without DEBUG_PACKAGES and you're repackaging with DEBUG_PACKAGES set.

okay landry@
2019-12-02 10:36:51 +00:00
espie
c1024b8fcd update the internals with a few more details 2019-12-01 09:36:29 +00:00
kmos
03e2882de7 Add the common misspelling "MODPY_TEST" (should be "MODPY_PYTEST") to the
poisoned misspellings to help point out when the typo happens.

ok phessler
2019-11-30 18:11:46 +00:00
espie
542e93575d document the result 2019-11-30 10:20:53 +00:00
sthen
4c645f78fa oops, that should not have been part of previous commit 2019-11-29 02:43:16 +00:00
sthen
d13bf19794 reserve 846 for net/dhcpcd, the master branch upstream now has working privsep 2019-11-29 02:42:44 +00:00
espie
e8b70183b5 so figured out what to do with links. Fun!
(there's still one corner case to detect, but it's unlikely to happen in
practice)
2019-11-27 15:10:19 +00:00
sthen
d665f4f90d +snmp_exporter 2019-11-27 10:47:22 +00:00
espie
70af6987c7 a few more comments in the generated makefile
fold abstraction that's no longer needed
turns out I don't need to worry about symlinks, egdb handles them
2019-11-26 12:02:46 +00:00
espie
609569ab04 better if I build the correct package :/
sorry guys, broken debug packages
2019-11-26 11:49:02 +00:00
espie
7eaccc69c8 fold trivial code 2019-11-25 15:35:05 +00:00
espie
afa1c62789 stop doing anything with @static-lib, my plan didn't work correctly
(how do you link with a lib in a package that you can't really depend
upon)

There are few enough static libs that the difference won't be that much
anyway.

okay pirofti@
2019-11-25 14:51:15 +00:00
espie
337eaeceb0 add a warning for the actual absence of debug-info
okay pirofti@
2019-11-25 14:35:06 +00:00
espie
1136f61008 have comment reflect reality 2019-11-25 13:57:11 +00:00
espie
efd273d5a8 rename p into pkgname, so I do not need an extra temp variable
move checksum_package to the final loop, so *only* final packages
will get checksummed
2019-11-24 12:54:12 +00:00
espie
703ae9ad93 restore logic to NOT register debug packages
noticed by aja@, thx
2019-11-24 12:23:22 +00:00
espie
eeedab813e use the exact same logic for FETCH_PACKAGES: grab all files. If we got
them all we move them (and we can still fail if permissions are not okay)
Otherwise, we run the normal _internal-package-only again, with FETCH_PACKAGES
neutralized (as before)

This fixes the issue reported by semarie@ and kmos@
2019-11-23 16:31:20 +00:00
espie
085528005c tweak the logic slightly: use one single variable _pkg${_S} to hold the
packages we build (normal/debug) and put the code back inside the actual
target instead of fragments.

Stop doing tests (shell exits as usual and trap is enough to remove temp
files).

The same logic will be used for debug_packages
2019-11-23 16:19:48 +00:00
espie
bdfceef887 add extra variables to make the definition of PACKAGE_COOKIE more regular
to be used for DEBUG_PACKAGES
2019-11-23 16:00:34 +00:00
espie
5bc08af6fd zap useless tests (dates back when this governed _PACKAGE_LINKS as well,
before the MULTI_PACKAGES/BUILD_PACKAGES separation)
2019-11-23 15:50:14 +00:00
espie
58cccbe929 fix bug in FETCH_PACKAGES logic: do NOT run _internal-package-only if
FETCH_PACKAGES succeeded. Also: error out if we can't copy/link the
cached package, as this is probably some permission error.
2019-11-23 15:43:20 +00:00
sthen
593e1a38f9 portgen sqlports improvements, changes suggested by espie in response to my
not-so-good change to just using the PortsQ "cache":

- use _paths/_ports directly rather than the "ports" view and remove bogus
flavour-clearing regex subst

- open sqlports ReadOnly
2019-11-23 14:59:39 +00:00
abieber
e0f2a305ba Remove unused NPM bits.
OK afresh1@
2019-11-22 00:01:10 +00:00
sthen
273bc91140 - comment-out net/cvsync uid
- drop description of "noauto", not used since 2006
2019-11-20 15:37:52 +00:00
afresh1
45800df741 Remove sqlports-compact support from portgen
Ok, initial idea, and initial patch from cwen@
2019-11-19 22:43:31 +00:00
espie
31c7e58902 do the destdir dance using File::Spec for simpler, canonical paths 2019-11-19 16:35:20 +00:00
espie
0b8672b605 rename generic "out" into "mk" since we're writing to a makefile
(makes it more obvious compared to the plist fh)

start preparing for actually handling links
2019-11-19 15:49:30 +00:00
espie
cf1e5fa4f3 repair 2019-11-19 15:06:19 +00:00
espie
d189070fb1 document a design choice 2019-11-19 14:55:42 +00:00
espie
2a18d1de91 ... and the argument parsing proper is now identical as well! 2019-11-19 14:54:01 +00:00
espie
a5d9dff07c inherit from PlistReader so that differences are located in a better location 2019-11-19 14:51:32 +00:00
espie
f1c3d659c4 move the common state things as well 2019-11-19 14:45:28 +00:00
espie
978d83893b make the state code identical in preparation for lifting. 2019-11-19 14:41:29 +00:00
espie
cea793235b start moving common code into its own file 2019-11-19 14:38:56 +00:00
espie
289bc15185 add DEBUG_* glue
okay sthen@
2019-11-19 12:39:04 +00:00
espie
5c2dd6bbc8 move process_subpackage logic into the PlistReader class in order to
share the code
2019-11-18 16:07:17 +00:00
espie
37b5d2c0a2 make things closer to update-plist 2019-11-18 15:56:29 +00:00
espie
9ffc3dddaf tweak code order slightly to make things identical to build-debug-info 2019-11-18 15:54:48 +00:00
espie
28daf77466 I'm an idiot, of course conflict requires some tweaks as well 2019-11-14 12:47:03 +00:00
espie
aaff77ddbc temporary fix: if we don't know how to generate debug for symlinks, don't
bother registering them
2019-11-14 08:48:44 +00:00
espie
6fdf092c90 clean-up (put stuff into self, not state)
inherit from BaseFS, so that dest/undest/resolve_link can happen
2019-11-13 16:16:51 +00:00
espie
ac67505216 tweak call, some options are not needed, passing PORTSDIR will be
necessary to grab other code.
also error out when file writing breaks.
2019-11-13 15:22:41 +00:00
espie
029ecfd382 move the dest/undest/resolve_link code to its own class, so it can be
reused in other WRKINST contexts (build-debug-info)

Also make use of state to display errors, like duh
2019-11-13 11:38:48 +00:00
espie
ed96787dac tweak it yet again to always run build-debug-info, it's cheap enough 2019-11-13 10:08:57 +00:00
rsadowski
e2593bc802 update MASTER_SITE_KDE and prefer https over http/ftp. 2019-11-12 21:24:14 +00:00
espie
dbc7492568 don't error out on symlinks for now, this allows things to proceed 2019-11-12 20:06:54 +00:00
espie
10152e79fb copy remaining annotations with special semantics (cwd but first, pkgpath
with debug/ prepended)

put a bit more boilerplate in the generated Makefile, so that the targets
themselves are much shorter
2019-11-12 16:41:36 +00:00
espie
e9cee4d943 minor tweaks:
- remove PKG_ARCH=* packages from DEBUG_PACKAGES, to help with
introspection
- ditch DEBUG_FILES entirely, the automated mechanism appears to be
good enough
- tweak show-debug-info to show the file names
2019-11-12 16:40:26 +00:00
bentley
6e78e88d53 Update error message: pkg/README is PKGSTEM, not FULLPKGNAME. 2019-11-12 06:01:04 +00:00
espie
0b1efbd66c the warning about changed debug info is no longer relevant
keep the notice_new_file hook though, it might come in handy
2019-11-11 19:00:27 +00:00
espie
5c56964120 permissions 2019-11-11 18:59:36 +00:00
espie
9e82963b04 missing files can now be hard error since update-plist is no longer dependent
on us
2019-11-11 18:54:24 +00:00
espie
d140f7d998 let's run build-debug-info as a separate step after make fake, so that
update-plist doesn't interfere.

zap that cookie after update-plist so that changes get propagated nicely
without needing to rerun make fake
2019-11-11 18:52:59 +00:00
espie
e1c4bb8586 fix thinko. of course the stupid dependencies get changed last, so touch
the target
2019-11-11 18:33:05 +00:00
espie
7cb6e3a71a write the "generate debug info" as a Makefile so it can be run again
and again in the auto-generated case.
2019-11-11 18:22:27 +00:00
espie
d1f1c96c65 tweak the heuristics for DEBUG_PACKAGES: exclude arch-independent packages,
so that you can set DEBUG_PACKAGES=${BUILD_PACKAGES} most of the time
2019-11-11 17:40:06 +00:00
espie
7109855c36 don't register automatically generated debug*plists, allows for quick
change in the infrastructure, and follows what we actually do for non
static plists
2019-11-11 17:30:13 +00:00
espie
01155b231a build-debug-info actually needs to operate under ${WRKINST}${TRUEPREFIX}
so that it can figure out hardlink

create special LINK entries that just make hardlinks on the dbg info
for already generated stuff.

This solves the python problem noticed by aja@
2019-11-10 20:44:51 +00:00
espie
ec94319f61 note to self (noticed by aja@ in python) 2019-11-10 18:27:51 +00:00
espie
8f163ed309 warn when update-plist changed files with debug info, so that ppl know
they need to re-do fake to get proper debug packages
2019-11-10 18:26:39 +00:00
espie
68ffed6fe9 DON'T do PKGPATHS yet... sqlports does not like 2019-11-10 17:41:47 +00:00
espie
6b45c88ee8 if the plist changes, some files may vanish... fake should STILL finish,
so just WARN for non existing files with debug stuff
2019-11-10 17:36:20 +00:00
espie
0948639c33 second iteration of DEBUG_PACKAGES, now with some automation, with feedback
from landry/aja/pirofti/others
2019-11-10 16:48:19 +00:00
espie
b76784517b let update-plist deal with debug stuff
- ignore debug files in the fake directory
- recognize and annotate shared objects and static libraries correctly

*THIS REQUIRES CURRENT PKG_* CODE TO WORK!*
if your package contains static libraries/shared objects, update-plist
WILL error out saying it can't create the new classes
2019-11-10 16:46:44 +00:00
espie
6e3cab099d new helper, creates debug-PLISTs for debug packages.
Exact same pattern as update-plist, in order to read all pkg_create
arguments in one go
2019-11-10 16:44:55 +00:00
sthen
72c8828acb warn if patches contain ${WRKOBJDIR}, includes fixes from espie@ 2019-11-10 15:28:19 +00:00
sthen
16037f53de use DEBUG=-g rather than a special DEBUG_FLAGS, avoids the need to mess with
adding to CFLAGS manually
2019-11-10 11:10:37 +00:00
espie
e83b3f00cb tweaks:
- contrary to merge_depends, build_distinfo can actually work one path
at a time.
- have DISTFILES be an ordered list to give more info to roach (first
distfile)
- so put build1roach in the middle of  build1info so that the ordered
list is still available.

To be leveraged once I finish roach...
2019-11-09 17:06:37 +00:00
espie
c3ea6d1aed add initial glue for debug packages support
this is likely to change some more (become more automated), but it
should allow us to build a few packages and tinker.

Basically it uses DEBUG_PACKAGES, DEBUG_FILES
plus DEBUG_CONFIGURE_ARGS and DEBUG_FLAGS because we don't want to allow
debug packages on small architectures before we assess the performance impact
of building these.

this will get documented properly once the dust settles...

As discussed with other people at p2k19, ok pirofti@
2019-11-09 15:08:09 +00:00
espie
97cbe7d28e so the job itself should also not continue if something broke 2019-11-08 17:53:24 +00:00
espie
dde84cbc35 backout some of the "clean-up", just keep the part that doesn't run
code that can't work
(the rest does something strange with start_pipe for now)
2019-11-08 17:47:01 +00:00
espie
ecaecae8b9 always go thru task->finalize properly. including task->end, so that pipes
get closed automatically

for init core, if tasks did fail, do not continue.
in particular, this avoids calling DPB::Var->get on a failed host.

thx sthen@ for noticing this
2019-11-08 13:42:17 +00:00
espie
17744e9830 less hackish: distfile shouldn't have an undef'd pkgname.
instead, make $v responsible for log_as_built so that packages
get logged and distfiles do not.
2019-11-08 13:06:00 +00:00
espie
8e8a04e74e allows disable recording again. make the file handling more explicit, since
open "just failing" is not THAT great.
noticed by  cwen@
2019-11-08 10:26:09 +00:00
espie
d8f1105bba distfiles are also marked as built, but we don't want to log them. 2019-11-08 10:08:26 +00:00
espie
1383885715 set aside -N for roach (new) instead of -n, because it's confusing
compared to conventional -n "don't do anything" in pkg tools.
2019-11-07 16:36:42 +00:00
espie
c8a64aecd9 have package building heed FTP_ONLY as well, as it makes things simpler 2019-11-07 16:34:57 +00:00
espie
119bda9557 always pass PERMIT_PACKAGE through so we can also select to not build things
in dpb.
2019-11-07 16:15:17 +00:00
espie
d8e3568a01 forgot to adjust for the PERMIT_* changes 2019-11-07 16:12:35 +00:00
espie
faeca73456 add an extra log file that logs packages actually built (instead of found)
to help with possible batching of dpb output to something else (like a
signing engine)
2019-11-07 16:02:54 +00:00
espie
02ab0cf7a0 reorg the code a bit, explain what's going on.
ditch old stuff for ETA that doesn't work at all
rename "measure" to the less vague "full_weight"
2019-11-06 16:36:11 +00:00
espie
d6a962b09b create also takes the full @r list, so take fname into account
sorry for the breakage
2019-11-06 15:12:46 +00:00