1069 Commits

Author SHA1 Message Date
espie
f963059f7a scrape the old ldd code, which hasn't been used since we got rid of a.out 2021-06-21 15:16:52 +00:00
afresh1
d6b4517057 Have portgen(1) strip leading "v" on perl ports that need it
Noticed by Mischa <obsdml () high5 ! nl>
2021-06-13 19:00:06 +00:00
afresh1
ac796829f9 Have portgen(1) use newly set DEPENDS and CONFIGURE_STYLE
If we don't clean, then the upcoming make build won't notice any changes
that we actually added to the Makefile, such as setting the CONFIGURE_STYLE
to "modbuild tiny".

Noticed by Mischa <obsdml () high5 ! nl>
2021-06-13 18:30:50 +00:00
espie
0039b6d7da add support for FETCH_CMD as a config file option/command line override
that will replace whatever comes from mk.conf
2021-05-03 07:16:46 +00:00
espie
133c3cebf5 grab FETCH_CMD value from bsd.port.mk, as discussed and tested with
Dimitri Karamazov

TODO: add Config.pm support for this as well
2021-05-02 06:08:53 +00:00
espie
a6ebec8550 properly set up a watched in the Job::BasePort class instead of doing
it manually in each factory method in the builder.

gets rid of warnings under some install/wipe circumstances

okay naddy@
2021-04-16 20:14:47 +00:00
abieber
f10c854458 Allow an optional @version suffix (@v1.0.0 for example) to be specified when
generating a Go port with 'portgen go'. Patch from Josh Rickmar. Ty Josh!
2021-03-23 13:17:41 +00:00
espie
03db828d59 refactor: make the builder responsible for telling us whether we should
clean at the end of a build.

Add a new global config option: NEVER_CLEAN
so that no path ever gets cleaned (to be used ONLY if you have lots of disk
space).

I've actually done this manually in the past, to test various tools on
lots of objdirs...
2021-03-21 19:17:34 +00:00
gnezdo
c68d711c25 Remove GhcConf packing element as ghc-pkg-recache is no more
These were previously used to automatically add tags to PLIST for
Haskell library ports. Since library ports no longer exist, such
tagging only ever triggers for ghc package where it is now harmful.

ok kili
2021-03-07 19:30:16 +00:00
abieber
e27a7fd632 Fix a bug that was preventing version comparisons from working.
While here try using @v/list first, if that fails use @latest. This should
fix some of the "not being able to see the latest version" issues that
happen when upstreams re-tag.

Tweaks / OK from afresh1
2021-03-03 03:08:30 +00:00
espie
6576f7d21a use the new cleaner interface of pkg_add's state that decouples
continue and window size change for readability
2021-02-26 07:54:11 +00:00
sthen
6311f228e2 Record timings at the bottom of the individual build log (it's just the
same information as in summary.log but I find it useful to have here too0.
ok espie@
2021-02-21 10:48:04 +00:00
abieber
0666597e06 Update Go to 1.16.
OK jsing@
2021-02-20 14:56:34 +00:00
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
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
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
877acdbb0a thinko 2020-07-04 16:53:42 +00:00
abieber
273b7fe1fe Remove extra shell.
Fix from espie@
2020-06-26 23:26:04 +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
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
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
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
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
a8a6ebd059 forgotten in refactor: next -> return
run into by rsadowski@
2020-04-08 08:01:36 +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
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
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
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
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
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
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
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
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