1 # $FreeBSD: src/gnu/usr.bin/perl/Makefile.inc,v 1.12.2.5 2002/03/19 15:52:16 ru Exp $
2 # $DragonFly: src/gnu/usr.bin/perl/Attic/Makefile.inc,v 1.2 2003/06/17 04:25:47 dillon Exp $
4 PERL5SRC?= ${.CURDIR}/../../../../contrib/perl5
5 PERL5LIBSRC?= ${.CURDIR}/../libperl
7 .if exists(${.OBJDIR}/../miniperl/miniperl)
8 MINIPERL?= ${.OBJDIR}/../miniperl/miniperl
10 MINIPERL?= ${.OBJDIR}/../../miniperl/miniperl
19 DYNALOADER= lib/auto/DynaLoader/DynaLoader.a
21 HEADERS=EXTERN.h INTERN.h XSUB.h XSlock.h av.h bytecode.h byterun.h \
22 cc_runtime.h cop.h cv.h dosish.h embed.h embedvar.h fakethr.h form.h \
23 gv.h handy.h hv.h intrpvar.h iperlsys.h keywords.h mg.h nostdio.h \
24 objXSUB.h objpp.h op.h opcode.h patchlevel.h perl.h perlio.h \
25 perlsdio.h perlsfio.h perlvars.h perly.h pp.h pp_proto.h proto.h \
26 regcomp.h regexp.h regnodes.h scope.h sv.h thrdvar.h thread.h \
33 @ln -sf ${.OODATE} ${.TARGET}
35 CLEANFILES+= ${.OBJDIR}/${I}
36 DEPEND_H+= ${.OBJDIR}/${I}
39 LDFLAGS+= -L${.OBJDIR}/../libperl
42 @for d in ${FARMDIRS} ; do \
44 for i in `cd ${PERL5SRC}; find $${d} -type d -a \! -name CVS` ;\
48 for i in `cd ${PERL5SRC}; find $${d} -type f | grep -v CVS` ;\
50 ln -s ${PERL5SRC}/$${i} $${i} ;\
55 @ln -sf ${PERL5SRC}/config_h.SH config_h.sh
56 @ln -sf ${PERL5SRC}/cflags.SH cflags.sh
57 @ln -sf ${PERL5SRC}/ext/re/re.pm lib/re.pm
58 @ln -sf ${PERL5SRC}/myconfig myconfig
59 @ln -sf ${PERL5SRC}/miniperlmain.c miniperlmain.c
60 @ln -sf ${PERL5SRC}/writemain.SH writemain.sh
61 @ln -sf ${PERL5SRC}/regcomp.c regcomp.c
62 @ln -sf ${PERL5SRC}/regexec.c regexec.c
63 @ln -sf ${PERL5LIBSRC}/config.SH-${OBJFORMAT}.${MACHINE_ARCH} \
71 @${MINIPERL} ${PERL5SRC}/configpm \
72 Config.pm Porting/Glossary myconfig
73 @ln -sf ../Config.pm lib/Config.pm
76 .if !defined(NO_PERL_SCRIPT_MAKE)
80 CLEANFILES+= links scripts
81 CLEANFILES+= config.h config.sh config_h.sh Config.pm
82 CLEANFILES+= regcomp.c regexec.c miniperlmain.c
83 CLEANFILES+= writemain writemain.sh cflags cflags.sh myconfig
84 CLEANDIRS+= lib ext Porting hints build
86 FARMDIRS= lib ext Porting hints
88 MAKEMAKER_ARGS= INSTALLDIRS=perl PERL_SRC=${.OBJDIR} \
89 INSTALLMAN3DIR=${DESTDIR}/usr/share/perl/man3 \
90 PERL=${MINIPERL} FULLPERL=perl DEFINE=-I${DESTDIR}/usr/include \
93 .if defined(PERL_DEBUGGING) && ${PERL_DEBUGGING} == "true"
97 autosplit: scripts lib/*.pm lib/*/*.pm
98 ${MINIPERL} -I${.OBJDIR}/lib \
99 -e 'use AutoSplit; autosplit_lib_modules(@ARGV)' \
103 ${DYNALOADER}: scripts \
104 ext/DynaLoader/DynaLoader.pm \
105 ext/DynaLoader/Makefile
106 @cd ext/DynaLoader; \
107 make -B all PERL_SRC=${.OBJDIR}
109 ext/DynaLoader/DynaLoader.pm: scripts ext/DynaLoader/DynaLoader_pm.PL
110 @cd ext/DynaLoader; \
111 ${MINIPERL} -I${.OBJDIR} -I${.OBJDIR}/lib DynaLoader_pm.PL DynaLoader.pm
113 ext/DynaLoader/XSLoader.pm: scripts ext/DynaLoader/XSLoader_pm.PL
114 @cd ext/DynaLoader; \
115 ${MINIPERL} -I${.OBJDIR} -I${.OBJDIR}/lib XSLoader_pm.PL XSLoader.pm
117 ext/DynaLoader/Makefile: scripts ext/DynaLoader/Makefile.PL
118 @cd ext/DynaLoader; \
119 ${MINIPERL} -I${.OBJDIR} -I${.OBJDIR}/lib Makefile.PL ${MAKEMAKER_ARGS} \
120 LINKTYPE=static LIBS="-lperl -lm"; \
121 make -B config PERL_SRC=${.OBJDIR}