hammer/src/bindings/perl/SConscript

41 lines
1.5 KiB
Text
Raw Normal View History

2013-12-03 21:29:02 +01:00
# -*- python -*-
import os.path
Import("env libhammer_shared testruns targets")
2013-12-03 21:29:02 +01:00
perlenv = env.Clone()
perlenv.Append(CCFLAGS=["-fpic", '-DSWIG', '-Wno-all',
'-Wno-extra', '-Wno-error',
'-DHAMMER_INTERNAL__NO_STDARG_H'],
2013-12-03 21:29:02 +01:00
CPPPATH=["../.."],
LIBS=['hammer'],
LIBPATH=["../.."],
SWIGFLAGS=["-DHAMMER_INTERNAL__NO_STDARG_H",
"-Isrc/", "-perl"])
import os
if 'PERL_MM_OPT' in os.environ:
perlenv['ENV']['PERL_MM_OPT'] = os.environ['PERL_MM_OPT']
if 'PERL5LIB' in os.environ:
perlenv['ENV']['PERL5LIB'] = os.environ['PERL5LIB']
2013-12-03 21:29:02 +01:00
perlenv.ParseConfig("perl -MConfig -e'print(qq[-I$$Config{archlib}/CORE\n]);'")
perlenv.ParseConfig("perl -MConfig -e'print($$Config{ccflags} . \"\n\");'")
2013-12-03 21:29:02 +01:00
swig = ['hammer.i']
libhammer_perl = perlenv.SharedLibrary('hammer', swig, SHLIBPREFIX='')
perlenv.Command(['Makefile'], ['Makefile.PL'] + libhammer_perl, "perl $SOURCE")
2013-12-03 21:29:02 +01:00
Default(libhammer_perl)
perltestenv = perlenv.Clone()
perltestenv['ENV']['LD_LIBRARY_PATH'] = os.path.dirname(str(libhammer_shared[0]))
perltests = ['t/hammer.t']
perltestexec = perltestenv.Command(None, perltests + libhammer_perl + libhammer_shared, "pwd && prove -I%(perldir)s %(perldir)s/t" % dict(perldir=os.path.dirname(str(libhammer_perl[0].path))))
perltest = Alias("testperl", [perltestexec], perltestexec)
AlwaysBuild(perltestexec)
testruns.append(perltest)
2013-12-03 21:29:02 +01:00
print "Reading perl sconscript"