use
5.008;
my
$shared_dir
=
"../shared"
;
my
$in_source_repo
= -d
"../../.git"
and -d
$shared_dir
;
my
$module
=
"Sereal::Encoder"
;
unshift
@INC
,
"."
,
"./inc"
;
unshift
@INC
,
$shared_dir
,
"$shared_dir/inc"
if
$in_source_repo
;
inc::Sereal::BuildTools::link_files(
$shared_dir
)
if
$in_source_repo
;
inc::Sereal::BuildTools::generate_constant_includes(
$module
)
if
$in_source_repo
;
my
$optimize
= inc::Sereal::BuildTools::build_optimize();
my
$libs
=
''
;
my
$objects
=
'$(BASEEXT)$(OBJ_EXT) srl_encoder$(OBJ_EXT)'
;
my
$defines
= inc::Sereal::BuildTools::build_defines(
'ENABLE_DANGEROUS_HACKS'
);
inc::Sereal::BuildTools::check_external_libraries(\
$libs
, \
$defines
, \
$objects
);
if
(
$defines
!~ /HAVE_CSNAPPY/) {
my
$ctz
= Devel::CheckLib::check_lib(
lib
=>
'c'
,
function
=>
'return (__builtin_ctzll(0x100000000LL) != 32);'
) ?
'-DHAVE_BUILTIN_CTZ'
:
''
;
$defines
.=
" $ctz"
if
$ctz
;
}
inc::Sereal::BuildTools::WriteMakefile(
MIN_PERL_VERSION
=>
'5.008'
,
META_MERGE
=> {
resources
=> {
repository
=> {
},
bugtracker
=> {
},
},
'meta-spec'
=> {
version
=> 2 },
},
TEST_REQUIRES
=> {
'Test::More'
=> 0.88,
'Scalar::Util'
=> 0,
'File::Spec'
=> 0,
'Test::LongString'
=>
'0'
,
'Test::Warn'
=>
'0'
,
'Data::Dumper'
=>
'0'
,
'Sereal::Decoder'
=>
'3.00'
,
},
BUILD_REQUIRES
=> {
'File::Find'
=> 0,
'File::Path'
=> 0,
'ExtUtils::ParseXS'
=>
'2.21'
,
},
CONFIGURE_REQUIRES
=> {
'ExtUtils::MakeMaker'
=>
'7.0'
,
},
NAME
=>
$module
,
VERSION_FROM
=>
'lib/Sereal/Encoder.pm'
,
PREREQ_PM
=> {
'XSLoader'
=> 0,
},
LICENSE
=>
'perl'
,
ABSTRACT_FROM
=>
'lib/Sereal/Encoder.pm'
,
AUTHOR
=>
'Steffen Mueller <smueller@cpan.org>, Yves Orton <yves@cpan.org>'
,
LIBS
=> [
$libs
],
DEFINE
=>
$defines
,
INC
=>
'-I.'
,
OPTIMIZE
=>
$optimize
,
OBJECT
=>
$objects
,
test
=> {
TESTS
=>
"t/*.t t/*/*/*.t"
,
},
);
$ENV
{OPTIMIZE} =
$optimize
;