Path to this page:
./
devel/p5-PAR-Packer,
Perl5 module to create stand-alone executables and archives
Branch: CURRENT,
Version: 1.063nb1,
Package name: p5-PAR-Packer-1.063nb1,
Maintainer: pkgsrc-usersPAR-Packer is the PAR component that can generate stand-alone
executables and ".par" archives.
The main front-end for PAR-Packer is the "pp" utility.
Master sites: (Expand)
Filesize: 199.067 KB
Version history: (Expand)
- (2024-11-16) Updated to version: p5-PAR-Packer-1.063nb1
- (2024-08-18) Updated to version: p5-PAR-Packer-1.063
- (2024-01-01) Updated to version: p5-PAR-Packer-1.061
- (2023-12-19) Updated to version: p5-PAR-Packer-1.059
- (2023-07-06) Updated to version: p5-PAR-Packer-1.052nb2
- (2022-06-28) Updated to version: p5-PAR-Packer-1.052nb1
CVS history: (Expand)
2024-11-16 13:08:07 by Thomas Klausner | Files touched by this commit (2504) |
Log message:
*: recursive bump for perl 5.40
|
2024-08-18 10:23:26 by Wen Heping | Files touched by this commit (2) |
Log message:
Update to 1.063
Upstream changes:
1.063 2024-03-15
- Fixes #86 "-l somelib.dll doesn't work in recent PAR::Packer versions"
par_setup_libpath() in myldr/mktmpdir.c used to set all known
"search path for DLLs" environment variables (e.g. LD_LIBRARY_PATH
on Linux). The search path is set up so that the first directory
searched is a packed executable's cache directory (where the shared
perl library will be extracted to, also all packed "external" DLLs).
In 2017 (by 2ac7078) it was changed to only set the variable
relevant for the OS where PAR::Packer was build on, given by
$Config{ldlibpthname}. But some perl distributions
(e.g. Strawberry on Windows) do not specify $Config{ldlibpthname}.
Hardwire "PATH" for MSWin32 and otherwise complain if this Config
variable is undefined.
Add t/85-ldlibpthname.t: check that the value of the environment
variable for searching for DLLs, usually $ENV{$Config{ldlibpthname}},
starts with the cache directory, $ENV{PAR_TEMP}.
- Skip t/87-xs-cross.t if ExtUtils::Depends 0.8001 is installed.
This version fails to build and install the "import lib"
corresponding to XSQuux.xs.dll and hence fails to build XSBar.xs.dll.
The test works on GitHub CI, because the "strawberry" perl distribution
installed there comes with ExtUtils::Depends version 0.8000
(ie. **not** current) pre-installed.
1.062 2024-03-05
- Fix #84: PAR::Packer packaged scripts lose the ability to parse UTF-8 \
arguments from the command line
myldr/boot.c passes its arguments in argv (except argv[0]) down to the custom
perl interpreter using _spawnvp(). But this argv has already been converted to the
local code page, so the custom interpreter can't get it back using
GetCommandLineW(). Convert myldr/boot.c to use GetCommandLineW() and
CommandLineToArgvW() to get the "real" (UTF-16) command line and pass
that down via _wspawnvp(). Convert shell_quote() (to escape embedded
blanks, double quotes etc in the arguments) from using char to wchar_t.
Thanks to @fengzyf for the report and most of the work.
- pod: explain how REGEX is applied in "--modfilter=FILTER=REGEX"
- require PAR >= 1.020
- add new test t/87-xs-cross.t to investigate rschupp/PAR#11
- move some test modules around and fix up tests accordingly
- bump version of actions/checkout
|
2024-01-01 09:35:28 by Makoto Fujiwara | Files touched by this commit (2) |
Log message:
(devel/p5-PAR-Packer) Updated 1.059 to 1.061
1.061 (no info)
1.060 2023-07-20
- automated_pp_test: use unique filenames for all pp generated executables
Reusing the names of executables produces random test failures
at least on macOS, perhaps due to some antivirus software.
- automated_pp_test: pipe_a_command() doesn't restore the directory where it's called
- switch doc "Please submit bug reports to ..." to GitHub issues
|
2023-12-19 13:19:51 by Makoto Fujiwara | Files touched by this commit (2) |
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
|
2023-07-06 11:43:03 by Thomas Klausner | Files touched by this commit (2483) |
Log message:
*: recursive bump for perl 5.38
|
2022-06-28 13:38:00 by Thomas Klausner | Files touched by this commit (3952) |
Log message:
*: recursive bump for perl 5.36
|
2021-12-29 15:33:12 by Patrick Welche | Files touched by this commit (3) |
Log message:
Add p5-PAR-Packer version 1.052
PAR-Packer is the PAR component that can generate stand-alone
executables and ".par" archives.
The main front-end for PAR-Packer is the "pp" utility.
|