| 1 |
Revision history for Perl extension App::Staticperl |
| 2 |
|
| 3 |
SHLIB_PATH hpux, .sl |
| 4 |
LD_LIBRARY_PATH solaris, .so |
| 5 |
LIBPATH aix .a(?) |
| 6 |
LD_LIBRARY_PATH_32 and LD_LIBRARY_PATH_64 .so solaris |
| 7 |
LD_LIBRARYN32_PATH irix |
| 8 |
LD_LIBRARY64_PATH irix |
| 9 |
DYLD_LIBRARY_PATH darwin |
| 10 |
TODO: nonstatic builds, make.aperl failure does not link in everything? |
| 11 |
TODO-IMPORTANT: CPAN::MyConfig! |
| 12 |
TODO: tell people that staticperl perl *PL;make/make install is not enough normally. |
| 13 |
TODO: document hooks |
| 14 |
|
| 15 |
TODO: -Ixxx overweritten during startzup for custom perl binaries |
| 16 |
|
| 17 |
TODO: maybe make extutilc::cbuilder return value dynamic and have some kind of app-preferences? |
| 18 |
TODO: bundle "<<<<" error => endless loop |
| 19 |
TODO: keepnl option of some kind |
| 20 |
- implement lzf compression for library files, use "--compress none" |
| 21 |
to disable. |
| 22 |
- switch default mirrors to https. |
| 23 |
- add backpan to urrlist by default, so its easier to install older, working, |
| 24 |
modules such as JSTOWE/TermReadKey-2.33.tar.gz |
| 25 |
- configure pushy_https by default, as this extraordinarily stupidly |
| 26 |
named option apparently breaks urllist completely. |
| 27 |
- new hook: postcpanconfig. |
| 28 |
- more aggreessively strip consecutive whitespace when using PPI. |
| 29 |
- avoid idiotic "Reverse operator" warning when stripping with PPI. |
| 30 |
- change default compression for perl tarballs to gzip, as upstream |
| 31 |
keeps changing compression algorithms and gzip is the only stable one. |
| 32 |
- unset some more environment variables to reduce interference. |
| 33 |
- implement (partial and so farr undocumented --keepnl mode for ppi stirpping). |
| 34 |
- when installing modules, try to install before AND after building perl, to |
| 35 |
work around a perl bug where it would try to link against both installed |
| 36 |
and just-built versions of a module, which seems to happen for dual-life moduöes |
| 37 |
such as Encode. |
| 38 |
|
| 39 |
1.46 Tue 15 Feb 2022 19:25:09 CET |
| 40 |
- when building an app ("mkapp"), staticperl freed the argv too |
| 41 |
early, which causes memory corruption when perl is later |
| 42 |
assigning to $0. |
| 43 |
- default CPAN recommends_policy/suggests_policy to off. |
| 44 |
- new bundle args: --extra-cflags, --extra-ldflags and --extra-libs. |
| 45 |
- fix CBuilder workaround to actually use PERL_CFLAGS not PERL_CFLASGS. |
| 46 |
- minor cosmetic fixes. |
| 47 |
|
| 48 |
1.45 Fri Oct 19 23:26:54 CEST 2018 |
| 49 |
- work around weird, buggy and broken stacksize check in newer Storable. |
| 50 |
- create a framework for patching modules before make, thanks to Storable. |
| 51 |
- try to work around install phase changing thw cwd,m so instsrc . no |
| 52 |
longer fails because the install dependency changed the cwd. |
| 53 |
- restore PL_origfilename and $0 to argv[0] before running bootstrap, |
| 54 |
so the script name is no longer '-e' in error messages and so on. |
| 55 |
- PERL_VERSION can now be a full URL or a directory. |
| 56 |
- default to stableperl. |
| 57 |
- add -Uversiononly to Configure args, as it's required by staticperl, and |
| 58 |
one of the many unrelated things usedevel needlessly toggles. |
| 59 |
|
| 60 |
1.44 Tue Jul 7 01:32:49 CEST 2015 |
| 61 |
- added Net::SSLeay hint, tested and improved by gleeco. |
| 62 |
- fix quoting bug, avoid failure when EXTRA_MODULES contains spaces. |
| 63 |
- enable build_requires_install_policy to work around one of the myriad |
| 64 |
bugs in Module::Build. |
| 65 |
- support concurrent access to the DLCACHE. |
| 66 |
- install ExtUtils::CBuilder early, to improve chances of succeeding |
| 67 |
slightly by having a newer version. |
| 68 |
- patch ExtUtils::CBuilder::Base::have_compiler to always return |
| 69 |
false, as ExtUtils::CBuilder blindly builds shared libs on systems |
| 70 |
that cannot build shared libs and modules relying on it usually |
| 71 |
fail for similar reasons. |
| 72 |
- set LD/CC/LDFLAGS/CFLAGS to work around the endlessly buggy ExtUtils::CBuilder, |
| 73 |
which incidentally is a byproduct (read: garbage) of Module::Build. |
| 74 |
- be more aggressive about post-install patching, to avoid stuff falling |
| 75 |
through the cracks. |
| 76 |
- override MAP_TARGET for ExtUtils::MakeMaker, as some modules |
| 77 |
provide their own name for the perl binary (which is not what we want). |
| 78 |
- update DynaLoader patch for current ExtUtils::MakeMaker. |
| 79 |
|
| 80 |
1.43 Wed Apr 18 14:38:43 CEST 2012 |
| 81 |
- remove the temporary MakeMaker patch, as either Pod::Parser or |
| 82 |
MakeMaker have been fixed. Also make sure we pull MakeMaker |
| 83 |
from CPAN. This might fix the CPAN dependency problems with |
| 84 |
newer perl versions (at least 5.14.2). |
| 85 |
- staticperl mkperl or mkapp didn't clean up temporary files. |
| 86 |
- PPI::XS seems to be broken, directly depend on PPI. |
| 87 |
|
| 88 |
1.42 Mon Mar 5 08:16:02 CET 2012 |
| 89 |
- actually, really do it. |
| 90 |
|
| 91 |
1.41 Mon Mar 5 08:14:11 CET 2012 |
| 92 |
- temporarily patch ExtUtils::MakeMaker because newer versions |
| 93 |
break Pod::Parser. |
| 94 |
|
| 95 |
1.4 Mon Jul 18 09:33:48 CEST 2011 |
| 96 |
- new configuration variable DLCACHE to avoid repeated downloads. |
| 97 |
- the static:: namespace was wrongly documented as sttaicperl::. |
| 98 |
- provide no compiler flags apart from -Os anymore by default. |
| 99 |
- staticperl clean now removes all build files (src/). |
| 100 |
- staticperl no longer sets EV_EXTRA_DEFS or CORO_INTERFACE. |
| 101 |
- patch ExtUtils::Miniperl to always include DynaLoader, otherwise |
| 102 |
static linking disables later dynamic linking and vice versa. |
| 103 |
- (experimental) do not build a new perl unless a static archive |
| 104 |
was created, to make -Dusedl faster. |
| 105 |
- actually fail when not being able to install some modules from CPAN. |
| 106 |
- speed up installing modules from CPAN if multiple modules have |
| 107 |
been specified. |
| 108 |
- weed out duplicated libraries form the beginning, not the end. |
| 109 |
- set shell variable $PERL to full path to perl binary |
| 110 |
when running staticperl cpan, which is handy for subshells. |
| 111 |
- properly define "boot_DynaLoader" when DynaLoader is available. |
| 112 |
- fix a memleak in static::list. |
| 113 |
- mkbundle can now bundle dynamic objects for perl extensions |
| 114 |
(--allow-dynamic). |
| 115 |
- lots of windows workarounds/bugfixes. |
| 116 |
|
| 117 |
1.31 Tue Jun 14 09:03:59 CEST 2011 |
| 118 |
- pause is more tricky than expected - rename fake.pm to Staticperl.pm. |
| 119 |
- improved documentation a bit. |
| 120 |
|
| 121 |
1.3 Tue May 10 19:39:39 CEST 2011 |
| 122 |
- the nothing-to-see-except-a-version-bump release. |
| 123 |
- package a fake.pm file to (maybe!) get CPAN to allocate namespace |
| 124 |
for us, as people have real trouble to install the distribution. |
| 125 |
|
| 126 |
1.22 Sun May 1 11:28:54 CEST 2011 |
| 127 |
- prepend staticperl binary install path to PATH when running any |
| 128 |
commands - will help many broken modules and scripts (e.g. those |
| 129 |
using the broken #!env perl hack), but will also make life easier |
| 130 |
for "staticperl cpan / look" users. |
| 131 |
- use empty PERL_OPTIMIZE flags in testsuite for higher portability. |
| 132 |
- unset PERL_CORE and PERL_MB_OPT variables because |
| 133 |
these modules are part of perl - set them in your staticperlrc |
| 134 |
instead. |
| 135 |
- disable MAN1PODS and MAN3PODS in PERL_MM_OPT, to make Glib, Cairo, |
| 136 |
Pango and Gtk2 build. |
| 137 |
- patch ExtUtils::MM_Unix to search for static archives in blib more |
| 138 |
often, as it doesn't detect Pango as being an XS module (which |
| 139 |
is a bug in Pango). |
| 140 |
- create a patch helper (SP-patch-postinstall) that is executed |
| 141 |
after perl and eahc module install to do some important patches. |
| 142 |
- rename the cpan-make-inmstall helper to SP-make-install-make. |
| 143 |
- write mkbundle to bin/SP-mkbundle. |
| 144 |
- new "staticperl perl" command. |
| 145 |
- updated small/bigperl to 5.12.3. |
| 146 |
|
| 147 |
1.21 Fri Mar 18 19:21:15 CET 2011 |
| 148 |
- ok, irix tar has no working -f and freebsd tar goes to a device |
| 149 |
by default, so screw irix and go with freebsd. |
| 150 |
- some bloke thought it's cool to force dynamic linking on darwin. |
| 151 |
force as in "either you enable it, or the resulting build will be |
| 152 |
forcefully broken". proves that whoever uses darwin deserves it. |
| 153 |
anyway, we now patch away the idiocy in the hints file. |
| 154 |
- for better portability, do not supply -Wl,--no-gc-sections |
| 155 |
-Wl,--allow-multiple-definition, but sitll patch -Wl,--no-gc... |
| 156 |
- new hook: patchconfig. |
| 157 |
|
| 158 |
1.2 Mon Mar 14 00:11:15 CET 2011 |
| 159 |
- patch CPAN::HandleConfig as there seems to be no other way to |
| 160 |
keep it from clobbering the users MyConfig.pm accidentally. |
| 161 |
- call cpan internally in a way so it picks up only our MyConfig.pm, |
| 162 |
for extra safety and the initial calls before patching. |
| 163 |
- set default cpan "installer" to EUMM, and MB is too broken |
| 164 |
(it fails to build extensions statically). |
| 165 |
- use "tar x" only to accomodate irix (and possibly other systems). |
| 166 |
|
| 167 |
1.11 Tue Mar 8 18:37:00 CET 2011 |
| 168 |
- no longer create bundle variable names from md5(data), |
| 169 |
as it is no longer useful. |
| 170 |
- fix output shortening in testsuite. |
| 171 |
|
| 172 |
1.1 Thu Feb 24 07:20:22 CET 2011 |
| 173 |
- use a better -M syntax. |
| 174 |
- the one-arg form of add/binadd was broken. |
| 175 |
- --add and --binadd now use the file as alias if the alias is missing. |
| 176 |
- embeddable bundle files were broken because "args" |
| 177 |
was used before defined. |
| 178 |
- mkapp now actually passes arguments to the boot script. |
| 179 |
- more cpan-testers workarounds :/. |
| 180 |
- implement an ignore-env option for mkbundle. |
| 181 |
- use, not just require, modules when tracing their dependencies. |
| 182 |
- support an optional xs_init argument to staticperl_init, which |
| 183 |
can be 0 (and is then ignored). |
| 184 |
- reduce PERL_ARENA_SIZE to something more reasonable for perl 5.12. |
| 185 |
- use perl 5.12.3 by default. |
| 186 |
- enable debug symbols by default (but not the dreaded -DDEBUGGING). |
| 187 |
|
| 188 |
1.0 Mon Jan 10 15:13:19 CET 2011 |
| 189 |
- specify -Uinstallusrbinperl in configure to avoid creating |
| 190 |
/usr/bin/perl. |
| 191 |
- try to work around the totally broken /bin/sh on solaris |
| 192 |
(only in the testsuite). |
| 193 |
- use curl -f instead of just curl. |
| 194 |
- prefer curl over wget again, as cpan seems to do so. |
| 195 |
- clarify license. |
| 196 |
|
| 197 |
0.92 Wed Dec 22 02:09:19 CET 2010 |
| 198 |
- major rework of the PHASE 2 documentation section, hopefully |
| 199 |
it's now more clear, more useful, more sexy. |
| 200 |
- renamed --usepacklist to --usepacklists (--usepacklist still |
| 201 |
supported as abbreviation). |
| 202 |
- "properly" get rid of SITELIB paths, avoid using -U compiler flags |
| 203 |
(which didn't even do anything...). |
| 204 |
- avoid export var=value syntax for non-unix shells (solaris...). |
| 205 |
- better output in the error case from the testsuite. |
| 206 |
|
| 207 |
0.912 Wed Dec 15 01:14:26 CET 2010 |
| 208 |
- print a longer and hopefully useful message when Configure fails. |
| 209 |
- remove PERL_CPPFLAGS, replace with PERL_CCFLAGS, which get appended |
| 210 |
tot he ccflags, instead of overriding them. |
| 211 |
- introduce PERL_CC. |
| 212 |
- work around *bsd stupidity again, where even root can't replace |
| 213 |
files with mv :/. |
| 214 |
- stop command processing when a command fails (e.g. staticperl mkperl |
| 215 |
will stop if the install step fails). |
| 216 |
- let perl do most configuration when running make test, to increase |
| 217 |
chances of success. |
| 218 |
|
| 219 |
0.911 Sat Dec 11 16:50:41 CET 2010 |
| 220 |
- argl, testsuite had a duplicated test. |
| 221 |
- use -Wl,--allow-multiple-definition for better portability. |
| 222 |
|
| 223 |
0.91 Fri Dec 10 22:13:43 CET 2010 |
| 224 |
- add testsuite (yeah, should be optional - send patches). |
| 225 |
- started to maintain two demo builds: bigperl and smallperl, |
| 226 |
on http://staticperl.schmorp.de. |
| 227 |
- implemented --staticlib option. |
| 228 |
- special unicore/ compression (but much more could be done, |
| 229 |
especially for the uncompressed case). |
| 230 |
- implemented a strip cache, speeding up ppi stripping enourmously. |
| 231 |
- implemented --include/--exclude options. |
| 232 |
- try to port the tar call to freebsd (reported and analyzed |
| 233 |
by Thomas Linden). |
| 234 |
- (hopefully) better meaning of verbose levels. |
| 235 |
- avoid deadlocking in --eval (unlikely, but possible). |
| 236 |
- implement $STATICPERLRC. |
| 237 |
- do all option AND bundle file processing with Getopt::Long, |
| 238 |
to make maintenance easier. |
| 239 |
|
| 240 |
0.9 Wed Dec 8 23:26:48 CET 2010 |
| 241 |
- support AutoLoader'ed functions with prototypes. |
| 242 |
- new mkapp / --app option for mkbundle, to create |
| 243 |
standalone applications. |
| 244 |
|
| 245 |
0.2 Tue Dec 7 21:50:07 CET 2010 |
| 246 |
- make it work as non-root user. |
| 247 |
- make module install/linking much more robust against |
| 248 |
build and link failures, i.e. try to only install |
| 249 |
the module when it was actualyl built successfully. |
| 250 |
- split "install" phase into perl install and module |
| 251 |
install, so fixing your postinstall hook takes less time. |
| 252 |
- change make clean to delete the sources dir. |
| 253 |
- add preconfigure hook. |
| 254 |
|
| 255 |
0.1 Tue Dec 7 10:23:43 CET 2010 |
| 256 |
- initial release. |
| 257 |
|
| 258 |
0.0 Mon Dec 6 10:44:38 CET 2010 |
| 259 |
- cloned from Convert::Scalar. |
| 260 |
|