Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Portable makefiles #639

Merged
merged 3 commits into from
Mar 12, 2024
Merged

Portable makefiles #639

merged 3 commits into from
Mar 12, 2024

Conversation

jimklimov
Copy link
Contributor

@jimklimov jimklimov commented Mar 12, 2024

Avoid GNUisms, allowing less fuss on BSD and illumos installs.

Checked with sequential and parallel builds/installs using Sun make on OpenIndiana 2023.10 and BSD make on FreeBSD 12.

:; git checkout -f && git clean -fdX && git status --ignored
:; ./bootstrap.sh && ./configure --prefix=/usr && make -j 8 && make -j 8 DESTDIR=/tmp/zzz install

"Screenshots" follow in posts below. To summarize them, comparing tests with GNU, Sun and BSD make this PR does not add regressions (or none were detected), and fixes parallel builds on top of that.

NOTE/question: @oetiker : Files like thirdparty/cpanfile-5.38.snapshot or thirdparty/cpanfile-5.32.snapshot (depending on OS perl version) appear and are explicitly not git-ignored nor cleaned away. One for 5.30 is in fact git-tracked. Should others be added?

@jimklimov
Copy link
Contributor Author

jimklimov commented Mar 12, 2024

  • SUN MAKE (parallel):
:; ./bootstrap.sh && ./configure --prefix=/usr && make -j 8 && make -j 8 DESTDIR=/tmp/zzz install
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: /usr/bin/autoconf --force
configure.ac:4: warning: AC_INIT: not a literal: "m4_esyscmd(tr -d '\n' < VERSION)"
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --force-missing
autoreconf: 'conftools/install-sh' is updated
autoreconf: no config.status: cannot re-make
autoreconf: Leaving directory '.'
checking in to see how you are doing... keep fighting man!
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/gmkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '0' is supported by ustar format... yes
checking whether GID '0' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... (cached) yes
checking for perl... /usr/bin/perl
checking for curl... /usr/bin/curl
checking for wget... /usr/bin/wget
checking for pod2man... /usr/bin/pod2man
checking for rm... /usr/bin/rm
checking for CONFIG_YEAR and CONFIG_DATE... got 2024 and 2024-03-12 respectively
checking default SMF service name... oep/znapzend
checking for way to cat URLs... /usr/bin/wget -O -
checking for perl version greater than or equal to 5.16.0... checking is perl reasonably complete... yes. ExtUtils::MakeMaker is available
checking if require a c compiler to get perl modules compiled... no
checking for grep that handles long lines and -e... /usr/bin/ggrep
checking for gnumake... no
checking for gmake... /usr/bin/gmake
checking for gnu make availability... /usr/bin/gmake is GNU make
checking the price for bergulian eckels... way to expensive!
checking for PERL_MODULES... $(top_srcdir)/lib/ZnapZend.pm $(top_srcdir)/lib/ZnapZend/Config.pm $(top_srcdir)/lib/ZnapZend/Time.pm $(top_srcdir)/lib/ZnapZend/ZFS.pm $(top_srcdir)/lib/inheritLevels.pm
checking for PERL_CONFIG_VERSION... 5.38
checking for PERL_THIRDPARTY_DIST cache... empty
configure: Generating "data" files from templates, see below for executable scripts
configure: Generating templated script files that should be marked executable
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating thirdparty/Makefile
config.status: creating lib/Makefile
config.status: creating debian/Makefile
config.status: creating debian/znapzend.links
config.status: creating init/znapzend.service
config.status: creating init/znapzend.xml
config.status: WARNING:  'init/znapzend.xml.in' seems to ignore the --datarootdir setting
config.status: creating init/org.znapzend.plist
config.status: creating init/znapzend.freebsd
config.status: creating init/znapzend.sysv
config.status: creating init/znapzend.upstart

** CONFIGURE DONE **********************************************

Settings:

  PERL5LIB = not set
  PERL = /usr/bin/perl
  SVCINSTALLDIR = no
  URL_CAT = /usr/bin/wget -O -
  DEB_BUILD = false

The Makefiles should be portable to the best extent of our testing,
but their recipes should most certainly succeed with GNU make.
It is recommended that now you continue installation with

  /usr/bin/gmake install

Making all in lib
Making all in thirdparty
donutci-oi-main --> 1 job
/usr/bin/wget -O - https://cpanmin.us > bin/cpanm
donutci-oi-main --> Job output
/usr/bin/wget -O - https://cpanmin.us > bin/cpanm
--2024-03-12 11:12:02--  https://cpanmin.us/
Resolving cpanmin.us (cpanmin.us)... 151.101.194.217, 151.101.2.217, 151.101.130.217, ...
Connecting to cpanmin.us (cpanmin.us)|151.101.194.217|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 302419 (295K) [text/plain]
Saving to: ‘STDOUT’

     0K .......... .......... .......... .......... .......... 16% 41.0M 0s
    50K .......... .......... .......... .......... .......... 33% 66.2M 0s
   100K .......... .......... .......... .......... .......... 50% 93.8M 0s
   150K .......... .......... .......... .......... .......... 67% 63.5M 0s
   200K .......... .......... .......... .......... .......... 84%  129M 0s
   250K .......... .......... .......... .......... .....     100%  111M=0.004s

2024-03-12 11:12:03 (72.2 MB/s) - written to stdout [302419/302419]

donutci-oi-main --> 1 job
test -x carton/bin/carton || PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty /usr/bin/perl bin/cpanm -q --notest --local-lib-contained /tmp/znapzend/thirdparty/carton Carton Date::Parse
donutci-oi-main --> Job output
test -x carton/bin/carton || PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty /usr/bin/perl bin/cpanm -q --notest --local-lib-contained /tmp/znapzend/thirdparty/carton Carton Date::Parse
Successfully installed Module-CPANfile-1.1004
Successfully installed CPAN-Meta-Check-0.018
Successfully installed ExtUtils-MakeMaker-CPANfile-0.09
Successfully installed Parse-PMFile-0.45
Successfully installed File-Which-1.27
Successfully installed IPC-Run3-0.049
Successfully installed HTTP-Tinyish-0.19
Successfully installed local-lib-2.000029
Successfully installed Class-Tiny-1.008
Successfully installed CPAN-DistnameInfo-0.12
Successfully installed Tie-Handle-Offset-0.004
Successfully installed URI-5.27
Successfully installed CPAN-Common-Index-0.010
Successfully installed ExtUtils-Config-0.008
Successfully installed String-ShellQuote-1.04
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed Capture-Tiny-0.48
Successfully installed File-pushd-1.016
Successfully installed ExtUtils-Helpers-0.026
Successfully installed Win32-ShellQuote-0.003001
Successfully installed Menlo-1.9019
Successfully installed Menlo-Legacy-1.9022
Successfully installed Try-Tiny-0.31
Successfully installed Path-Tiny-0.144
Successfully installed Carton-v1.0.35
Successfully installed TimeDate-2.33
26 distributions installed
donutci-oi-main --> 1 job
test -f cpanfile-5.38.snapshot && cp cpanfile-5.38.snapshot ../cpanfile.snapshot || true
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
mv ../cpanfile.snapshot cpanfile-5.38.snapshot
donutci-oi-main --> Job output
** Installing Dependencies using Carton install
test -f cpanfile-5.38.snapshot && cp cpanfile-5.38.snapshot ../cpanfile.snapshot || true
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend/cpanfile
Successfully installed Mojolicious-9.36
Successfully installed ExtUtils-Config-0.008
Successfully installed ExtUtils-Helpers-0.026
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed Module-Build-Tiny-0.047
Successfully installed Class-Method-Modifiers-2.15
Successfully installed Role-Tiny-2.002004
Successfully installed Mojo-Log-Clearable-1.001
8 distributions installed
Complete! Modules were installed into /tmp/znapzend/thirdparty
mv ../cpanfile.snapshot cpanfile-5.38.snapshot
donutci-oi-main --> 1 job
cp cpanfile-5.38.snapshot ../cpanfile.snapshot
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
donutci-oi-main --> Job output
** Installing Dependencies using cpanfile-5.38.snapshot
cp cpanfile-5.38.snapshot ../cpanfile.snapshot
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend/cpanfile
Complete! Modules were installed into /tmp/znapzend/thirdparty
Making all in debian
Making install in lib
donutci-oi-main --> 1 job
donutci-oi-main --> Job output
 /usr/bin/gmkdir -p '/tmp/zzz/usr/lib'
 /usr/bin/gmkdir -p '/tmp/zzz/usr/lib/../lib/ZnapZend'
 /usr/bin/ginstall -c -m 644  ../lib/ZnapZend/Config.pm ../lib/ZnapZend/Time.pm ../lib/ZnapZend/ZFS.pm '/tmp/zzz/usr/lib/../lib/ZnapZend'
 /usr/bin/gmkdir -p '/tmp/zzz/usr/lib/../lib'
 /usr/bin/ginstall -c -m 644  ../lib/ZnapZend.pm ../lib/inheritLevels.pm '/tmp/zzz/usr/lib/../lib'
Making install in thirdparty
make  install-exec-hook
donutci-oi-main --> 1 job
cp -fr lib/perl5/* /tmp/zzz/usr/lib
Making install in debian
donutci-oi-main --> 1 job
donutci-oi-main --> 2 jobs
donutci-oi-main --> 3 jobs
donutci-oi-main --> Job output
 /usr/bin/gmkdir -p '/tmp/zzz/usr/bin'
 /usr/bin/ginstall -c bin/znapzend bin/znapzendzetup bin/znapzendztatz '/tmp/zzz/usr/bin'
donutci-oi-main --> Job output
 /usr/bin/gmkdir -p '/tmp/zzz/usr/share/man/man1'
 /usr/bin/ginstall -c -m 644 man/znapzend.1 man/znapzendzetup.1 man/znapzendztatz.1 '/tmp/zzz/usr/share/man/man1'
make  install-exec-hook
donutci-oi-main --> 1 job
[ "" = "" ] || cd "/tmp/zzz/usr" && /usr/bin/perl -i -p -e 's{.*# PERL5LIB}{use lib qw(); # PERL5LIB}' bin/znapzend bin/znapzendzetup bin/znapzendztatz || true
cd "/tmp/zzz/usr" && /usr/bin/perl -i -p -e 's{^use .*# LIBDIR}{use lib qw(/usr/lib); # LIBDIR}' bin/znapzend bin/znapzendzetup bin/znapzendztatz
cd "/tmp/zzz/usr" && /usr/bin/perl -i -p -e 's{^#!.*perl.*}{#!/usr/bin/perl};' bin/znapzend bin/znapzendzetup bin/znapzendztatz
  • INSTALLED FOOTPRINT (OpenIndiana):
:; (cd /tmp/zzz && find .) | LC_ALL=C sort -n
.
./usr
./usr/bin
./usr/bin/znapzend
./usr/bin/znapzendzetup
./usr/bin/znapzendztatz
./usr/lib
./usr/lib/5.38.2
./usr/lib/5.38.2/i86pc-solaris-thread-multi-64
./usr/lib/Class
./usr/lib/Class/Method
./usr/lib/Class/Method/Modifiers.pm
./usr/lib/ExtUtils
./usr/lib/ExtUtils/Config.pm
./usr/lib/ExtUtils/Helpers
./usr/lib/ExtUtils/Helpers.pm
./usr/lib/ExtUtils/Helpers/Unix.pm
./usr/lib/ExtUtils/Helpers/VMS.pm
./usr/lib/ExtUtils/Helpers/Windows.pm
./usr/lib/ExtUtils/InstallPaths.pm
./usr/lib/Module
./usr/lib/Module/Build
./usr/lib/Module/Build/Tiny.pm
./usr/lib/Mojo
./usr/lib/Mojo.pm
./usr/lib/Mojo/Asset
./usr/lib/Mojo/Asset.pm
./usr/lib/Mojo/Asset/File.pm
./usr/lib/Mojo/Asset/Memory.pm
./usr/lib/Mojo/Base.pm
./usr/lib/Mojo/ByteStream.pm
./usr/lib/Mojo/Cache.pm
./usr/lib/Mojo/Collection.pm
./usr/lib/Mojo/Content
./usr/lib/Mojo/Content.pm
./usr/lib/Mojo/Content/MultiPart.pm
./usr/lib/Mojo/Content/Single.pm
./usr/lib/Mojo/Cookie
./usr/lib/Mojo/Cookie.pm
./usr/lib/Mojo/Cookie/Request.pm
./usr/lib/Mojo/Cookie/Response.pm
./usr/lib/Mojo/DOM
./usr/lib/Mojo/DOM.pm
./usr/lib/Mojo/DOM/CSS.pm
./usr/lib/Mojo/DOM/HTML.pm
./usr/lib/Mojo/Date.pm
./usr/lib/Mojo/DynamicMethods.pm
./usr/lib/Mojo/EventEmitter.pm
./usr/lib/Mojo/Exception.pm
./usr/lib/Mojo/File.pm
./usr/lib/Mojo/Headers.pm
./usr/lib/Mojo/HelloWorld.pm
./usr/lib/Mojo/Home.pm
./usr/lib/Mojo/IOLoop
./usr/lib/Mojo/IOLoop.pm
./usr/lib/Mojo/IOLoop/Client.pm
./usr/lib/Mojo/IOLoop/Server.pm
./usr/lib/Mojo/IOLoop/Stream.pm
./usr/lib/Mojo/IOLoop/Subprocess.pm
./usr/lib/Mojo/IOLoop/TLS.pm
./usr/lib/Mojo/IOLoop/resources
./usr/lib/Mojo/IOLoop/resources/server.crt
./usr/lib/Mojo/IOLoop/resources/server.key
./usr/lib/Mojo/JSON
./usr/lib/Mojo/JSON.pm
./usr/lib/Mojo/JSON/Pointer.pm
./usr/lib/Mojo/Loader.pm
./usr/lib/Mojo/Log
./usr/lib/Mojo/Log.pm
./usr/lib/Mojo/Log/Clearable.pm
./usr/lib/Mojo/Log/Role
./usr/lib/Mojo/Log/Role/Clearable.pm
./usr/lib/Mojo/Message
./usr/lib/Mojo/Message.pm
./usr/lib/Mojo/Message/Request.pm
./usr/lib/Mojo/Message/Response.pm
./usr/lib/Mojo/Parameters.pm
./usr/lib/Mojo/Path.pm
./usr/lib/Mojo/Promise.pm
./usr/lib/Mojo/Reactor
./usr/lib/Mojo/Reactor.pm
./usr/lib/Mojo/Reactor/EV.pm
./usr/lib/Mojo/Reactor/Poll.pm
./usr/lib/Mojo/Server
./usr/lib/Mojo/Server.pm
./usr/lib/Mojo/Server/CGI.pm
./usr/lib/Mojo/Server/Daemon.pm
./usr/lib/Mojo/Server/Hypnotoad.pm
./usr/lib/Mojo/Server/Morbo
./usr/lib/Mojo/Server/Morbo.pm
./usr/lib/Mojo/Server/Morbo/Backend
./usr/lib/Mojo/Server/Morbo/Backend.pm
./usr/lib/Mojo/Server/Morbo/Backend/Poll.pm
./usr/lib/Mojo/Server/PSGI.pm
./usr/lib/Mojo/Server/Prefork.pm
./usr/lib/Mojo/Template.pm
./usr/lib/Mojo/Transaction
./usr/lib/Mojo/Transaction.pm
./usr/lib/Mojo/Transaction/HTTP.pm
./usr/lib/Mojo/Transaction/WebSocket.pm
./usr/lib/Mojo/URL.pm
./usr/lib/Mojo/Upload.pm
./usr/lib/Mojo/UserAgent
./usr/lib/Mojo/UserAgent.pm
./usr/lib/Mojo/UserAgent/CookieJar.pm
./usr/lib/Mojo/UserAgent/Proxy.pm
./usr/lib/Mojo/UserAgent/Server.pm
./usr/lib/Mojo/UserAgent/Transactor.pm
./usr/lib/Mojo/Util.pm
./usr/lib/Mojo/WebSocket.pm
./usr/lib/Mojo/resources
./usr/lib/Mojo/resources/html_entities.txt
./usr/lib/Mojolicious
./usr/lib/Mojolicious.pm
./usr/lib/Mojolicious/Command
./usr/lib/Mojolicious/Command.pm
./usr/lib/Mojolicious/Command/Author
./usr/lib/Mojolicious/Command/Author/cpanify.pm
./usr/lib/Mojolicious/Command/Author/generate
./usr/lib/Mojolicious/Command/Author/generate.pm
./usr/lib/Mojolicious/Command/Author/generate/app.pm
./usr/lib/Mojolicious/Command/Author/generate/dockerfile.pm
./usr/lib/Mojolicious/Command/Author/generate/lite_app.pm
./usr/lib/Mojolicious/Command/Author/generate/makefile.pm
./usr/lib/Mojolicious/Command/Author/generate/plugin.pm
./usr/lib/Mojolicious/Command/Author/inflate.pm
./usr/lib/Mojolicious/Command/cgi.pm
./usr/lib/Mojolicious/Command/daemon.pm
./usr/lib/Mojolicious/Command/eval.pm
./usr/lib/Mojolicious/Command/get.pm
./usr/lib/Mojolicious/Command/prefork.pm
./usr/lib/Mojolicious/Command/psgi.pm
./usr/lib/Mojolicious/Command/routes.pm
./usr/lib/Mojolicious/Command/version.pm
./usr/lib/Mojolicious/Commands.pm
./usr/lib/Mojolicious/Controller.pm
./usr/lib/Mojolicious/Guides
./usr/lib/Mojolicious/Guides.pod
./usr/lib/Mojolicious/Guides/Contributing.pod
./usr/lib/Mojolicious/Guides/Cookbook.pod
./usr/lib/Mojolicious/Guides/FAQ.pod
./usr/lib/Mojolicious/Guides/Growing.pod
./usr/lib/Mojolicious/Guides/Rendering.pod
./usr/lib/Mojolicious/Guides/Routing.pod
./usr/lib/Mojolicious/Guides/Testing.pod
./usr/lib/Mojolicious/Guides/Tutorial.pod
./usr/lib/Mojolicious/Lite.pm
./usr/lib/Mojolicious/Plugin
./usr/lib/Mojolicious/Plugin.pm
./usr/lib/Mojolicious/Plugin/Config.pm
./usr/lib/Mojolicious/Plugin/DefaultHelpers.pm
./usr/lib/Mojolicious/Plugin/EPLRenderer.pm
./usr/lib/Mojolicious/Plugin/EPRenderer.pm
./usr/lib/Mojolicious/Plugin/HeaderCondition.pm
./usr/lib/Mojolicious/Plugin/JSONConfig.pm
./usr/lib/Mojolicious/Plugin/Mount.pm
./usr/lib/Mojolicious/Plugin/NotYAMLConfig.pm
./usr/lib/Mojolicious/Plugin/TagHelpers.pm
./usr/lib/Mojolicious/Plugins.pm
./usr/lib/Mojolicious/Renderer.pm
./usr/lib/Mojolicious/Routes
./usr/lib/Mojolicious/Routes.pm
./usr/lib/Mojolicious/Routes/Match.pm
./usr/lib/Mojolicious/Routes/Pattern.pm
./usr/lib/Mojolicious/Routes/Route.pm
./usr/lib/Mojolicious/Sessions.pm
./usr/lib/Mojolicious/Static.pm
./usr/lib/Mojolicious/Types.pm
./usr/lib/Mojolicious/Validator
./usr/lib/Mojolicious/Validator.pm
./usr/lib/Mojolicious/Validator/Validation.pm
./usr/lib/Mojolicious/resources
./usr/lib/Mojolicious/resources/public
./usr/lib/Mojolicious/resources/public/favicon.ico
./usr/lib/Mojolicious/resources/public/mojo
./usr/lib/Mojolicious/resources/public/mojo/bootstrap
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.css
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.js
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.min.css.map
./usr/lib/Mojolicious/resources/public/mojo/failraptor.png
./usr/lib/Mojolicious/resources/public/mojo/highlight.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight-mojo-dark.css
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight.min.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/mojolicious.min.js
./usr/lib/Mojolicious/resources/public/mojo/logo-white-2x.png
./usr/lib/Mojolicious/resources/public/mojo/logo-white.png
./usr/lib/Mojolicious/resources/public/mojo/logo.png
./usr/lib/Mojolicious/resources/public/mojo/mojo.css
./usr/lib/Mojolicious/resources/public/mojo/noraptor.png
./usr/lib/Mojolicious/resources/public/mojo/notfound.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-dark.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-light.png
./usr/lib/Mojolicious/resources/public/mojo/popper
./usr/lib/Mojolicious/resources/public/mojo/popper/popper.js
./usr/lib/Mojolicious/resources/templates
./usr/lib/Mojolicious/resources/templates/mojo
./usr/lib/Mojolicious/resources/templates/mojo/debug.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/exception.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/not_found.html.ep
./usr/lib/Role
./usr/lib/Role/Tiny
./usr/lib/Role/Tiny.pm
./usr/lib/Role/Tiny/With.pm
./usr/lib/Test
./usr/lib/Test/Mojo.pm
./usr/lib/ZnapZend
./usr/lib/ZnapZend.pm
./usr/lib/ZnapZend/Config.pm
./usr/lib/ZnapZend/Time.pm
./usr/lib/ZnapZend/ZFS.pm
./usr/lib/i86pc-solaris-thread-multi-64
./usr/lib/i86pc-solaris-thread-multi-64/.meta
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Class-Method-Modifiers-2.15
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Class-Method-Modifiers-2.15/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Class-Method-Modifiers-2.15/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Config-0.008
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Config-0.008/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Config-0.008/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Helpers-0.026
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Helpers-0.026/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Helpers-0.026/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-InstallPaths-0.012
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-InstallPaths-0.012/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-InstallPaths-0.012/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Module-Build-Tiny-0.047
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Module-Build-Tiny-0.047/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Module-Build-Tiny-0.047/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojo-Log-Clearable-1.001
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojo-Log-Clearable-1.001/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojo-Log-Clearable-1.001/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojolicious-9.36
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojolicious-9.36/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojolicious-9.36/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Role-Tiny-2.002004
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Role-Tiny-2.002004/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Role-Tiny-2.002004/install.json
./usr/lib/i86pc-solaris-thread-multi-64/auto
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class/Method
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class/Method/Modifiers
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class/Method/Modifiers/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Config
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Config/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Helpers
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Helpers/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/InstallPaths
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/InstallPaths/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module/Build
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module/Build/Tiny
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module/Build/Tiny/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo/Log
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo/Log/Clearable
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo/Log/Clearable/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojolicious
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojolicious/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Role
./usr/lib/i86pc-solaris-thread-multi-64/auto/Role/Tiny
./usr/lib/i86pc-solaris-thread-multi-64/auto/Role/Tiny/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/perllocal.pod
./usr/lib/inheritLevels.pm
./usr/lib/ojo.pm
./usr/share
./usr/share/man
./usr/share/man/man1
./usr/share/man/man1/znapzend.1
./usr/share/man/man1/znapzendzetup.1
./usr/share/man/man1/znapzendztatz.1
./var
./var/svc
./var/svc/manifest
./var/svc/manifest/site
./var/svc/manifest/site/znapzend.xml

@jimklimov
Copy link
Contributor Author

jimklimov commented Mar 12, 2024

  • BSD MAKE (parallel):
:; ./bootstrap.sh && ./configure --prefix=/usr && make -j 8 && make -j 8 DESTDIR=/tmp/zzz install
autoreconf-2.69: Entering directory `.'
autoreconf-2.69: configure.ac: not using Gettext
autoreconf-2.69: running: aclocal --force
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: configure.ac: tracing
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: configure.ac: not using Libtool
autoreconf-2.69: running: /usr/local/bin/autoconf-2.69 --force
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: configure.ac: not using Autoheader
autoreconf-2.69: running: automake --add-missing --copy --force-missing
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: no config.status: cannot re-make
autoreconf-2.69: Leaving directory `.'
checking in to see how you are doing... keep fighting man!
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... conftools/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1029' is supported by ustar format... yes
checking whether GID '1029' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... (cached) yes
checking for perl... /usr/local/bin/perl
checking for curl... /usr/local/bin/curl
checking for wget... no
checking for pod2man... /usr/local/bin/pod2man
checking for rm... /bin/rm
checking for CONFIG_YEAR and CONFIG_DATE... got 2024 and 2024-03-12 respectively
checking default SMF service name... oep/znapzend
checking for way to cat URLs... /usr/local/bin/curl --location --insecure
checking for perl version greater than or equal to 5.16.0... checking is perl reasonably complete... yes. ExtUtils::MakeMaker is available
checking if require a c compiler to get perl modules compiled... no
checking for grep that handles long lines and -e... /usr/bin/grep
checking for gnumake... no
checking for gmake... /usr/local/bin/gmake
checking for gnu make availability... /usr/local/bin/gmake is GNU make
checking the price for bergulian eckels... way to expensive!
checking for PERL_MODULES... $(top_srcdir)/lib/ZnapZend/Time.pm $(top_srcdir)/lib/ZnapZend/ZFS.pm $(top_srcdir)/lib/ZnapZend/Config.pm $(top_srcdir)/lib/inheritLevels.pm $(top_srcdir)/lib/ZnapZend.pm
checking for PERL_CONFIG_VERSION... 5.32
checking for PERL_THIRDPARTY_DIST cache... empty
configure: Generating "data" files from templates, see below for executable scripts
configure: Generating templated script files that should be marked executable
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating thirdparty/Makefile
config.status: creating lib/Makefile
config.status: creating debian/Makefile
config.status: creating debian/znapzend.links
config.status: creating init/znapzend.service
config.status: creating init/znapzend.xml
config.status: WARNING:  'init/znapzend.xml.in' seems to ignore the --datarootdir setting
config.status: creating init/org.znapzend.plist
config.status: creating init/znapzend.freebsd
config.status: creating init/znapzend.sysv
config.status: creating init/znapzend.upstart

** CONFIGURE DONE **********************************************

Settings:

  PERL5LIB = "not set"
  PERL = /usr/local/bin/perl
  SVCINSTALLDIR = no
  URL_CAT = /usr/local/bin/curl --location --insecure
  DEB_BUILD = false

The Makefiles should be portable to the best extent of our testing,
but their recipes should most certainly succeed with GNU make.
It is recommended that now you continue installation with

  /usr/local/bin/gmake install

--- all-recursive ---
Making all in lib
Making all in thirdparty
--- bin/cpanm ---
/usr/local/bin/curl --location --insecure https://cpanmin.us > bin/cpanm
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  295k  100  295k    0     0   660k      0 --:--:-- --:--:-- --:--:--  662k
--- carton/bin/carton ---
test -x carton/bin/carton || PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty /usr/local/bin/perl bin/cpanm -q --notest --local-lib-contained /tmp/znapzend/thirdparty/carton Carton Date::Parse
Successfully installed Path-Tiny-0.144
Successfully installed Try-Tiny-0.31
Successfully installed Module-CPANfile-1.1004
Successfully installed File-pushd-1.016
Successfully installed Win32-ShellQuote-0.003001
Successfully installed ExtUtils-Helpers-0.026
Successfully installed File-Which-1.27
Successfully installed IPC-Run3-0.049
Successfully installed HTTP-Tinyish-0.19
Successfully installed Class-Tiny-1.008
Successfully installed CPAN-DistnameInfo-0.12
Successfully installed URI-5.27
Successfully installed Tie-Handle-Offset-0.004
Successfully installed CPAN-Common-Index-0.010
Successfully installed Capture-Tiny-0.48
Successfully installed ExtUtils-Config-0.008
Successfully installed ExtUtils-MakeMaker-CPANfile-0.09
Successfully installed Parse-PMFile-0.45
Successfully installed local-lib-2.000029
Successfully installed String-ShellQuote-1.04
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed CPAN-Meta-Check-0.018
Successfully installed Menlo-1.9019
Successfully installed Menlo-Legacy-1.9022
Successfully installed Carton-v1.0.35
Successfully installed TimeDate-2.33
26 distributions installed
--- cpanfile-5.32.snapshot ---
** Installing Dependencies using Carton install
test -f cpanfile-5.32.snapshot && cp cpanfile-5.32.snapshot ../cpanfile.snapshot || true
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/local/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend/cpanfile
Successfully installed Mojolicious-9.36
Successfully installed ExtUtils-Helpers-0.026
Successfully installed ExtUtils-Config-0.008
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed Module-Build-Tiny-0.047
Successfully installed Role-Tiny-2.002004
Successfully installed Class-Method-Modifiers-2.15
Successfully installed Mojo-Log-Clearable-1.001
8 distributions installed
Complete! Modules were installed into /tmp/znapzend/thirdparty
mv ../cpanfile.snapshot cpanfile-5.32.snapshot
Making all in debian
--- install-recursive ---
Making install in lib
--- install-am ---
--- install-nobase_dataDATA ---
 ../conftools/install-sh -c -d '/tmp/zzz/usr/lib'
 ../conftools/install-sh -c -d '/tmp/zzz/usr/lib/../lib/ZnapZend'
 /usr/bin/install -c -m 644  ../lib/ZnapZend/Time.pm ../lib/ZnapZend/ZFS.pm ../lib/ZnapZend/Config.pm '/tmp/zzz/usr/lib/../lib/ZnapZend'
 ../conftools/install-sh -c -d '/tmp/zzz/usr/lib/../lib'
 /usr/bin/install -c -m 644  ../lib/inheritLevels.pm ../lib/ZnapZend.pm '/tmp/zzz/usr/lib/../lib'
Making install in thirdparty
--- install-am ---
--- install-exec-am ---
make  install-exec-hook
--- install-exec-hook ---
cp -fr lib/perl5/* /tmp/zzz/usr/lib
Making install in debian
--- install-am ---
--- install-am ---
--- install-svcDATA ---
--- install-dist_binSCRIPTS ---
--- install-imanDATA ---
--- install-dist_binSCRIPTS ---
 conftools/install-sh -c -d '/tmp/zzz/usr/bin'
--- install-imanDATA ---
 conftools/install-sh -c -d '/tmp/zzz/usr/share/man/man1'
 /usr/bin/install -c -m 644 man/znapzend.1 man/znapzendzetup.1 man/znapzendztatz.1 '/tmp/zzz/usr/share/man/man1'
--- install-dist_binSCRIPTS ---
 /usr/bin/install -c bin/znapzend bin/znapzendzetup bin/znapzendztatz '/tmp/zzz/usr/bin'
--- install-exec-am ---
make  install-exec-hook
--- install-exec-hook ---
[ "" = "" ] || cd "/tmp/zzz/usr" && /usr/local/bin/perl -i -p -e 's{.*# PERL5LIB}{use lib qw(); # PERL5LIB}' bin/znapzend bin/znapzendzetup bin/znapzendztatz || true
cd "/tmp/zzz/usr" && /usr/local/bin/perl -i -p -e 's{^use .*# LIBDIR}{use lib qw(/usr/lib); # LIBDIR}' bin/znapzend bin/znapzendzetup bin/znapzendztatz
cd "/tmp/zzz/usr" && /usr/local/bin/perl -i -p -e 's{^#!.*perl.*}{#!/usr/local/bin/perl};' bin/znapzend bin/znapzendzetup bin/znapzendztatz
  • INSTALLED FOOTPRINT (FreeBSD):
:; (cd /tmp/zzz && find .) | LC_ALL=C sort -n
.
./usr
./usr/bin
./usr/bin/znapzend
./usr/bin/znapzendzetup
./usr/bin/znapzendztatz
./usr/lib
./usr/lib/5.32.1
./usr/lib/5.32.1/amd64-freebsd-thread-multi
./usr/lib/Class
./usr/lib/Class/Method
./usr/lib/Class/Method/Modifiers.pm
./usr/lib/ExtUtils
./usr/lib/ExtUtils/Config.pm
./usr/lib/ExtUtils/Helpers
./usr/lib/ExtUtils/Helpers.pm
./usr/lib/ExtUtils/Helpers/Unix.pm
./usr/lib/ExtUtils/Helpers/VMS.pm
./usr/lib/ExtUtils/Helpers/Windows.pm
./usr/lib/ExtUtils/InstallPaths.pm
./usr/lib/Module
./usr/lib/Module/Build
./usr/lib/Module/Build/Tiny.pm
./usr/lib/Mojo
./usr/lib/Mojo.pm
./usr/lib/Mojo/Asset
./usr/lib/Mojo/Asset.pm
./usr/lib/Mojo/Asset/File.pm
./usr/lib/Mojo/Asset/Memory.pm
./usr/lib/Mojo/Base.pm
./usr/lib/Mojo/ByteStream.pm
./usr/lib/Mojo/Cache.pm
./usr/lib/Mojo/Collection.pm
./usr/lib/Mojo/Content
./usr/lib/Mojo/Content.pm
./usr/lib/Mojo/Content/MultiPart.pm
./usr/lib/Mojo/Content/Single.pm
./usr/lib/Mojo/Cookie
./usr/lib/Mojo/Cookie.pm
./usr/lib/Mojo/Cookie/Request.pm
./usr/lib/Mojo/Cookie/Response.pm
./usr/lib/Mojo/DOM
./usr/lib/Mojo/DOM.pm
./usr/lib/Mojo/DOM/CSS.pm
./usr/lib/Mojo/DOM/HTML.pm
./usr/lib/Mojo/Date.pm
./usr/lib/Mojo/DynamicMethods.pm
./usr/lib/Mojo/EventEmitter.pm
./usr/lib/Mojo/Exception.pm
./usr/lib/Mojo/File.pm
./usr/lib/Mojo/Headers.pm
./usr/lib/Mojo/HelloWorld.pm
./usr/lib/Mojo/Home.pm
./usr/lib/Mojo/IOLoop
./usr/lib/Mojo/IOLoop.pm
./usr/lib/Mojo/IOLoop/Client.pm
./usr/lib/Mojo/IOLoop/Server.pm
./usr/lib/Mojo/IOLoop/Stream.pm
./usr/lib/Mojo/IOLoop/Subprocess.pm
./usr/lib/Mojo/IOLoop/TLS.pm
./usr/lib/Mojo/IOLoop/resources
./usr/lib/Mojo/IOLoop/resources/server.crt
./usr/lib/Mojo/IOLoop/resources/server.key
./usr/lib/Mojo/JSON
./usr/lib/Mojo/JSON.pm
./usr/lib/Mojo/JSON/Pointer.pm
./usr/lib/Mojo/Loader.pm
./usr/lib/Mojo/Log
./usr/lib/Mojo/Log.pm
./usr/lib/Mojo/Log/Clearable.pm
./usr/lib/Mojo/Log/Role
./usr/lib/Mojo/Log/Role/Clearable.pm
./usr/lib/Mojo/Message
./usr/lib/Mojo/Message.pm
./usr/lib/Mojo/Message/Request.pm
./usr/lib/Mojo/Message/Response.pm
./usr/lib/Mojo/Parameters.pm
./usr/lib/Mojo/Path.pm
./usr/lib/Mojo/Promise.pm
./usr/lib/Mojo/Reactor
./usr/lib/Mojo/Reactor.pm
./usr/lib/Mojo/Reactor/EV.pm
./usr/lib/Mojo/Reactor/Poll.pm
./usr/lib/Mojo/Server
./usr/lib/Mojo/Server.pm
./usr/lib/Mojo/Server/CGI.pm
./usr/lib/Mojo/Server/Daemon.pm
./usr/lib/Mojo/Server/Hypnotoad.pm
./usr/lib/Mojo/Server/Morbo
./usr/lib/Mojo/Server/Morbo.pm
./usr/lib/Mojo/Server/Morbo/Backend
./usr/lib/Mojo/Server/Morbo/Backend.pm
./usr/lib/Mojo/Server/Morbo/Backend/Poll.pm
./usr/lib/Mojo/Server/PSGI.pm
./usr/lib/Mojo/Server/Prefork.pm
./usr/lib/Mojo/Template.pm
./usr/lib/Mojo/Transaction
./usr/lib/Mojo/Transaction.pm
./usr/lib/Mojo/Transaction/HTTP.pm
./usr/lib/Mojo/Transaction/WebSocket.pm
./usr/lib/Mojo/URL.pm
./usr/lib/Mojo/Upload.pm
./usr/lib/Mojo/UserAgent
./usr/lib/Mojo/UserAgent.pm
./usr/lib/Mojo/UserAgent/CookieJar.pm
./usr/lib/Mojo/UserAgent/Proxy.pm
./usr/lib/Mojo/UserAgent/Server.pm
./usr/lib/Mojo/UserAgent/Transactor.pm
./usr/lib/Mojo/Util.pm
./usr/lib/Mojo/WebSocket.pm
./usr/lib/Mojo/resources
./usr/lib/Mojo/resources/html_entities.txt
./usr/lib/Mojolicious
./usr/lib/Mojolicious.pm
./usr/lib/Mojolicious/Command
./usr/lib/Mojolicious/Command.pm
./usr/lib/Mojolicious/Command/Author
./usr/lib/Mojolicious/Command/Author/cpanify.pm
./usr/lib/Mojolicious/Command/Author/generate
./usr/lib/Mojolicious/Command/Author/generate.pm
./usr/lib/Mojolicious/Command/Author/generate/app.pm
./usr/lib/Mojolicious/Command/Author/generate/dockerfile.pm
./usr/lib/Mojolicious/Command/Author/generate/lite_app.pm
./usr/lib/Mojolicious/Command/Author/generate/makefile.pm
./usr/lib/Mojolicious/Command/Author/generate/plugin.pm
./usr/lib/Mojolicious/Command/Author/inflate.pm
./usr/lib/Mojolicious/Command/cgi.pm
./usr/lib/Mojolicious/Command/daemon.pm
./usr/lib/Mojolicious/Command/eval.pm
./usr/lib/Mojolicious/Command/get.pm
./usr/lib/Mojolicious/Command/prefork.pm
./usr/lib/Mojolicious/Command/psgi.pm
./usr/lib/Mojolicious/Command/routes.pm
./usr/lib/Mojolicious/Command/version.pm
./usr/lib/Mojolicious/Commands.pm
./usr/lib/Mojolicious/Controller.pm
./usr/lib/Mojolicious/Guides
./usr/lib/Mojolicious/Guides.pod
./usr/lib/Mojolicious/Guides/Contributing.pod
./usr/lib/Mojolicious/Guides/Cookbook.pod
./usr/lib/Mojolicious/Guides/FAQ.pod
./usr/lib/Mojolicious/Guides/Growing.pod
./usr/lib/Mojolicious/Guides/Rendering.pod
./usr/lib/Mojolicious/Guides/Routing.pod
./usr/lib/Mojolicious/Guides/Testing.pod
./usr/lib/Mojolicious/Guides/Tutorial.pod
./usr/lib/Mojolicious/Lite.pm
./usr/lib/Mojolicious/Plugin
./usr/lib/Mojolicious/Plugin.pm
./usr/lib/Mojolicious/Plugin/Config.pm
./usr/lib/Mojolicious/Plugin/DefaultHelpers.pm
./usr/lib/Mojolicious/Plugin/EPLRenderer.pm
./usr/lib/Mojolicious/Plugin/EPRenderer.pm
./usr/lib/Mojolicious/Plugin/HeaderCondition.pm
./usr/lib/Mojolicious/Plugin/JSONConfig.pm
./usr/lib/Mojolicious/Plugin/Mount.pm
./usr/lib/Mojolicious/Plugin/NotYAMLConfig.pm
./usr/lib/Mojolicious/Plugin/TagHelpers.pm
./usr/lib/Mojolicious/Plugins.pm
./usr/lib/Mojolicious/Renderer.pm
./usr/lib/Mojolicious/Routes
./usr/lib/Mojolicious/Routes.pm
./usr/lib/Mojolicious/Routes/Match.pm
./usr/lib/Mojolicious/Routes/Pattern.pm
./usr/lib/Mojolicious/Routes/Route.pm
./usr/lib/Mojolicious/Sessions.pm
./usr/lib/Mojolicious/Static.pm
./usr/lib/Mojolicious/Types.pm
./usr/lib/Mojolicious/Validator
./usr/lib/Mojolicious/Validator.pm
./usr/lib/Mojolicious/Validator/Validation.pm
./usr/lib/Mojolicious/resources
./usr/lib/Mojolicious/resources/public
./usr/lib/Mojolicious/resources/public/favicon.ico
./usr/lib/Mojolicious/resources/public/mojo
./usr/lib/Mojolicious/resources/public/mojo/bootstrap
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.css
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.js
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.min.css.map
./usr/lib/Mojolicious/resources/public/mojo/failraptor.png
./usr/lib/Mojolicious/resources/public/mojo/highlight.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight-mojo-dark.css
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight.min.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/mojolicious.min.js
./usr/lib/Mojolicious/resources/public/mojo/logo-white-2x.png
./usr/lib/Mojolicious/resources/public/mojo/logo-white.png
./usr/lib/Mojolicious/resources/public/mojo/logo.png
./usr/lib/Mojolicious/resources/public/mojo/mojo.css
./usr/lib/Mojolicious/resources/public/mojo/noraptor.png
./usr/lib/Mojolicious/resources/public/mojo/notfound.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-dark.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-light.png
./usr/lib/Mojolicious/resources/public/mojo/popper
./usr/lib/Mojolicious/resources/public/mojo/popper/popper.js
./usr/lib/Mojolicious/resources/templates
./usr/lib/Mojolicious/resources/templates/mojo
./usr/lib/Mojolicious/resources/templates/mojo/debug.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/exception.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/not_found.html.ep
./usr/lib/Role
./usr/lib/Role/Tiny
./usr/lib/Role/Tiny.pm
./usr/lib/Role/Tiny/With.pm
./usr/lib/Test
./usr/lib/Test/Mojo.pm
./usr/lib/ZnapZend
./usr/lib/ZnapZend.pm
./usr/lib/ZnapZend/Config.pm
./usr/lib/ZnapZend/Time.pm
./usr/lib/ZnapZend/ZFS.pm
./usr/lib/amd64-freebsd-thread-multi
./usr/lib/amd64-freebsd-thread-multi/.meta
./usr/lib/amd64-freebsd-thread-multi/.meta/Class-Method-Modifiers-2.15
./usr/lib/amd64-freebsd-thread-multi/.meta/Class-Method-Modifiers-2.15/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Class-Method-Modifiers-2.15/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Config-0.008
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Config-0.008/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Config-0.008/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Helpers-0.026
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Helpers-0.026/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Helpers-0.026/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-InstallPaths-0.012
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-InstallPaths-0.012/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-InstallPaths-0.012/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Module-Build-Tiny-0.047
./usr/lib/amd64-freebsd-thread-multi/.meta/Module-Build-Tiny-0.047/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Module-Build-Tiny-0.047/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojo-Log-Clearable-1.001
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojo-Log-Clearable-1.001/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojo-Log-Clearable-1.001/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojolicious-9.36
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojolicious-9.36/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojolicious-9.36/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Role-Tiny-2.002004
./usr/lib/amd64-freebsd-thread-multi/.meta/Role-Tiny-2.002004/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Role-Tiny-2.002004/install.json
./usr/lib/amd64-freebsd-thread-multi/auto
./usr/lib/amd64-freebsd-thread-multi/auto/Class
./usr/lib/amd64-freebsd-thread-multi/auto/Class/Method
./usr/lib/amd64-freebsd-thread-multi/auto/Class/Method/Modifiers
./usr/lib/amd64-freebsd-thread-multi/auto/Class/Method/Modifiers/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Config
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Config/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Helpers
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Helpers/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/InstallPaths
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/InstallPaths/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Module
./usr/lib/amd64-freebsd-thread-multi/auto/Module/Build
./usr/lib/amd64-freebsd-thread-multi/auto/Module/Build/Tiny
./usr/lib/amd64-freebsd-thread-multi/auto/Module/Build/Tiny/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo/Log
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo/Log/Clearable
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo/Log/Clearable/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Mojolicious
./usr/lib/amd64-freebsd-thread-multi/auto/Mojolicious/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Role
./usr/lib/amd64-freebsd-thread-multi/auto/Role/Tiny
./usr/lib/amd64-freebsd-thread-multi/auto/Role/Tiny/.packlist
./usr/lib/amd64-freebsd-thread-multi/perllocal.pod
./usr/lib/inheritLevels.pm
./usr/lib/ojo.pm
./usr/share
./usr/share/man
./usr/share/man/man1
./usr/share/man/man1/znapzend.1
./usr/share/man/man1/znapzendzetup.1
./usr/share/man/man1/znapzendztatz.1

@jimklimov
Copy link
Contributor Author

For comparison, GNU Make build with current master (fails for parallel make due to issue fixed by 9acade5, so cherry-picked it for comparability). Parallel gmake from scratch still fails on FreeBSD (in perl module download/build phase), passes on OI.

  • GNU Make on OI (fully parallel):
:; ./bootstrap.sh && ./configure --prefix=/usr && gmake && gmake -j 8 DESTDIR=/tmp/zzz-gnu install
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: /usr/bin/autoconf --force
configure.ac:4: warning: AC_INIT: not a literal: "m4_esyscmd(tr -d '\n' < VERSION)"
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --force-missing
autoreconf: 'conftools/install-sh' is updated
autoreconf: no config.status: cannot re-make
autoreconf: Leaving directory '.'
checking in to see how you are doing... keep fighting man!
checking for a BSD-compatible install... /usr/bin/ginstall -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/gmkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '0' is supported by ustar format... yes
checking whether GID '0' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... (cached) yes
checking for perl... /usr/bin/perl
checking for curl... /usr/bin/curl
checking for wget... /usr/bin/wget
checking for pod2man... /usr/bin/pod2man
checking for rm... /usr/bin/rm
checking default SMF service name... oep/znapzend
checking for way to cat URLs... /usr/bin/wget -O -
checking for perl version greater than or equal to 5.16.0... checking is perl reasonably complete... yes. ExtUtils::MakeMaker is available
checking if require a c compiler to get perl modules compiled... no
checking for grep that handles long lines and -e... /usr/bin/ggrep
checking for gnumake... no
checking for gmake... /usr/bin/gmake
checking for gnu make availability... /usr/bin/gmake is GNU make
checking the price for bergulian eckels... way to expensive!
configure: Generating "data" files from templates, see below for executable scripts
configure: Generating templated script files that should be marked executable
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating thirdparty/Makefile
config.status: creating lib/Makefile
config.status: creating debian/Makefile
config.status: creating debian/znapzend.links
config.status: creating init/znapzend.service
config.status: creating init/znapzend.xml
config.status: WARNING:  'init/znapzend.xml.in' seems to ignore the --datarootdir setting
config.status: creating init/org.znapzend.plist
config.status: creating init/znapzend.freebsd
config.status: creating init/znapzend.sysv
config.status: creating init/znapzend.upstart

** CONFIGURE DONE **********************************************

Settings:

  PERL5LIB = not set
  PERL = /usr/bin/perl
  SVCINSTALLDIR = no
  URL_CAT = /usr/bin/wget -O -
  DEB_BUILD = false

The Makefiles use GNU make functionality.
Continue installation with

  /usr/bin/gmake install

Making all in lib
gmake[1]: Entering directory '/tmp/znapzend-master/lib'
gmake[1]: Nothing to be done for 'all'.
gmake[1]: Leaving directory '/tmp/znapzend-master/lib'
Making all in thirdparty
gmake[1]: Entering directory '/tmp/znapzend-master/thirdparty'
/usr/bin/wget -O - https://cpanmin.us > bin/cpanm
--2024-03-12 11:29:30--  https://cpanmin.us/
Resolving cpanmin.us (cpanmin.us)... 151.101.66.217, 151.101.2.217, 151.101.194.217, ...
Connecting to cpanmin.us (cpanmin.us)|151.101.66.217|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 302419 (295K) [text/plain]
Saving to: ‘STDOUT’

-                         100%[==================================>] 295.33K  --.-KB/s    in 0.1s

2024-03-12 11:29:30 (2.93 MB/s) - written to stdout [302419/302419]

test -x carton/bin/carton || PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend-master/thirdparty /usr/bin/perl bin/cpanm -q --notest --local-lib-contained /tmp/znapzend-master/thirdparty/carton Carton Date::Parse
Successfully installed Class-Tiny-1.008
Successfully installed Module-CPANfile-1.1004
Successfully installed File-Which-1.27
Successfully installed IPC-Run3-0.049
Successfully installed HTTP-Tinyish-0.19
Successfully installed File-pushd-1.016
Successfully installed ExtUtils-Helpers-0.026
Successfully installed local-lib-2.000029
Successfully installed Win32-ShellQuote-0.003001
Successfully installed CPAN-DistnameInfo-0.12
Successfully installed ExtUtils-Config-0.008
Successfully installed CPAN-Meta-Check-0.018
Successfully installed Capture-Tiny-0.48
Successfully installed ExtUtils-MakeMaker-CPANfile-0.09
Successfully installed Parse-PMFile-0.45
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed String-ShellQuote-1.04
Successfully installed URI-5.27
Successfully installed Tie-Handle-Offset-0.004
Successfully installed CPAN-Common-Index-0.010
Successfully installed Menlo-1.9019
Successfully installed Menlo-Legacy-1.9022
Successfully installed Try-Tiny-0.31
Successfully installed Path-Tiny-0.144
Successfully installed Carton-v1.0.35
Successfully installed TimeDate-2.33
26 distributions installed
** Installing Dependencies using Carton install
test -f cpanfile-5.38.snapshot && cp cpanfile-5.38.snapshot ../cpanfile.snapshot || true
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend-master/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend-master/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend-master/thirdparty /usr/bin/perl /tmp/znapzend-master/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend-master/cpanfile
Successfully installed ExtUtils-Config-0.008
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed ExtUtils-Helpers-0.026
Successfully installed Module-Build-Tiny-0.047
Successfully installed Mojolicious-9.36
Successfully installed Class-Method-Modifiers-2.15
Successfully installed Role-Tiny-2.002004
Successfully installed Mojo-Log-Clearable-1.001
8 distributions installed
Complete! Modules were installed into /tmp/znapzend-master/thirdparty
mv ../cpanfile.snapshot cpanfile-5.38.snapshot
** Installing Dependencies using cpanfile-5.38.snapshot
cp cpanfile-5.38.snapshot ../cpanfile.snapshot
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend-master/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend-master/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend-master/thirdparty /usr/bin/perl /tmp/znapzend-master/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend-master/cpanfile
Complete! Modules were installed into /tmp/znapzend-master/thirdparty
gmake[1]: Leaving directory '/tmp/znapzend-master/thirdparty'
Making all in debian
gmake[1]: Entering directory '/tmp/znapzend-master/debian'
gmake[1]: Nothing to be done for 'all'.
gmake[1]: Leaving directory '/tmp/znapzend-master/debian'
gmake[1]: Entering directory '/tmp/znapzend-master'
gmake[1]: Nothing to be done for 'all-am'.
gmake[1]: Leaving directory '/tmp/znapzend-master'
Making install in lib
gmake[1]: Entering directory '/tmp/znapzend-master/lib'
gmake[2]: Entering directory '/tmp/znapzend-master/lib'
gmake[2]: Nothing to be done for 'install-exec-am'.
 /usr/bin/gmkdir -p '/tmp/zzz-gnu/usr/lib'
 /usr/bin/ginstall -c -m 644  ./ZnapZend.pm ./inheritLevels.pm '/tmp/zzz-gnu/usr/lib/.'
 /usr/bin/gmkdir -p '/tmp/zzz-gnu/usr/lib/ZnapZend'
 /usr/bin/ginstall -c -m 644  ./ZnapZend/Config.pm ./ZnapZend/Time.pm ./ZnapZend/ZFS.pm '/tmp/zzz-gnu/usr/lib/ZnapZend'
gmake[2]: Leaving directory '/tmp/znapzend-master/lib'
gmake[1]: Leaving directory '/tmp/znapzend-master/lib'
Making install in thirdparty
gmake[1]: Entering directory '/tmp/znapzend-master/thirdparty'
gmake[2]: Entering directory '/tmp/znapzend-master/thirdparty'
gmake  install-exec-hook
gmake[2]: Nothing to be done for 'install-data-am'.
gmake[3]: Entering directory '/tmp/znapzend-master/thirdparty'
cp -fr lib/perl5/* /tmp/zzz-gnu/usr/lib
gmake[3]: Leaving directory '/tmp/znapzend-master/thirdparty'
gmake[2]: Leaving directory '/tmp/znapzend-master/thirdparty'
gmake[1]: Leaving directory '/tmp/znapzend-master/thirdparty'
Making install in debian
gmake[1]: Entering directory '/tmp/znapzend-master/debian'
gmake[2]: Entering directory '/tmp/znapzend-master/debian'
gmake[2]: Nothing to be done for 'install-exec-am'.
gmake[2]: Nothing to be done for 'install-data-am'.
gmake[2]: Leaving directory '/tmp/znapzend-master/debian'
gmake[1]: Leaving directory '/tmp/znapzend-master/debian'
gmake[1]: Entering directory '/tmp/znapzend-master'
gmake[2]: Entering directory '/tmp/znapzend-master'
 /usr/bin/gmkdir -p '/tmp/zzz-gnu/usr/share/man/man1'
 /usr/bin/gmkdir -p '/tmp/zzz-gnu/usr/bin'
 /usr/bin/ginstall -c -m 644 man/znapzend.1 man/znapzendzetup.1 man/znapzendztatz.1 '/tmp/zzz-gnu/usr/share/man/man1'
 /usr/bin/ginstall -c bin/znapzend bin/znapzendzetup bin/znapzendztatz '/tmp/zzz-gnu/usr/bin'
gmake  install-exec-hook
gmake[3]: Entering directory '/tmp/znapzend-master'
[ "" = "" ] || cd "/tmp/zzz-gnu/usr" && /usr/bin/perl -i -p -e 's{.*# PERL5LIB}{use lib qw(); # PERL5LIB}' bin/znapzend bin/znapzendzetup bin/znapzendztatz || true
cd "/tmp/zzz-gnu/usr" && /usr/bin/perl -i -p -e 's{^use .*# LIBDIR}{use lib qw(/usr/lib); # LIBDIR}' bin/znapzend bin/znapzendzetup bin/znapzendztatz
cd "/tmp/zzz-gnu/usr" && /usr/bin/perl -i -p -e 's{^#!.*perl.*}{#!/usr/bin/perl};' bin/znapzend bin/znapzendzetup bin/znapzendztatz
gmake[3]: Leaving directory '/tmp/znapzend-master'
gmake[2]: Leaving directory '/tmp/znapzend-master'
gmake[1]: Leaving directory '/tmp/znapzend-master'
  • GNU Make on FreeBSD (semi-parallel):
:; ./bootstrap.sh && ./configure --prefix=/usr && gmake && gmake -j 8 DESTDIR=/tmp/zzz-gnu install
autoreconf-2.69: Entering directory `.'
autoreconf-2.69: configure.ac: not using Gettext
autoreconf-2.69: running: aclocal --force
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: configure.ac: tracing
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: configure.ac: not using Libtool
autoreconf-2.69: running: /usr/local/bin/autoconf-2.69 --force
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: configure.ac: not using Autoheader
autoreconf-2.69: running: automake --add-missing --copy --force-missing
configure.ac:4: warning: AC_INIT: not a literal: m4_esyscmd(tr -d '\n' < VERSION)
autoreconf-2.69: no config.status: cannot re-make
autoreconf-2.69: Leaving directory `.'
checking in to see how you are doing... keep fighting man!
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... conftools/install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '1029' is supported by ustar format... yes
checking whether GID '1029' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... (cached) yes
checking for perl... /usr/local/bin/perl
checking for curl... /usr/local/bin/curl
checking for wget... no
checking for pod2man... /usr/local/bin/pod2man
checking for rm... /bin/rm
checking default SMF service name... oep/znapzend
checking for way to cat URLs... /usr/local/bin/curl --location --insecure
checking for perl version greater than or equal to 5.16.0... checking is perl reasonably complete... yes. ExtUtils::MakeMaker is available
checking if require a c compiler to get perl modules compiled... no
checking for grep that handles long lines and -e... /usr/bin/grep
checking for gnumake... no
checking for gmake... /usr/local/bin/gmake
checking for gnu make availability... /usr/local/bin/gmake is GNU make
checking the price for bergulian eckels... way to expensive!
configure: Generating "data" files from templates, see below for executable scripts
configure: Generating templated script files that should be marked executable
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating thirdparty/Makefile
config.status: creating lib/Makefile
config.status: creating debian/Makefile
config.status: creating debian/znapzend.links
config.status: creating init/znapzend.service
config.status: creating init/znapzend.xml
config.status: WARNING:  'init/znapzend.xml.in' seems to ignore the --datarootdir setting
config.status: creating init/org.znapzend.plist
config.status: creating init/znapzend.freebsd
config.status: creating init/znapzend.sysv
config.status: creating init/znapzend.upstart

** CONFIGURE DONE **********************************************

Settings:

  PERL5LIB = "not set"
  PERL = /usr/local/bin/perl
  SVCINSTALLDIR = no
  URL_CAT = /usr/local/bin/curl --location --insecure
  DEB_BUILD = false

The Makefiles use GNU make functionality.
Continue installation with

  /usr/local/bin/gmake install

Making all in lib
gmake[1]: Entering directory '/tmp/znapzend/lib'
gmake[1]: Nothing to be done for 'all'.
gmake[1]: Leaving directory '/tmp/znapzend/lib'
Making all in thirdparty
gmake[1]: Entering directory '/tmp/znapzend/thirdparty'
/usr/local/bin/curl --location --insecure https://cpanmin.us > bin/cpanm
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  295k  100  295k    0     0  1612k      0 --:--:-- --:--:-- --:--:-- 1622k
test -x carton/bin/carton || PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty /usr/local/bin/perl bin/cpanm -q --notest --local-lib-contained /tmp/znapzend/thirdparty/carton Carton Date::Parse
Successfully installed Path-Tiny-0.144
Successfully installed Try-Tiny-0.31
Successfully installed ExtUtils-Config-0.008
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed Module-CPANfile-1.1004
Successfully installed ExtUtils-MakeMaker-CPANfile-0.09
Successfully installed Parse-PMFile-0.45
Successfully installed File-Which-1.27
Successfully installed File-pushd-1.016
Successfully installed IPC-Run3-0.049
Successfully installed HTTP-Tinyish-0.19
Successfully installed Capture-Tiny-0.48
Successfully installed Tie-Handle-Offset-0.004
Successfully installed Class-Tiny-1.008
Successfully installed CPAN-DistnameInfo-0.12
Successfully installed URI-5.27
Successfully installed CPAN-Common-Index-0.010
Successfully installed local-lib-2.000029
Successfully installed Win32-ShellQuote-0.003001
Successfully installed CPAN-Meta-Check-0.018
Successfully installed ExtUtils-Helpers-0.026
Successfully installed String-ShellQuote-1.04
Successfully installed Menlo-1.9019
Successfully installed Menlo-Legacy-1.9022
Successfully installed Carton-v1.0.35
Successfully installed TimeDate-2.33
26 distributions installed
** Installing Dependencies using Carton install
test -f cpanfile-5.32.snapshot && cp cpanfile-5.32.snapshot ../cpanfile.snapshot || true
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/local/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend/cpanfile
Successfully installed Mojolicious-9.36
Successfully installed ExtUtils-Config-0.008
Successfully installed ExtUtils-Helpers-0.026
Successfully installed ExtUtils-InstallPaths-0.012
Successfully installed Module-Build-Tiny-0.047
Successfully installed Class-Method-Modifiers-2.15
Successfully installed Role-Tiny-2.002004
Successfully installed Mojo-Log-Clearable-1.001
8 distributions installed
Complete! Modules were installed into /tmp/znapzend/thirdparty
mv ../cpanfile.snapshot cpanfile-5.32.snapshot
** Installing Dependencies using cpanfile-5.32.snapshot
cp cpanfile-5.32.snapshot ../cpanfile.snapshot
PERL_CPANM_OPT= PERL_CPANM_HOME=/tmp/znapzend/thirdparty DBD_ODBC_UNICODE=1 PERL5LIB=/tmp/znapzend/thirdparty/carton/lib/perl5 PERL_CARTON_PATH=/tmp/znapzend/thirdparty /usr/local/bin/perl /tmp/znapzend/thirdparty/carton/bin/carton install
Installing modules using /tmp/znapzend/cpanfile
Complete! Modules were installed into /tmp/znapzend/thirdparty
gmake[1]: Leaving directory '/tmp/znapzend/thirdparty'
Making all in debian
gmake[1]: Entering directory '/tmp/znapzend/debian'
gmake[1]: Nothing to be done for 'all'.
gmake[1]: Leaving directory '/tmp/znapzend/debian'
gmake[1]: Entering directory '/tmp/znapzend'
  GEN      man/znapzend.1
  GEN      man/znapzendzetup.1
  GEN      man/znapzendztatz.1
gmake[1]: Leaving directory '/tmp/znapzend'
Making install in lib
gmake[1]: Entering directory '/tmp/znapzend/lib'
gmake[2]: Entering directory '/tmp/znapzend/lib'
gmake[2]: Nothing to be done for 'install-exec-am'.
 ../conftools/install-sh -c -d '/tmp/zzz-gnu/usr/lib'
 ../conftools/install-sh -c -d '/tmp/zzz-gnu/usr/lib/ZnapZend'
 /usr/bin/install -c -m 644  ./ZnapZend/Time.pm ./ZnapZend/ZFS.pm ./ZnapZend/Config.pm '/tmp/zzz-gnu/usr/lib/ZnapZend'
 /usr/bin/install -c -m 644  ./inheritLevels.pm ./ZnapZend.pm '/tmp/zzz-gnu/usr/lib/.'
gmake[2]: Leaving directory '/tmp/znapzend/lib'
gmake[1]: Leaving directory '/tmp/znapzend/lib'
Making install in thirdparty
gmake[1]: Entering directory '/tmp/znapzend/thirdparty'
gmake[2]: Entering directory '/tmp/znapzend/thirdparty'
gmake  install-exec-hook
gmake[2]: Nothing to be done for 'install-data-am'.
gmake[3]: Entering directory '/tmp/znapzend/thirdparty'
cp -fr lib/perl5/* /tmp/zzz-gnu/usr/lib
gmake[3]: Leaving directory '/tmp/znapzend/thirdparty'
gmake[2]: Leaving directory '/tmp/znapzend/thirdparty'
gmake[1]: Leaving directory '/tmp/znapzend/thirdparty'
Making install in debian
gmake[1]: Entering directory '/tmp/znapzend/debian'
gmake[2]: Entering directory '/tmp/znapzend/debian'
gmake[2]: Nothing to be done for 'install-exec-am'.
gmake[2]: Nothing to be done for 'install-data-am'.
gmake[2]: Leaving directory '/tmp/znapzend/debian'
gmake[1]: Leaving directory '/tmp/znapzend/debian'
gmake[1]: Entering directory '/tmp/znapzend'
gmake[2]: Entering directory '/tmp/znapzend'
 conftools/install-sh -c -d '/tmp/zzz-gnu/usr/bin'
 conftools/install-sh -c -d '/tmp/zzz-gnu/usr/share/man/man1'
 /usr/bin/install -c -m 644 man/znapzend.1 man/znapzendzetup.1 man/znapzendztatz.1 '/tmp/zzz-gnu/usr/share/man/man1'
 /usr/bin/install -c bin/znapzend bin/znapzendzetup bin/znapzendztatz '/tmp/zzz-gnu/usr/bin'
gmake  install-exec-hook
gmake[3]: Entering directory '/tmp/znapzend'
[ "" = "" ] || cd "/tmp/zzz-gnu/usr" && /usr/local/bin/perl -i -p -e 's{.*# PERL5LIB}{use lib qw(); # PERL5LIB}' bin/znapzend bin/znapzendzetup bin/znapzendztatz || true
cd "/tmp/zzz-gnu/usr" && /usr/local/bin/perl -i -p -e 's{^use .*# LIBDIR}{use lib qw(/usr/lib); # LIBDIR}' bin/znapzend bin/znapzendzetup bin/znapzendztatz
cd "/tmp/zzz-gnu/usr" && /usr/local/bin/perl -i -p -e 's{^#!.*perl.*}{#!/usr/local/bin/perl};' bin/znapzend bin/znapzendzetup bin/znapzendztatz
gmake[3]: Leaving directory '/tmp/znapzend'
gmake[2]: Leaving directory '/tmp/znapzend'
gmake[1]: Leaving directory '/tmp/znapzend'
  • INSTALLED FOOTPRINT with GNU Make on OI - identical to earlier post with Sun Make (modulo SMF files not confgured in copy-pasted commands here):
:; (cd /tmp/zzz-gnu && find .) | LC_ALL=C sort -n
.
./usr
./usr/bin
./usr/bin/znapzend
./usr/bin/znapzendzetup
./usr/bin/znapzendztatz
./usr/lib
./usr/lib/5.38.2
./usr/lib/5.38.2/i86pc-solaris-thread-multi-64
./usr/lib/Class
./usr/lib/Class/Method
./usr/lib/Class/Method/Modifiers.pm
./usr/lib/ExtUtils
./usr/lib/ExtUtils/Config.pm
./usr/lib/ExtUtils/Helpers
./usr/lib/ExtUtils/Helpers.pm
./usr/lib/ExtUtils/Helpers/Unix.pm
./usr/lib/ExtUtils/Helpers/VMS.pm
./usr/lib/ExtUtils/Helpers/Windows.pm
./usr/lib/ExtUtils/InstallPaths.pm
./usr/lib/Module
./usr/lib/Module/Build
./usr/lib/Module/Build/Tiny.pm
./usr/lib/Mojo
./usr/lib/Mojo.pm
./usr/lib/Mojo/Asset
./usr/lib/Mojo/Asset.pm
./usr/lib/Mojo/Asset/File.pm
./usr/lib/Mojo/Asset/Memory.pm
./usr/lib/Mojo/Base.pm
./usr/lib/Mojo/ByteStream.pm
./usr/lib/Mojo/Cache.pm
./usr/lib/Mojo/Collection.pm
./usr/lib/Mojo/Content
./usr/lib/Mojo/Content.pm
./usr/lib/Mojo/Content/MultiPart.pm
./usr/lib/Mojo/Content/Single.pm
./usr/lib/Mojo/Cookie
./usr/lib/Mojo/Cookie.pm
./usr/lib/Mojo/Cookie/Request.pm
./usr/lib/Mojo/Cookie/Response.pm
./usr/lib/Mojo/DOM
./usr/lib/Mojo/DOM.pm
./usr/lib/Mojo/DOM/CSS.pm
./usr/lib/Mojo/DOM/HTML.pm
./usr/lib/Mojo/Date.pm
./usr/lib/Mojo/DynamicMethods.pm
./usr/lib/Mojo/EventEmitter.pm
./usr/lib/Mojo/Exception.pm
./usr/lib/Mojo/File.pm
./usr/lib/Mojo/Headers.pm
./usr/lib/Mojo/HelloWorld.pm
./usr/lib/Mojo/Home.pm
./usr/lib/Mojo/IOLoop
./usr/lib/Mojo/IOLoop.pm
./usr/lib/Mojo/IOLoop/Client.pm
./usr/lib/Mojo/IOLoop/Server.pm
./usr/lib/Mojo/IOLoop/Stream.pm
./usr/lib/Mojo/IOLoop/Subprocess.pm
./usr/lib/Mojo/IOLoop/TLS.pm
./usr/lib/Mojo/IOLoop/resources
./usr/lib/Mojo/IOLoop/resources/server.crt
./usr/lib/Mojo/IOLoop/resources/server.key
./usr/lib/Mojo/JSON
./usr/lib/Mojo/JSON.pm
./usr/lib/Mojo/JSON/Pointer.pm
./usr/lib/Mojo/Loader.pm
./usr/lib/Mojo/Log
./usr/lib/Mojo/Log.pm
./usr/lib/Mojo/Log/Clearable.pm
./usr/lib/Mojo/Log/Role
./usr/lib/Mojo/Log/Role/Clearable.pm
./usr/lib/Mojo/Message
./usr/lib/Mojo/Message.pm
./usr/lib/Mojo/Message/Request.pm
./usr/lib/Mojo/Message/Response.pm
./usr/lib/Mojo/Parameters.pm
./usr/lib/Mojo/Path.pm
./usr/lib/Mojo/Promise.pm
./usr/lib/Mojo/Reactor
./usr/lib/Mojo/Reactor.pm
./usr/lib/Mojo/Reactor/EV.pm
./usr/lib/Mojo/Reactor/Poll.pm
./usr/lib/Mojo/Server
./usr/lib/Mojo/Server.pm
./usr/lib/Mojo/Server/CGI.pm
./usr/lib/Mojo/Server/Daemon.pm
./usr/lib/Mojo/Server/Hypnotoad.pm
./usr/lib/Mojo/Server/Morbo
./usr/lib/Mojo/Server/Morbo.pm
./usr/lib/Mojo/Server/Morbo/Backend
./usr/lib/Mojo/Server/Morbo/Backend.pm
./usr/lib/Mojo/Server/Morbo/Backend/Poll.pm
./usr/lib/Mojo/Server/PSGI.pm
./usr/lib/Mojo/Server/Prefork.pm
./usr/lib/Mojo/Template.pm
./usr/lib/Mojo/Transaction
./usr/lib/Mojo/Transaction.pm
./usr/lib/Mojo/Transaction/HTTP.pm
./usr/lib/Mojo/Transaction/WebSocket.pm
./usr/lib/Mojo/URL.pm
./usr/lib/Mojo/Upload.pm
./usr/lib/Mojo/UserAgent
./usr/lib/Mojo/UserAgent.pm
./usr/lib/Mojo/UserAgent/CookieJar.pm
./usr/lib/Mojo/UserAgent/Proxy.pm
./usr/lib/Mojo/UserAgent/Server.pm
./usr/lib/Mojo/UserAgent/Transactor.pm
./usr/lib/Mojo/Util.pm
./usr/lib/Mojo/WebSocket.pm
./usr/lib/Mojo/resources
./usr/lib/Mojo/resources/html_entities.txt
./usr/lib/Mojolicious
./usr/lib/Mojolicious.pm
./usr/lib/Mojolicious/Command
./usr/lib/Mojolicious/Command.pm
./usr/lib/Mojolicious/Command/Author
./usr/lib/Mojolicious/Command/Author/cpanify.pm
./usr/lib/Mojolicious/Command/Author/generate
./usr/lib/Mojolicious/Command/Author/generate.pm
./usr/lib/Mojolicious/Command/Author/generate/app.pm
./usr/lib/Mojolicious/Command/Author/generate/dockerfile.pm
./usr/lib/Mojolicious/Command/Author/generate/lite_app.pm
./usr/lib/Mojolicious/Command/Author/generate/makefile.pm
./usr/lib/Mojolicious/Command/Author/generate/plugin.pm
./usr/lib/Mojolicious/Command/Author/inflate.pm
./usr/lib/Mojolicious/Command/cgi.pm
./usr/lib/Mojolicious/Command/daemon.pm
./usr/lib/Mojolicious/Command/eval.pm
./usr/lib/Mojolicious/Command/get.pm
./usr/lib/Mojolicious/Command/prefork.pm
./usr/lib/Mojolicious/Command/psgi.pm
./usr/lib/Mojolicious/Command/routes.pm
./usr/lib/Mojolicious/Command/version.pm
./usr/lib/Mojolicious/Commands.pm
./usr/lib/Mojolicious/Controller.pm
./usr/lib/Mojolicious/Guides
./usr/lib/Mojolicious/Guides.pod
./usr/lib/Mojolicious/Guides/Contributing.pod
./usr/lib/Mojolicious/Guides/Cookbook.pod
./usr/lib/Mojolicious/Guides/FAQ.pod
./usr/lib/Mojolicious/Guides/Growing.pod
./usr/lib/Mojolicious/Guides/Rendering.pod
./usr/lib/Mojolicious/Guides/Routing.pod
./usr/lib/Mojolicious/Guides/Testing.pod
./usr/lib/Mojolicious/Guides/Tutorial.pod
./usr/lib/Mojolicious/Lite.pm
./usr/lib/Mojolicious/Plugin
./usr/lib/Mojolicious/Plugin.pm
./usr/lib/Mojolicious/Plugin/Config.pm
./usr/lib/Mojolicious/Plugin/DefaultHelpers.pm
./usr/lib/Mojolicious/Plugin/EPLRenderer.pm
./usr/lib/Mojolicious/Plugin/EPRenderer.pm
./usr/lib/Mojolicious/Plugin/HeaderCondition.pm
./usr/lib/Mojolicious/Plugin/JSONConfig.pm
./usr/lib/Mojolicious/Plugin/Mount.pm
./usr/lib/Mojolicious/Plugin/NotYAMLConfig.pm
./usr/lib/Mojolicious/Plugin/TagHelpers.pm
./usr/lib/Mojolicious/Plugins.pm
./usr/lib/Mojolicious/Renderer.pm
./usr/lib/Mojolicious/Routes
./usr/lib/Mojolicious/Routes.pm
./usr/lib/Mojolicious/Routes/Match.pm
./usr/lib/Mojolicious/Routes/Pattern.pm
./usr/lib/Mojolicious/Routes/Route.pm
./usr/lib/Mojolicious/Sessions.pm
./usr/lib/Mojolicious/Static.pm
./usr/lib/Mojolicious/Types.pm
./usr/lib/Mojolicious/Validator
./usr/lib/Mojolicious/Validator.pm
./usr/lib/Mojolicious/Validator/Validation.pm
./usr/lib/Mojolicious/resources
./usr/lib/Mojolicious/resources/public
./usr/lib/Mojolicious/resources/public/favicon.ico
./usr/lib/Mojolicious/resources/public/mojo
./usr/lib/Mojolicious/resources/public/mojo/bootstrap
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.css
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.js
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.min.css.map
./usr/lib/Mojolicious/resources/public/mojo/failraptor.png
./usr/lib/Mojolicious/resources/public/mojo/highlight.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight-mojo-dark.css
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight.min.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/mojolicious.min.js
./usr/lib/Mojolicious/resources/public/mojo/logo-white-2x.png
./usr/lib/Mojolicious/resources/public/mojo/logo-white.png
./usr/lib/Mojolicious/resources/public/mojo/logo.png
./usr/lib/Mojolicious/resources/public/mojo/mojo.css
./usr/lib/Mojolicious/resources/public/mojo/noraptor.png
./usr/lib/Mojolicious/resources/public/mojo/notfound.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-dark.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-light.png
./usr/lib/Mojolicious/resources/public/mojo/popper
./usr/lib/Mojolicious/resources/public/mojo/popper/popper.js
./usr/lib/Mojolicious/resources/templates
./usr/lib/Mojolicious/resources/templates/mojo
./usr/lib/Mojolicious/resources/templates/mojo/debug.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/exception.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/not_found.html.ep
./usr/lib/Role
./usr/lib/Role/Tiny
./usr/lib/Role/Tiny.pm
./usr/lib/Role/Tiny/With.pm
./usr/lib/Test
./usr/lib/Test/Mojo.pm
./usr/lib/ZnapZend
./usr/lib/ZnapZend.pm
./usr/lib/ZnapZend/Config.pm
./usr/lib/ZnapZend/Time.pm
./usr/lib/ZnapZend/ZFS.pm
./usr/lib/i86pc-solaris-thread-multi-64
./usr/lib/i86pc-solaris-thread-multi-64/.meta
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Class-Method-Modifiers-2.15
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Class-Method-Modifiers-2.15/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Class-Method-Modifiers-2.15/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Config-0.008
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Config-0.008/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Config-0.008/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Helpers-0.026
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Helpers-0.026/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-Helpers-0.026/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-InstallPaths-0.012
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-InstallPaths-0.012/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/ExtUtils-InstallPaths-0.012/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Module-Build-Tiny-0.047
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Module-Build-Tiny-0.047/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Module-Build-Tiny-0.047/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojo-Log-Clearable-1.001
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojo-Log-Clearable-1.001/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojo-Log-Clearable-1.001/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojolicious-9.36
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojolicious-9.36/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Mojolicious-9.36/install.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Role-Tiny-2.002004
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Role-Tiny-2.002004/MYMETA.json
./usr/lib/i86pc-solaris-thread-multi-64/.meta/Role-Tiny-2.002004/install.json
./usr/lib/i86pc-solaris-thread-multi-64/auto
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class/Method
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class/Method/Modifiers
./usr/lib/i86pc-solaris-thread-multi-64/auto/Class/Method/Modifiers/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Config
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Config/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Helpers
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/Helpers/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/InstallPaths
./usr/lib/i86pc-solaris-thread-multi-64/auto/ExtUtils/InstallPaths/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module/Build
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module/Build/Tiny
./usr/lib/i86pc-solaris-thread-multi-64/auto/Module/Build/Tiny/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo/Log
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo/Log/Clearable
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojo/Log/Clearable/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojolicious
./usr/lib/i86pc-solaris-thread-multi-64/auto/Mojolicious/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/auto/Role
./usr/lib/i86pc-solaris-thread-multi-64/auto/Role/Tiny
./usr/lib/i86pc-solaris-thread-multi-64/auto/Role/Tiny/.packlist
./usr/lib/i86pc-solaris-thread-multi-64/perllocal.pod
./usr/lib/inheritLevels.pm
./usr/lib/ojo.pm
./usr/share
./usr/share/man
./usr/share/man/man1
./usr/share/man/man1/znapzend.1
./usr/share/man/man1/znapzendzetup.1
./usr/share/man/man1/znapzendztatz.1
  • INSTALLED FOOTPRINT with GNU Make on FreeBSD - identical to earlier post with BSD Make:
:; (cd /tmp/zzz-gnu && find .) | LC_ALL=C sort -n
.
./usr
./usr/bin
./usr/bin/znapzend
./usr/bin/znapzendzetup
./usr/bin/znapzendztatz
./usr/lib
./usr/lib/5.32.1
./usr/lib/5.32.1/amd64-freebsd-thread-multi
./usr/lib/Class
./usr/lib/Class/Method
./usr/lib/Class/Method/Modifiers.pm
./usr/lib/ExtUtils
./usr/lib/ExtUtils/Config.pm
./usr/lib/ExtUtils/Helpers
./usr/lib/ExtUtils/Helpers.pm
./usr/lib/ExtUtils/Helpers/Unix.pm
./usr/lib/ExtUtils/Helpers/VMS.pm
./usr/lib/ExtUtils/Helpers/Windows.pm
./usr/lib/ExtUtils/InstallPaths.pm
./usr/lib/Module
./usr/lib/Module/Build
./usr/lib/Module/Build/Tiny.pm
./usr/lib/Mojo
./usr/lib/Mojo.pm
./usr/lib/Mojo/Asset
./usr/lib/Mojo/Asset.pm
./usr/lib/Mojo/Asset/File.pm
./usr/lib/Mojo/Asset/Memory.pm
./usr/lib/Mojo/Base.pm
./usr/lib/Mojo/ByteStream.pm
./usr/lib/Mojo/Cache.pm
./usr/lib/Mojo/Collection.pm
./usr/lib/Mojo/Content
./usr/lib/Mojo/Content.pm
./usr/lib/Mojo/Content/MultiPart.pm
./usr/lib/Mojo/Content/Single.pm
./usr/lib/Mojo/Cookie
./usr/lib/Mojo/Cookie.pm
./usr/lib/Mojo/Cookie/Request.pm
./usr/lib/Mojo/Cookie/Response.pm
./usr/lib/Mojo/DOM
./usr/lib/Mojo/DOM.pm
./usr/lib/Mojo/DOM/CSS.pm
./usr/lib/Mojo/DOM/HTML.pm
./usr/lib/Mojo/Date.pm
./usr/lib/Mojo/DynamicMethods.pm
./usr/lib/Mojo/EventEmitter.pm
./usr/lib/Mojo/Exception.pm
./usr/lib/Mojo/File.pm
./usr/lib/Mojo/Headers.pm
./usr/lib/Mojo/HelloWorld.pm
./usr/lib/Mojo/Home.pm
./usr/lib/Mojo/IOLoop
./usr/lib/Mojo/IOLoop.pm
./usr/lib/Mojo/IOLoop/Client.pm
./usr/lib/Mojo/IOLoop/Server.pm
./usr/lib/Mojo/IOLoop/Stream.pm
./usr/lib/Mojo/IOLoop/Subprocess.pm
./usr/lib/Mojo/IOLoop/TLS.pm
./usr/lib/Mojo/IOLoop/resources
./usr/lib/Mojo/IOLoop/resources/server.crt
./usr/lib/Mojo/IOLoop/resources/server.key
./usr/lib/Mojo/JSON
./usr/lib/Mojo/JSON.pm
./usr/lib/Mojo/JSON/Pointer.pm
./usr/lib/Mojo/Loader.pm
./usr/lib/Mojo/Log
./usr/lib/Mojo/Log.pm
./usr/lib/Mojo/Log/Clearable.pm
./usr/lib/Mojo/Log/Role
./usr/lib/Mojo/Log/Role/Clearable.pm
./usr/lib/Mojo/Message
./usr/lib/Mojo/Message.pm
./usr/lib/Mojo/Message/Request.pm
./usr/lib/Mojo/Message/Response.pm
./usr/lib/Mojo/Parameters.pm
./usr/lib/Mojo/Path.pm
./usr/lib/Mojo/Promise.pm
./usr/lib/Mojo/Reactor
./usr/lib/Mojo/Reactor.pm
./usr/lib/Mojo/Reactor/EV.pm
./usr/lib/Mojo/Reactor/Poll.pm
./usr/lib/Mojo/Server
./usr/lib/Mojo/Server.pm
./usr/lib/Mojo/Server/CGI.pm
./usr/lib/Mojo/Server/Daemon.pm
./usr/lib/Mojo/Server/Hypnotoad.pm
./usr/lib/Mojo/Server/Morbo
./usr/lib/Mojo/Server/Morbo.pm
./usr/lib/Mojo/Server/Morbo/Backend
./usr/lib/Mojo/Server/Morbo/Backend.pm
./usr/lib/Mojo/Server/Morbo/Backend/Poll.pm
./usr/lib/Mojo/Server/PSGI.pm
./usr/lib/Mojo/Server/Prefork.pm
./usr/lib/Mojo/Template.pm
./usr/lib/Mojo/Transaction
./usr/lib/Mojo/Transaction.pm
./usr/lib/Mojo/Transaction/HTTP.pm
./usr/lib/Mojo/Transaction/WebSocket.pm
./usr/lib/Mojo/URL.pm
./usr/lib/Mojo/Upload.pm
./usr/lib/Mojo/UserAgent
./usr/lib/Mojo/UserAgent.pm
./usr/lib/Mojo/UserAgent/CookieJar.pm
./usr/lib/Mojo/UserAgent/Proxy.pm
./usr/lib/Mojo/UserAgent/Server.pm
./usr/lib/Mojo/UserAgent/Transactor.pm
./usr/lib/Mojo/Util.pm
./usr/lib/Mojo/WebSocket.pm
./usr/lib/Mojo/resources
./usr/lib/Mojo/resources/html_entities.txt
./usr/lib/Mojolicious
./usr/lib/Mojolicious.pm
./usr/lib/Mojolicious/Command
./usr/lib/Mojolicious/Command.pm
./usr/lib/Mojolicious/Command/Author
./usr/lib/Mojolicious/Command/Author/cpanify.pm
./usr/lib/Mojolicious/Command/Author/generate
./usr/lib/Mojolicious/Command/Author/generate.pm
./usr/lib/Mojolicious/Command/Author/generate/app.pm
./usr/lib/Mojolicious/Command/Author/generate/dockerfile.pm
./usr/lib/Mojolicious/Command/Author/generate/lite_app.pm
./usr/lib/Mojolicious/Command/Author/generate/makefile.pm
./usr/lib/Mojolicious/Command/Author/generate/plugin.pm
./usr/lib/Mojolicious/Command/Author/inflate.pm
./usr/lib/Mojolicious/Command/cgi.pm
./usr/lib/Mojolicious/Command/daemon.pm
./usr/lib/Mojolicious/Command/eval.pm
./usr/lib/Mojolicious/Command/get.pm
./usr/lib/Mojolicious/Command/prefork.pm
./usr/lib/Mojolicious/Command/psgi.pm
./usr/lib/Mojolicious/Command/routes.pm
./usr/lib/Mojolicious/Command/version.pm
./usr/lib/Mojolicious/Commands.pm
./usr/lib/Mojolicious/Controller.pm
./usr/lib/Mojolicious/Guides
./usr/lib/Mojolicious/Guides.pod
./usr/lib/Mojolicious/Guides/Contributing.pod
./usr/lib/Mojolicious/Guides/Cookbook.pod
./usr/lib/Mojolicious/Guides/FAQ.pod
./usr/lib/Mojolicious/Guides/Growing.pod
./usr/lib/Mojolicious/Guides/Rendering.pod
./usr/lib/Mojolicious/Guides/Routing.pod
./usr/lib/Mojolicious/Guides/Testing.pod
./usr/lib/Mojolicious/Guides/Tutorial.pod
./usr/lib/Mojolicious/Lite.pm
./usr/lib/Mojolicious/Plugin
./usr/lib/Mojolicious/Plugin.pm
./usr/lib/Mojolicious/Plugin/Config.pm
./usr/lib/Mojolicious/Plugin/DefaultHelpers.pm
./usr/lib/Mojolicious/Plugin/EPLRenderer.pm
./usr/lib/Mojolicious/Plugin/EPRenderer.pm
./usr/lib/Mojolicious/Plugin/HeaderCondition.pm
./usr/lib/Mojolicious/Plugin/JSONConfig.pm
./usr/lib/Mojolicious/Plugin/Mount.pm
./usr/lib/Mojolicious/Plugin/NotYAMLConfig.pm
./usr/lib/Mojolicious/Plugin/TagHelpers.pm
./usr/lib/Mojolicious/Plugins.pm
./usr/lib/Mojolicious/Renderer.pm
./usr/lib/Mojolicious/Routes
./usr/lib/Mojolicious/Routes.pm
./usr/lib/Mojolicious/Routes/Match.pm
./usr/lib/Mojolicious/Routes/Pattern.pm
./usr/lib/Mojolicious/Routes/Route.pm
./usr/lib/Mojolicious/Sessions.pm
./usr/lib/Mojolicious/Static.pm
./usr/lib/Mojolicious/Types.pm
./usr/lib/Mojolicious/Validator
./usr/lib/Mojolicious/Validator.pm
./usr/lib/Mojolicious/Validator/Validation.pm
./usr/lib/Mojolicious/resources
./usr/lib/Mojolicious/resources/public
./usr/lib/Mojolicious/resources/public/favicon.ico
./usr/lib/Mojolicious/resources/public/mojo
./usr/lib/Mojolicious/resources/public/mojo/bootstrap
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.css
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.js
./usr/lib/Mojolicious/resources/public/mojo/bootstrap/bootstrap.min.css.map
./usr/lib/Mojolicious/resources/public/mojo/failraptor.png
./usr/lib/Mojolicious/resources/public/mojo/highlight.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight-mojo-dark.css
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/highlight.min.js
./usr/lib/Mojolicious/resources/public/mojo/highlight.js/mojolicious.min.js
./usr/lib/Mojolicious/resources/public/mojo/logo-white-2x.png
./usr/lib/Mojolicious/resources/public/mojo/logo-white.png
./usr/lib/Mojolicious/resources/public/mojo/logo.png
./usr/lib/Mojolicious/resources/public/mojo/mojo.css
./usr/lib/Mojolicious/resources/public/mojo/noraptor.png
./usr/lib/Mojolicious/resources/public/mojo/notfound.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-dark.png
./usr/lib/Mojolicious/resources/public/mojo/pinstripe-light.png
./usr/lib/Mojolicious/resources/public/mojo/popper
./usr/lib/Mojolicious/resources/public/mojo/popper/popper.js
./usr/lib/Mojolicious/resources/templates
./usr/lib/Mojolicious/resources/templates/mojo
./usr/lib/Mojolicious/resources/templates/mojo/debug.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/exception.html.ep
./usr/lib/Mojolicious/resources/templates/mojo/not_found.html.ep
./usr/lib/Role
./usr/lib/Role/Tiny
./usr/lib/Role/Tiny.pm
./usr/lib/Role/Tiny/With.pm
./usr/lib/Test
./usr/lib/Test/Mojo.pm
./usr/lib/ZnapZend
./usr/lib/ZnapZend.pm
./usr/lib/ZnapZend/Config.pm
./usr/lib/ZnapZend/Time.pm
./usr/lib/ZnapZend/ZFS.pm
./usr/lib/amd64-freebsd-thread-multi
./usr/lib/amd64-freebsd-thread-multi/.meta
./usr/lib/amd64-freebsd-thread-multi/.meta/Class-Method-Modifiers-2.15
./usr/lib/amd64-freebsd-thread-multi/.meta/Class-Method-Modifiers-2.15/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Class-Method-Modifiers-2.15/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Config-0.008
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Config-0.008/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Config-0.008/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Helpers-0.026
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Helpers-0.026/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-Helpers-0.026/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-InstallPaths-0.012
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-InstallPaths-0.012/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/ExtUtils-InstallPaths-0.012/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Module-Build-Tiny-0.047
./usr/lib/amd64-freebsd-thread-multi/.meta/Module-Build-Tiny-0.047/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Module-Build-Tiny-0.047/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojo-Log-Clearable-1.001
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojo-Log-Clearable-1.001/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojo-Log-Clearable-1.001/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojolicious-9.36
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojolicious-9.36/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Mojolicious-9.36/install.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Role-Tiny-2.002004
./usr/lib/amd64-freebsd-thread-multi/.meta/Role-Tiny-2.002004/MYMETA.json
./usr/lib/amd64-freebsd-thread-multi/.meta/Role-Tiny-2.002004/install.json
./usr/lib/amd64-freebsd-thread-multi/auto
./usr/lib/amd64-freebsd-thread-multi/auto/Class
./usr/lib/amd64-freebsd-thread-multi/auto/Class/Method
./usr/lib/amd64-freebsd-thread-multi/auto/Class/Method/Modifiers
./usr/lib/amd64-freebsd-thread-multi/auto/Class/Method/Modifiers/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Config
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Config/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Helpers
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/Helpers/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/InstallPaths
./usr/lib/amd64-freebsd-thread-multi/auto/ExtUtils/InstallPaths/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Module
./usr/lib/amd64-freebsd-thread-multi/auto/Module/Build
./usr/lib/amd64-freebsd-thread-multi/auto/Module/Build/Tiny
./usr/lib/amd64-freebsd-thread-multi/auto/Module/Build/Tiny/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo/Log
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo/Log/Clearable
./usr/lib/amd64-freebsd-thread-multi/auto/Mojo/Log/Clearable/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Mojolicious
./usr/lib/amd64-freebsd-thread-multi/auto/Mojolicious/.packlist
./usr/lib/amd64-freebsd-thread-multi/auto/Role
./usr/lib/amd64-freebsd-thread-multi/auto/Role/Tiny
./usr/lib/amd64-freebsd-thread-multi/auto/Role/Tiny/.packlist
./usr/lib/amd64-freebsd-thread-multi/perllocal.pod
./usr/lib/inheritLevels.pm
./usr/lib/ojo.pm
./usr/share
./usr/share/man
./usr/share/man/man1
./usr/share/man/man1/znapzend.1
./usr/share/man/man1/znapzendzetup.1
./usr/share/man/man1/znapzendztatz.1

@jimklimov
Copy link
Contributor Author

Comparing the installed footprint contents, there are differences in PERL module areas (different wording/order of JSON markup in .packlist and install.json files), and minute differences in generated perllocal.pod files (timestamps, and paths - notably pointing to the git workspace directory used during build, not to ultimate system location).

Signed-off-by: Jim Klimov <jimklimov@gmail.com>
…n (breaks parallel make sometimes)

Signed-off-by: Jim Klimov <jimklimov@gmail.com>
… make syntax (do not require fiddling with GNU make envvars on non-Linux builds)

Signed-off-by: Jim Klimov <jimklimov@gmail.com>
@jimklimov
Copy link
Contributor Author

Docs updated, spell checker happy, done on my side for now :)

@oetiker
Copy link
Owner

oetiker commented Mar 12, 2024

Avoid GNUisms, allowing less fuss on BSD and illumos installs.

Checked with sequential and parallel builds/installs using Sun make on OpenIndiana 2023.10 and BSD make on FreeBSD 12.

:; git checkout -f && git clean -fdX && git status --ignored
:; ./bootstrap.sh && ./configure --prefix=/usr && make -j 8 && make -j 8 DESTDIR=/tmp/zzz install

"Screenshots" follow in posts below. To summarize them, comparing tests with GNU, Sun and BSD make this PR does not add regressions (or none were detected), and fixes parallel builds on top of that.

NOTE/question: @oetiker : Files like thirdparty/cpanfile-5.38.snapshot or thirdparty/cpanfile-5.32.snapshot (depending on OS perl version) appear and are explicitly not git-ignored nor cleaned away. One for 5.30 is in fact git-tracked. Should others be added?

yes the idea of the cpanfile-*snapshot files is to allow for reproducible builds with a given set of modules and a particular perl version ... updating these files for different perl version would certainly be cool ...

@oetiker oetiker merged commit e690f41 into oetiker:master Mar 12, 2024
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants