Path to this page:
Subject: CVS commit: pkgsrc/devel/p5-PAR-Packer
From: Makoto Fujiwara
Date: 2023-12-19 13:19:51
Message id: 20231219121952.0CB04FA42@cvs.NetBSD.org
Log Message:
(devel/p5-PAR-Packer) Updated 1.052 to 1.059
1.059 2023-07-20
- correctly propagate the exit value of a packed executable
Get the exit value from perl_destruct() instead of perl_run().
These may be different, e.g. if the value of $? is set in an END block.
- clean up tests a bit
- set up GitHub CI and add cpanfile (for CI only)
- check more return codes in myldr/*.c
1.058 2023-06-12
- patch DynaLoader.pm to make intercepting DynaLoader::bootstrap work again
for Perl >= 5.35 on Windows (see #74)
$do_expand was changed in perl 5.36 from an (implicit) "local" variable
to "my". This breaks how PAR::Heavy intercepts calls to
DynaLoader::bootstrap: monkey-patching DynaLoader::bootstrap,
DynaLoader::dl_findfile and DynaLoader::bootstrap while setting
"local $DynaLoader::do_expand = 1".
- reorganize modules etc used in tests
- add test to run an XS module from a .par file
- add a test for loading XS "glue" DLLs
- remove unused code for packed DLLs ("pp --link ...")
- nobody packs (non-XS) DLLs as embedded "FILE"s
- nobody uses a $Config{version) sub directory when packing DLLs below
"shlib/" in the zip
1.057 2022-11-29
- use a different method to mark executable built from "pp --clean ..."
- scripts/par.pl: don't patch the string "__PASS_PAR_CLEAN__ \
\0" in the
"boot" section of the executable and ...
- myldr/boot.c: ... stop looking for the patched string
- scripts/par.pl: add "\0CLEAN" in lieu of "\0CACHE" (and \
drop the 40-byte
cache name below that) in the "trailer" section when generating a \
packed
executable when META.yml indicates "--clean" was specified)
- myldr/mktmpdir.c: allow "\0CLEAN" as an alternative to \
"\0CACHE"
and set PAR_CLEAN=1 in that case
- myldr/mktmpdir.c: implement find_par_magic() akin the one in script/par.pl
- better CLT detection in MacOS (#70) [plk <Philip@kime.org.uk>]
- use Getopt::ArgvFile with resolveEnvVars=1
suggested by Johan Vromans (@sciurius on GitHub)
1.056 2022-09-05
- Fix #66: patch myldr/boot for "pp --clean ..." without side effects
- make sure myldr/boot contains exactly one string of the form
"__PASS_PAR_CLEAN__ \0" so that there are no
duplicates that may get split on chunk boundaries
(myldr/boot_embedded_files.c)
- simplify patching of this string (in $loader) to
"__PASS_PAR_CLEAN__=1 \0" in script/par.pl
- add a test for #66 (check for ephemeral vs persistent cache directory)
- Revert "Fixes #62: rs6000_71 (AIX) "An offset in the .loader section \
header is too large.""
PAR_CLEAN is set too late: at this point PAR_TEMP has already
been set (and populated) to a persistent cache directory
(/tmp/par-USER/cache-SHA1) instead of an ephemeral one (/tmp/par-USER/temp-PID).
- Some code cleanup
- replace some magic numbers with constants
- use string interpolation (instead of concatenation)
- clean up some convoluted C code
1.055 2022-07-03
- Fix #62: rs6000_71 (AIX) "An offset in the .loader section header is too \
large."
Communicate pp option "--clean" to the generated executable in a
different way. Previously this was done by patching "__ENV_PAR_..." \
strings
**in the executable being built** and interpreting these strings in
par.pl **at runtime**. Though hacky, this seemingly worked on any OS
(without rendering the executable invalid).
But the only information ever passed was the value of PAR_CLEAN and this was
gleaned at build time from the value of JSONPath $par.clean from META.yml
in the zip (set by pp by option "--clean").
Instead read and interpret "META.yml" in par.pl **at runtime**.
- Fix: merge PR #58 from Philip@kime.org.uk:
Adding support for running MacOS Universal binaries created via 'lipo'
from already pp'ed and signed thin binaries
- Make writing stuff more robust: check return value of print()
and close() in some places.
1.054 2022-01-27
- Temporarily disable t/90-gh41.t (system("\\\\?\\some-absolute-path") \
fails)
1.053 2022-01-25
- Fix: merge PR #56 from from Philip Kime <Philip@kime.org.uk>:
Updating OSX codesign fix util with fix for automatically added ad-hoc \
signatures on OSX 12+
- Fix: merge PR #42 from Andrew-Kulpa/master:
Get exe size from file handle instead of path
- Fix: prevent TABs in literal makefile fragments from being expanded
- Cleanups:
- par_findprog(): pass a copy of argument `path´ to strtok()
- simplify searching for PAR magic
- consolidate die()s
- add a test for GitHub #41
- add error message when exec'ing the custom perl fails in myldr/boot
- untangle %require_list and %ModuleCache
Files: