SQL-SimpleOps v2023.274.1 Perl 5 v5.38.0 OpenBSD.amd64-openbsd
- Status
- Pass
- From
- Nigel Horne
- Dist
-
SQL-SimpleOps v2023.274.1
- Platform
- Perl 5 v5.38.0 OpenBSD.amd64-openbsd
- Date
- 2023-10-09 08:05:26
- ID
- 9a95f1ee-667a-11ee-afe3-67ac684d068d
This distribution has been tested as part of the CPAN Testers
project, supporting the Perl programming language. See
http://wiki.cpantesters.org/ for more information or email
questions to cpan-testers-discuss@perl.org
--
Dear Carlos Celso de Almeida,
This is a computer-generated report for SQL-SimpleOps-2023.274.1
on perl 5.38.0, created by CPAN-Reporter-1.2019.
Thank you for uploading your work to CPAN. Congratulations!
All tests were successful.
Sections of this report:
* Tester comments
* Program output
* Prerequisites
* Environment and other context
------------------------------
TESTER COMMENTS
------------------------------
Additional comments from tester:
this report is from an automated smoke testing program
and was not reviewed by a human for accuracy
------------------------------
PROGRAM OUTPUT
------------------------------
Output from '/usr/bin/make test':
PERL_DL_NONLAZY=1 "/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/bin/perl5.38.0" "-MExtUtils::Command::MM" "-MTest::Harness" "-e" "undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
# No type of test found
# See README.txt before doing any test
t/testDB.t ..... ok
#
# ################################################################
# test: 010
# format: Delete( table=>"t1", force=>1 )
# rc: 0
# result: DELETE FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 011
# format: Delete( table=>"t1", where => [ fld => 123 ] )
# rc: 0
# result: DELETE FROM t1 WHERE fld = '123'
# status: SUCCESSFUL
# ################################################################
# test: 020
# format: Insert( table=>"t1", fields => { a => 1, b => 2, c => 3 } )
# rc: 0
# result: INSERT INTO t1 (a,b,c) VALUES ('1','2','3')
# status: SUCCESSFUL
# ################################################################
# test: 021
# format: Insert( table=>"t1", fields => [ "a","b","c" ], values => [ 1,2,3 ] )
# rc: 0
# result: INSERT INTO t1 (a,b,c) VALUES ('1','2','3')
# status: SUCCESSFUL
# ################################################################
# test: 030
# format: Update( table=>"t1", fields => { a => 1, b => 2 }, where => [ c => [ "!", 3 ] ] )
# rc: 0
# result: UPDATE t1 SET a = '1', b = '2' WHERE c != '3'
# status: SUCCESSFUL
# ################################################################
# test: 031
# format: Update( table=>"t1", fields => { a => '\concat(a,"xxxx")' }, force => 1 )
# rc: 0
# result: UPDATE t1 SET a = concat(a,"xxxx")
# status: SUCCESSFUL
# ################################################################
# test: 040
# format: Select( table=>"t1", fields => [ "a","b","c"] )
# rc: 0
# result: SELECT a, b, c FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 041
# format: Select( table=>"t1", fields => [ "a","b","c"], where => [ d=>4 ] )
# rc: 0
# result: SELECT a, b, c FROM t1 WHERE d = '4'
# status: SUCCESSFUL
# ################################################################
# test: 043
# format: Select( table=>"t1", fields => [ "a","b","c"], where => [ d=>4, e=>5 ] )
# rc: 0
# result: SELECT a, b, c FROM t1 WHERE d = '4' AND e = '5'
# status: SUCCESSFUL
# ################################################################
# test: 044
# format: Select( table=>"t1", fields => [ "a","b","c"], where => [ d=>'\substr(e,1,8)' ] )
# rc: 0
# result: SELECT a, b, c FROM t1 WHERE d = substr(e,1,8)
# status: SUCCESSFUL
# ################################################################
# test: 045
# format: Select( table=>["t1","t2"], fields => [ "t1.a","t2.b" ], where => [ 't1.a' => 't2.b' ] )
# rc: 0
# result: SELECT t1.a, t2.b FROM t1, t2 WHERE t1.a = t2.b
# status: SUCCESSFUL
# ################################################################
# test: 046
# format: Select( table=>"t1", fields => [ {"a"=>"aa"} ], where => [ 'a' => '0' ] )
# rc: 0
# result: SELECT a aa FROM t1 WHERE a = '0'
# status: SUCCESSFUL
# ################################################################
# test: 047
# format: Select( table=>"t1", fields => [ {"t1.a"=>"aa"} ], where => [ 't1.a' => '0' ] )
# rc: 0
# result: SELECT t1.a aa FROM t1 WHERE t1.a = '0'
# status: SUCCESSFUL
# ################################################################
# test: 048
# format: Select( table=>["t1","t2"], fields => [ {"t1.a"=>"aa"}, {"t2.b"=>"bb"} ], where => [ 't1.a' => 't2.b' ] )
# rc: 0
# result: SELECT t1.a aa, t2.b bb FROM t1, t2 WHERE t1.a = t2.b
# status: SUCCESSFUL
# ################################################################
# test: 049
# format: Select( table=>"t1", fields => [ {"sum(a)"=>"a1"}, {"sum(t1.a)"=>"a2"}, {"\sum(a)"=>"a3"} ], where => [ 'a' => '0' ] )
# rc: 0
# result: SELECT sum(a) a1, sum(t1.a) a2, sum(a) a3 FROM t1 WHERE a = '0'
# status: SUCCESSFUL
# ################################################################
# test: 050
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_TOP, limit=>100 )
# rc: 0
# note: Command=TOP, Cursor is empty
# result: SELECT a, b, c FROM t1 ORDER BY a ASC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 051
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_NEXT, limit=>100 )
# rc: 0
# note: Command=NEXT, Cursor is empty
# result: SELECT a, b, c FROM t1 ORDER BY a ASC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 052
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_BACK, limit=>100 )
# rc: 0
# note: Command=BACK, Cursor is empty
# result: SELECT a, b, c FROM t1 ORDER BY a DESC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 053
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_NEXT, limit=>100 )
# rc: 0
# note: Command=NEXT, Cursor is first(1) and last(100)
# result: SELECT a, b, c FROM t1 WHERE a > '100' ORDER BY a ASC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 054
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_BACK, limit=>100 )
# rc: 0
# note: Command=BACK, Cursor is first(101) and last(200)
# result: SELECT a, b, c FROM t1 WHERE a < '101' ORDER BY a DESC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 055
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_RELOAD, limit=>100 )
# rc: 0
# note: Command=RELOAD, Cursor is first(1) and last(100)
# result: SELECT a, b, c FROM t1 WHERE a > '1' ORDER BY a ASC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 056
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_LAST, limit=>100 )
# rc: 0
# note: Command=LAST, Cursor is first(1) and last(100)
# result: SELECT a, b, c FROM t1 ORDER BY a DESC LIMIT 100
# status: SUCCESSFUL
# ################################################################
# test: 057
# format: SelectCursor( table=>"t1", fields => [ "a","b","c"], cursor_info => \%cursor , cursor_key=>"a", cursor_command=>SQL_SIMPLE_CURSOR_TOP, limit=>0 )
# rc: 0
# note: Command=TOP, Limit is ZERO
# result: SELECT a, b, c FROM t1 ORDER BY a ASC
# status: SUCCESSFUL
# ################################################################
# test: 060
# format: Select( table=>"t1", fields => [ "distinct", "a" ] )
# rc: 0
# note: Select with DISTINCT array sequence
# result: SELECT DISTINCT a FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 061
# format: Select( table=>"t1", fields => [ "distinct" => "a" ] )
# rc: 0
# note: Select with DISTINCT based hash
# result: SELECT DISTINCT a FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 062
# format: Select( table=>"t1", fields => [ "count(*)" ] )
# rc: 0
# result: SELECT count(*) FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 063
# format: Select( table=>"t1", fields => [ "max(t1.a)" ] )
# rc: 0
# result: SELECT max(t1.a) FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 064
# format: Select( table=>"t1", fields => [ "max(a)" ] )
# rc: 0
# result: SELECT max(a) FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 065
# format: Select( table=>"t1", fields => [ "substr(a,1,8)" ] )
# rc: 0
# result: SELECT substr(a,1,8) FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 066
# format: Select( table=>"t1", fields => [ "\aaa.bbb.ccc" ] )
# rc: 0
# result: SELECT aaa.bbb.ccc FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 067
# format: Select( table=>"t1", fields => [ "distinct","\aaa.bbb.ccc" ] )
# rc: 0
# result: SELECT DISTINCT aaa.bbb.ccc FROM t1
# status: SUCCESSFUL
# ################################################################
# test: 070
# format: Select( table=>["t1","t2"], fields => [ "t1.a","t2.b" ], where => [ 't1.a' => 't2.b' ], sql_save=>1 )
# rc: 0
# note: SQL_SAVE enabled
# result: SELECT t1.a, t2.b FROM t1, t2 WHERE t1.a = t2.b
# savefile: /tmp/2023/202310/20231009/sql.teste.20231009.36747.1
# savefile: removed
# status: SUCCESSFUL
# ################################################################
# test: 071
# format: Select( table=>"t1", order_by => "t1.a" )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.a
# status: SUCCESSFUL
# ################################################################
# test: 072
# format: Select( table=>"t1", order_by => [ {"t1.a" => "asc"} ] )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.a ASC
# status: SUCCESSFUL
# ################################################################
# test: 073
# format: Select( table=>"t1", order_by => [ {"t1.a" => "desc"} ] )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.a DESC
# status: SUCCESSFUL
# ################################################################
# test: 074
# format: Select( table=>"t1", order_by => [ "t1.a", "t1.b" ] )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.a, t1.b
# status: SUCCESSFUL
# ################################################################
# test: 075
# format: Select( table=>"t1", order_by => [ {"t1.a" => "asc"}, "t1.b" ] )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.a ASC, t1.b
# status: SUCCESSFUL
# ################################################################
# test: 076
# format: Select( table=>"t1", order_by => [ "t1.a", {"t1.b"=>"desc"} ] )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.a, t1.b DESC
# status: SUCCESSFUL
# ################################################################
# test: 077
# format: Select( table=>"t1", order_by => {"t1.b"=>"desc"} )
# rc: 0
# result: SELECT * FROM t1 ORDER BY t1.b DESC
# status: SUCCESSFUL
# ################################################################
#
# To see the input options used to create the 'where' clause, rerun the test with:
#
# export SQL_SIMPLE_SQL_SHOW_OK=1
#
t/testSQL.t .... ok
#
# ################################################################
# result: id = 'info'
# test: 101, SUCCESSFUL
# ################################################################
# result: id = 'info'
# test: 102, SUCCESSFUL
# ################################################################
# result: id != 'info'
# test: 103, SUCCESSFUL
# ################################################################
# result: id < 'info'
# test: 104, SUCCESSFUL
# ################################################################
# result: id > 'info'
# test: 105, SUCCESSFUL
# ################################################################
# result: id LIKE 'info%'
# test: 106, SUCCESSFUL
# ################################################################
# result: id LIKE '%info%'
# test: 107, SUCCESSFUL
# ################################################################
# result: id LIKE '%info'
# test: 108, SUCCESSFUL
# ################################################################
# result: id LIKE 'info'
# test: 109, SUCCESSFUL
# ################################################################
# result: id IS NULL
# test: 110, SUCCESSFUL
# ################################################################
# result: id NOT NULL
# test: 111, SUCCESSFUL
# ################################################################
# result: id IN ('info1','info2')
# test: 112, SUCCESSFUL
# ################################################################
# result: id NOT IN ('info1','info2')
# test: 113, SUCCESSFUL
# ################################################################
# result: id BETWEEN ('info1','info2')
# test: 114, SUCCESSFUL
# ################################################################
# result: id NOT BETWEEN ('info1','info2')
# test: 115, SUCCESSFUL
# ################################################################
# result: id = 'info' AND id = 'info2' AND no = 'no1' AND no = 'no2'
# test: 120, SUCCESSFUL
# ################################################################
# result: id = 'info' AND id = 'info2' OR no = 'no1' AND no = 'no2'
# test: 121, SUCCESSFUL
# ################################################################
# result: t1.id = t2.id
# test: 200, SUCCESSFUL
# ################################################################
# result: t1.id = t2.id
# test: 201, SUCCESSFUL
# ################################################################
# result: t1.id != t2.id
# test: 202, SUCCESSFUL
# ################################################################
# result: t1.id = t2.id AND t1.id = t3.id
# test: 210, SUCCESSFUL
# ################################################################
# result: t1.id = t2.id AND t1.id = t3.id
# test: 211, SUCCESSFUL
# ################################################################
# result: t1.id != t2.id AND t1.id != t3.id
# test: 212, SUCCESSFUL
# ################################################################
# result: t1.id = t2.id OR t1.id = t3.id
# test: 213, SUCCESSFUL
# ################################################################
# result: t1.id = t2.id AND t1.id BETWEEN ('1234','5678') AND (t1.id != '0' OR t2.id != '0')
# test: 214, SUCCESSFUL
# ################################################################
# result: (id = '1' AND id = '2') AND (no = '3' AND no = '4')
# test: 220, SUCCESSFUL
# ################################################################
# result: (id LIKE '1%' OR id LIKE '2%') AND (no LIKE '%3' OR no LIKE '%4')
# test: 221, SUCCESSFUL
# ################################################################
# result: (id NOT LIKE '1%' AND id NOT LIKE '2%') AND (no NOT LIKE '%3' AND no NOT LIKE '%4')
# test: 222, SUCCESSFUL
# ################################################################
# result: (id NOT LIKE '1%' AND id NOT LIKE '2%') OR (no NOT LIKE '%3' AND no NOT LIKE '%4')
# test: 223, SUCCESSFUL
# ################################################################
# result: id NOT NULL OR no IS NULL
# test: 224, SUCCESSFUL
# ################################################################
# result: ((a = '1' AND b = '2') OR (c = '3' AND d = '4')) AND e = '5'
# test: 225, SUCCESSFUL
# ################################################################
# result: a = concat(a,'abc')
# test: 230, SUCCESSFUL
# ################################################################
# result: a != concat(a,'abc')
# test: 231, SUCCESSFUL
#
# To see the input options used to create the 'where' clause, rerun the test with:
#
# export SQL_SIMPLE_WHERE_SHOW_OK=1
#
t/testWhere.t .. ok
All tests successful.
Files=3, Tests=5, 0 wallclock secs ( 0.04 usr 0.03 sys + 0.53 cusr 0.29 csys = 0.89 CPU)
Result: PASS
------------------------------
PREREQUISITES
------------------------------
Prerequisite modules loaded:
requires:
Module Need Have
------------------- ---- --------
Date::Calc 0 6.4
DBI 0 1.643
File::Path 0 2.18
File::Spec 0 3.88
IO::File 0 1.52
JSON 0 4.10
Sys::Syslog 0 0.36
build_requires:
Module Need Have
------------------- ---- --------
DBD::SQLite 0 1.72
Test::More 0 1.302195
configure_requires:
Module Need Have
------------------- ---- --------
ExtUtils::MakeMaker 0 7.70
------------------------------
ENVIRONMENT AND OTHER CONTEXT
------------------------------
Environment variables:
AUTOMATED_TESTING = 1
PATH = /home/njh/perl5/perlbrew/bin:/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/bin:/home/njh/perl5/perlbrew/bin:/home/njh/src/njh/smoker/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin
PERL5LIB = /home/njh/.cpan/build/Date-Calc-XS-6.4-0/blib/arch:/home/njh/.cpan/build/Date-Calc-XS-6.4-0/blib/lib:/home/njh/.cpan/build/Date-Calc-6.4-0/blib/arch:/home/njh/.cpan/build/Date-Calc-6.4-0/blib/lib:/home/njh/.cpan/build/Bit-Vector-7.4-0/blib/arch:/home/njh/.cpan/build/Bit-Vector-7.4-0/blib/lib:/home/njh/.cpan/build/Carp-Clan-6.08-0/blib/arch:/home/njh/.cpan/build/Carp-Clan-6.08-0/blib/lib:/home/njh/.cpan/build/JSON-XS-4.03-1/blib/arch:/home/njh/.cpan/build/JSON-XS-4.03-1/blib/lib:/home/njh/.cpan/build/Types-Serialiser-1.01-1/blib/arch:/home/njh/.cpan/build/Types-Serialiser-1.01-1/blib/lib:/home/njh/.cpan/build/common-sense-3.75-1/blib/arch:/home/njh/.cpan/build/common-sense-3.75-1/blib/lib:/home/njh/.cpan/build/Canary-Stability-2013-1/blib/arch:/home/njh/.cpan/build/Canary-Stability-2013-1/blib/lib:/home/njh/.cpan/build/JSON-4.10-1/blib/arch:/home/njh/.cpan/build/JSON-4.10-1/blib/lib:/home/njh/.cpan/build/Getopt-Long-Descriptive-0.111-1/blib/arch:/home/njh/.cpan/build/Getopt-Long-Descriptive-0.111-1/blib/lib:/home/njh/.cpan/build/Params-Validate-1.31-1/blib/arch:/home/njh/.cpan/build/Params-Validate-1.31-1/blib/lib:/home/njh/.cpan/build/Data-Dump-1.25-1/blib/arch:/home/njh/.cpan/build/Data-Dump-1.25-1/blib/lib:/home/njh/.cpan/build/Business-ISBN-Data-20231006.001-2/blib/arch:/home/njh/.cpan/build/Business-ISBN-Data-20231006.001-2/blib/lib
PERL5OPT =
PERL5_CPANPLUS_IS_RUNNING = 31366
PERL5_CPAN_IS_RUNNING = 31366
PERL5_CPAN_IS_RUNNING_IN_RECURSION = 5258,31366
PERLBREW_LIB =
PERLBREW_MANPATH = /home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/man
PERLBREW_PATH = /home/njh/perl5/perlbrew/bin:/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/bin
PERLBREW_PERL = perl-5.38.0-clang
PERLBREW_ROOT = /home/njh/perl5/perlbrew
PERLBREW_SHELLRC_VERSION = 0.98
PERLBREW_VERSION = 0.98
PERL_LOCAL_LIB_ROOT =
PERL_MM_USE_DEFAULT = 1
PERL_USE_UNSAFE_INC = 1
SHELL = /usr/local/bin/bash
TMPDIR = /tmp/testwrapper.10240
Perl special variables (and OS-specific diagnostics, for MSWin32):
$^X = /home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/bin/perl5.38.0
$UID/$EUID = 1000 / 1000
$GID = 1000 1000 0
$EGID = 1000 1000 0
Perl module toolchain versions installed:
Module Have
------------------- --------
CPAN 2.36
CPAN::Meta 2.150010
Cwd 3.89
ExtUtils::CBuilder 0.280238
ExtUtils::Command 7.70
ExtUtils::Install 2.22
ExtUtils::MakeMaker 7.70
ExtUtils::Manifest 1.75
ExtUtils::ParseXS 3.51
File::Spec 3.88
JSON 4.10
JSON::PP 4.16
Module::Build 0.4234
Module::Signature n/a
Parse::CPAN::Meta 2.150010
Test2 1.302195
Test::Harness 3.47
Test::More 1.302195
YAML 1.30
YAML::Syck 1.34
version 0.9929
--
Summary of my perl5 (revision 5 version 38 subversion 0) configuration:
Platform:
osname=openbsd
osvers=7.3
archname=OpenBSD.amd64-openbsd
uname='openbsd vultr2.bandsman.co.uk 7.3 generic#1072 amd64 '
config_args='-de -Dprefix=/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang -Dusedevel -Dcc=clang -Accflags=-O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -fomit-frame-pointer -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -ftree-vectorize -mmmx -msse -mfpmath=sse -msse2 -msse3 -mtune=native -Aeval:scriptdir=/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/bin'
hint=recommended
useposix=true
d_sigaction=define
useithreads=undef
usemultiplicity=undef
use64bitint=define
use64bitall=define
uselongdouble=undef
usemymalloc=n
default_inc_excludes_dot=define
Compiler:
cc='clang'
ccflags ='-O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -fomit-frame-pointer -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -ftree-vectorize -mmmx -msse -mfpmath=sse -msse2 -msse3 -mtune=native -fno-strict-aliasing -fstack-protector-strong -I/usr/local/include'
optimize='-O2'
cppflags='-O2 -W -Wformat=2 -Wswitch -Wshadow -Wwrite-strings -Wuninitialized -Wall -pipe -fomit-frame-pointer -pedantic -D_FORTIFY_SOURCE=2 -Wpointer-arith -Wstrict-prototypes -fstack-protector -Wstack-protector -Wextra -Wbad-function-cast -Wcast-align -Wcast-qual -Wdisabled-optimization -Wendif-labels -Wfloat-equal -Wformat-nonliteral -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wundef -Wformat-security -ftree-vectorize -mmmx -msse -mfpmath=sse -msse2 -msse3 -mtune=native -fno-strict-aliasing -fstack-protector-strong -I/usr/local/include'
ccversion=''
gccversion='OpenBSD Clang 13.0.0'
gccosandvers=''
intsize=4
longsize=8
ptrsize=8
doublesize=8
byteorder=12345678
doublekind=3
d_longlong=define
longlongsize=8
d_longdbl=define
longdblsize=16
longdblkind=3
ivtype='long'
ivsize=8
nvtype='double'
nvsize=8
Off_t='off_t'
lseeksize=8
alignbytes=8
prototype=define
Linker and Libraries:
ld='clang'
ldflags ='-Wl,-E -fstack-protector-strong -L/usr/local/lib'
libpth=/usr/lib/clang/13.0.0/lib /usr/lib /usr/local/lib
libs=-lpthread -lm -lutil -lc
perllibs=-lpthread -lm -lutil -lc
libc=/usr/lib/libc.so.97.0
so=so
useshrplib=false
libperl=libperl.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs
dlext=so
d_dlsymun=undef
ccdlflags=' '
cccdlflags='-DPIC -fPIC '
lddlflags='-shared -fPIC -L/usr/local/lib -fstack-protector-strong'
Characteristics of this binary (from libperl):
Compile-time options:
HAS_LONG_DOUBLE
HAS_STRTOLD
HAS_TIMES
PERLIO_LAYERS
PERL_COPY_ON_WRITE
PERL_DONT_CREATE_GVSV
PERL_HASH_FUNC_SIPHASH13
PERL_HASH_USE_SBOX32
PERL_MALLOC_WRAP
PERL_OP_PARENT
PERL_PRESERVE_IVUV
PERL_USE_DEVEL
PERL_USE_SAFE_PUTENV
USE_64_BIT_ALL
USE_64_BIT_INT
USE_LARGE_FILES
USE_LOCALE
USE_LOCALE_COLLATE
USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC
USE_LOCALE_TIME
USE_PERLIO
USE_PERL_ATOF
Built under openbsd
Compiled at Jul 3 2023 12:07:24
%ENV:
PERL5LIB="/home/njh/.cpan/build/Date-Calc-XS-6.4-0/blib/arch:/home/njh/.cpan/build/Date-Calc-XS-6.4-0/blib/lib:/home/njh/.cpan/build/Date-Calc-6.4-0/blib/arch:/home/njh/.cpan/build/Date-Calc-6.4-0/blib/lib:/home/njh/.cpan/build/Bit-Vector-7.4-0/blib/arch:/home/njh/.cpan/build/Bit-Vector-7.4-0/blib/lib:/home/njh/.cpan/build/Carp-Clan-6.08-0/blib/arch:/home/njh/.cpan/build/Carp-Clan-6.08-0/blib/lib:/home/njh/.cpan/build/JSON-XS-4.03-1/blib/arch:/home/njh/.cpan/build/JSON-XS-4.03-1/blib/lib:/home/njh/.cpan/build/Types-Serialiser-1.01-1/blib/arch:/home/njh/.cpan/build/Types-Serialiser-1.01-1/blib/lib:/home/njh/.cpan/build/common-sense-3.75-1/blib/arch:/home/njh/.cpan/build/common-sense-3.75-1/blib/lib:/home/njh/.cpan/build/Canary-Stability-2013-1/blib/arch:/home/njh/.cpan/build/Canary-Stability-2013-1/blib/lib:/home/njh/.cpan/build/JSON-4.10-1/blib/arch:/home/njh/.cpan/build/JSON-4.10-1/blib/lib:/home/njh/.cpan/build/Getopt-Long-Descriptive-0.111-1/blib/arch:/home/njh/.cpan/build/Getopt-Long-Descriptive-0.111-1/blib/lib:/home/njh/.cpan/build/Params-Validate-1.31-1/blib/arch:/home/njh/.cpan/build/Params-Validate-1.31-1/blib/lib:/home/njh/.cpan/build/Data-Dump-1.25-1/blib/arch:/home/njh/.cpan/build/Data-Dump-1.25-1/blib/lib:/home/njh/.cpan/build/Business-ISBN-Data-20231006.001-2/blib/arch:/home/njh/.cpan/build/Business-ISBN-Data-20231006.001-2/blib/lib"
PERL5OPT=""
PERL5_CPANPLUS_IS_RUNNING="31366"
PERL5_CPAN_IS_RUNNING="31366"
PERL5_CPAN_IS_RUNNING_IN_RECURSION="5258,31366"
PERLBREW_LIB=""
PERLBREW_MANPATH="/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/man"
PERLBREW_PATH="/home/njh/perl5/perlbrew/bin:/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/bin"
PERLBREW_PERL="perl-5.38.0-clang"
PERLBREW_ROOT="/home/njh/perl5/perlbrew"
PERLBREW_SHELLRC_VERSION="0.98"
PERLBREW_VERSION="0.98"
PERL_LOCAL_LIB_ROOT=""
PERL_MM_USE_DEFAULT="1"
PERL_USE_UNSAFE_INC="1"
@INC:
/home/njh/.cpan/build/Date-Calc-XS-6.4-0/blib/arch
/home/njh/.cpan/build/Date-Calc-XS-6.4-0/blib/lib
/home/njh/.cpan/build/Date-Calc-6.4-0/blib/arch
/home/njh/.cpan/build/Date-Calc-6.4-0/blib/lib
/home/njh/.cpan/build/Bit-Vector-7.4-0/blib/arch
/home/njh/.cpan/build/Bit-Vector-7.4-0/blib/lib
/home/njh/.cpan/build/Carp-Clan-6.08-0/blib/arch
/home/njh/.cpan/build/Carp-Clan-6.08-0/blib/lib
/home/njh/.cpan/build/JSON-XS-4.03-1/blib/arch
/home/njh/.cpan/build/JSON-XS-4.03-1/blib/lib
/home/njh/.cpan/build/Types-Serialiser-1.01-1/blib/arch
/home/njh/.cpan/build/Types-Serialiser-1.01-1/blib/lib
/home/njh/.cpan/build/common-sense-3.75-1/blib/arch
/home/njh/.cpan/build/common-sense-3.75-1/blib/lib
/home/njh/.cpan/build/Canary-Stability-2013-1/blib/arch
/home/njh/.cpan/build/Canary-Stability-2013-1/blib/lib
/home/njh/.cpan/build/JSON-4.10-1/blib/arch
/home/njh/.cpan/build/JSON-4.10-1/blib/lib
/home/njh/.cpan/build/Getopt-Long-Descriptive-0.111-1/blib/arch
/home/njh/.cpan/build/Getopt-Long-Descriptive-0.111-1/blib/lib
/home/njh/.cpan/build/Params-Validate-1.31-1/blib/arch
/home/njh/.cpan/build/Params-Validate-1.31-1/blib/lib
/home/njh/.cpan/build/Data-Dump-1.25-1/blib/arch
/home/njh/.cpan/build/Data-Dump-1.25-1/blib/lib
/home/njh/.cpan/build/Business-ISBN-Data-20231006.001-2/blib/arch
/home/njh/.cpan/build/Business-ISBN-Data-20231006.001-2/blib/lib
/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/lib/site_perl/5.38.0/OpenBSD.amd64-openbsd
/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/lib/site_perl/5.38.0
/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/lib/5.38.0/OpenBSD.amd64-openbsd
/home/njh/perl5/perlbrew/perls/perl-5.38.0-clang/lib/5.38.0
.