head	1.18;
access;
symbols
	RELENG_4_11_0_RELEASE:1.9.2.3
	RELENG_4_11:1.9.2.3.0.12
	RELENG_4_11_BP:1.9.2.3
	RELENG_4_10_0_RELEASE:1.9.2.3
	RELENG_4_10:1.9.2.3.0.10
	RELENG_4_10_BP:1.9.2.3
	RELENG_4_9_0_RELEASE:1.9.2.3
	RELENG_4_9:1.9.2.3.0.8
	RELENG_4_9_BP:1.9.2.3
	RELENG_4_8_0_RELEASE:1.9.2.3
	RELENG_4_8:1.9.2.3.0.6
	RELENG_4_8_BP:1.9.2.3
	RELENG_4_7_0_RELEASE:1.9.2.3
	RELENG_4_7:1.9.2.3.0.4
	RELENG_4_7_BP:1.9.2.3
	RELENG_4_6_2_RELEASE:1.9.2.3
	RELENG_4_6_1_RELEASE:1.9.2.3
	RELENG_4_6_0_RELEASE:1.9.2.3
	RELENG_4_6:1.9.2.3.0.2
	RELENG_4_6_BP:1.9.2.3
	RELENG_4_5_0_RELEASE:1.9.2.2
	RELENG_4_5:1.9.2.2.0.6
	RELENG_4_5_BP:1.9.2.2
	RELENG_4_4_0_RELEASE:1.9.2.2
	RELENG_4_4:1.9.2.2.0.4
	RELENG_4_4_BP:1.9.2.2
	RELENG_4_3_0_RELEASE:1.9.2.2
	RELENG_4_3:1.9.2.2.0.2
	RELENG_4_3_BP:1.9.2.2
	RELENG_4_2_0_RELEASE:1.9.2.2
	RELENG_4_1_1_RELEASE:1.9
	PRE_SMPNG:1.14
	RELENG_4_1_0_RELEASE:1.9
	RELENG_3_5_0_RELEASE:1.5.2.1
	RELENG_4_0_0_RELEASE:1.9
	RELENG_4:1.9.0.2
	RELENG_4_BP:1.9
	RELENG_3_4_0_RELEASE:1.5.2.1
	RELENG_3_3_0_RELEASE:1.5.2.1
	RELENG_3_2_PAO:1.5.0.4
	RELENG_3_2_PAO_BP:1.5
	RELENG_3_2_0_RELEASE:1.5
	RELENG_3_1_0_RELEASE:1.5
	RELENG_3:1.5.0.2
	RELENG_3_BP:1.5
	RELENG_3_0_0_RELEASE:1.4;
locks; strict;
comment	@# @;


1.18
date	2002.05.16.09.57.06;	author markm;	state dead;
branches;
next	1.17;

1.17
date	2002.03.16.21.36.07;	author markm;	state Exp;
branches;
next	1.16;

1.16
date	2001.09.29.13.17.54;	author ru;	state Exp;
branches;
next	1.15;

1.15
date	2001.02.13.05.19.56;	author peter;	state Exp;
branches;
next	1.14;

1.14
date	2000.08.20.10.03.26;	author markm;	state Exp;
branches;
next	1.13;

1.13
date	2000.06.29.18.21.50;	author markm;	state Exp;
branches;
next	1.12;

1.12
date	2000.06.26.15.02.10;	author markm;	state Exp;
branches;
next	1.11;

1.11
date	2000.06.25.14.48.02;	author markm;	state Exp;
branches;
next	1.10;

1.10
date	2000.03.27.15.40.30;	author bde;	state Exp;
branches;
next	1.9;

1.9
date	2000.03.08.15.45.11;	author markm;	state Exp;
branches
	1.9.2.1;
next	1.8;

1.8
date	99.09.24.15.31.55;	author markm;	state Exp;
branches;
next	1.7;

1.7
date	99.09.04.10.01.55;	author markm;	state Exp;
branches;
next	1.6;

1.6
date	99.08.27.23.36.15;	author peter;	state Exp;
branches;
next	1.5;

1.5
date	99.01.09.21.50.55;	author jdp;	state Exp;
branches
	1.5.2.1;
next	1.4;

1.4
date	98.09.16.17.25.51;	author markm;	state Exp;
branches;
next	1.3;

1.3
date	98.09.12.19.16.32;	author markm;	state Exp;
branches;
next	1.2;

1.2
date	98.09.12.15.45.29;	author markm;	state Exp;
branches;
next	1.1;

1.1
date	98.09.09.07.20.25;	author markm;	state Exp;
branches;
next	;

1.9.2.1
date	2000.10.05.09.54.39;	author markm;	state Exp;
branches;
next	1.9.2.2;

1.9.2.2
date	2000.10.31.08.05.27;	author ps;	state Exp;
branches;
next	1.9.2.3;

1.9.2.3
date	2002.02.19.16.21.34;	author ru;	state Exp;
branches;
next	1.9.2.4;

1.9.2.4
date	2012.11.17.07.23.07;	author svnexp;	state Exp;
branches;
next	;

1.5.2.1
date	99.08.29.14.34.10;	author peter;	state Exp;
branches;
next	;


desc
@@


1.18
log
@Remove the perl build. Farewell, old friend.
@
text
@# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.17 2002/03/16 21:36:07 markm Exp $

LIB=	perl

CFLAGS+=-I${.OBJDIR} -I${PERL5SRC} -DPERL_CORE

SRCS=	perl.c gv.c toke.c perly.c op.c regcomp.c dump.c util.c mg.c \
	hv.c av.c run.c pp_hot.c sv.c pp.c scope.c pp_ctl.c pp_sys.c \
	doop.c doio.c regexec.c utf8.c taint.c deb.c universal.c \
	xsutils.c globals.c perlio.c perlapi.c \
	config.h

DPADD=	${LIBM}
LDADD=	-lm

NO_PERL_SCRIPT_MAKE=	true

# NOPIC=	true

.include <bsd.lib.mk>

config.h:	links
	@@sh config_h.sh

.SUFFIXES:

.SUFFIXES: .o .po .So .s .S .c .ln

.PATH:	${PERL5SRC}
@


1.17
log
@Update for Perl 5.6.1.
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.16
log
@Fix cross-building, etc:

1.  To cross-build, one now needs to set TARGET_ARCH, and not the
    MACHINE_ARCH.  MACHINE_ARCH should never be changed manually!

2.  Initialize DESTDIR= explicitly for bootstrap-tools, build-tools,
    and cross-tools stages.  This fixes broken header and library
    dependencies problem.  We build them in the host environment,
    and obviously want them to depend on host headers and libraries.
    The problem with broken header dependencies for bootstrap-tools
    and cross-tools was already partially solved (see BOOTSTRAPPING
    tests in bsd.prog.mk and bsd.lib.mk), but it was still there for
    build-tools if the user ran "make world DESTDIR=/foo".  Also,
    for all of these stages, the library dependencies were broken
    because of how bsd.libnames.mk define DPADD members.

    We still provide a glue to install bootstrap- and cross-tools
    under the ${WORLDTMP}.

    Removed PATH overrides for bootstrap-, build-, and cross-tools
    stages.  There is just no reason why we would need to override
    it, and the hacks to clean up the ${WORLDTMP} in the -DNOCLEAN
    case are no longer needed with fixes from this step.

    That is, we now never use ${WORLDTMP} headers and libraries,
    and we don't use any ${WORLDTMP} installed binaries during
    these stages.  Again, these stages depend solely on the host
    environment, including compiler, headers, and libraries.

3.  Moved "miniperl" back from cross-tools (it has nothing to do
    with a cross-compiler) to build-tools where it belongs.  The
    change from step 1 let to do this.  Also, to make this work,
    build-tools targets of "cc_tools" and "miniperl" were modified
    to call "depend".  Here follow the detailed explanations.

    There are two categories of build tools, for now.  In the first
    category there are "cc_tools" and "miniperl".  They occupy the
    whole (sub)directory, and nothing needs to be done in this
    subdirectory later during the "all" stage.  They are also
    constructed using system makefiles.  We must build the .depend
    early in the build-tools stage because:

    1)  They use (and depend on) the host environment.

    2)  If we don't do this in build-tools, the "depend" stage of
        buildworld will do this for us; wrong library and header
        dependencies will be recorded (DESTDIR=${WORLDTMP}) and,
        what's worse, the "all" stage may then clobber the
        build-architecture format tools (that we built in the
        build-tools stage) with the target-architecture format
        ones, breaking cross build.

    In the second category there are all other build-tools.  They
    share their directory with the "main" module that needs them
    in the "all" stage, and they don't show up themselves in the
    .depend file.  The portion of this fix was already committed
    in gnu/usr.bin/cc/cc_tools/Makefile,v 1.52.

4.  "libperl" is no longer a build tool, and "miniperl" is the
    stand-alone application.  I had to make this change because
    build-tools and "all" stages share the same object directory.
    Without this change, if we cross compile, libperl.a is first
    built for the build architecture during the build-tools stage
    (for the purposes of immediate linkage with "miniperl").
    Later on, the "all" stage sees this library as up-to-date,
    and doesn't rebuild it.  The effect is that the wrong format
    static libperl library is installed with installworld.

5.  Fixed "includes" to install secure/lib/libtelnet headers if
    required.

Reviewed by:	bde
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.15 2001/02/13 05:19:56 peter Exp $
d27 1
a27 1
.SUFFIXES: .o .po .So .s .S .c
@


1.15
log
@When setproctitle() moved from libutil to libc, we forgot to back the
change out that made libperl.so dynamically depend on libutil.so to pick
up setproctitle() in its old location.  This breaks changes involving
incomptabable libc's because ld looks for the dynamic dependency
(which it has no business doing anyway) in the wrong place - /usr/lib!
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.14 2000/08/20 10:03:26 markm Exp $
a20 3

build-tools:	cleandepend
	cd ${.CURDIR} && ${MAKE} lib${LIB}.a
@


1.14
log
@Fixes and cleanups to the perl build; don't error out when NOCLEAN is
set and directories are being (re)made; build the procname ($0) stuff,
don't install miniperl.
(Miniperl needs a revisit).
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.13 2000/06/29 18:21:50 markm Exp $
d13 2
a14 2
DPADD=	${LIBM} ${LIBUTIL}
LDADD=	-lm -lutil
@


1.13
log
@Tweaks to the build to allow "make -DNOCLEAN" and "make release" to
work.
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.12 2000/06/26 15:02:10 markm Exp $
d13 2
a14 2
DPADD=	${LIBM}
LDADD=	-lm
@


1.12
log
@Fix for bootstrapping. Grr. Pointy Hat Please?
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.11 2000/06/25 14:48:02 markm Exp $
d22 2
a23 1
build-tools:	lib${LIB}.a
@


1.11
log
@Userland build stuff for Perl5.006.

This is cleaned up quite a lot since 5.00502, and the library modules
are broken out into individual dirs. This should please a lot folk.
@
text
@d1 1
a1 1
# $FreeBSD$
d16 2
d23 3
@


1.10
log
@Fixed missing DPADD.

Fixed some style bugs (some usual ones for LDADD, and misformatting of
$FreeBSD$).
@
text
@d1 1
a1 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.9 2000/03/08 15:45:11 markm Exp $
d5 1
a5 1
CFLAGS+=-I${.OBJDIR} -I${PERL5SRC}
d7 1
a7 1
SRCS=	perl.c gv.c toke.c perly.c op.c regcomp.c dump.c util.c mg.c byterun.c \
d9 2
a10 1
	doop.c doio.c regexec.c taint.c deb.c universal.c globals.c perlio.c \
d19 2
@


1.9
log
@Considerable upgrade to the way perl links to shared objects. This
fixes the way that third-party apps like apache link in perl .so's
(and previously did not get libperl linked in.)

NOTE - you neeed to recompile all your perl stuff - all the p5-*
por4ts with C code, and things like mod_perl.
@
text
@d1 1
a1 3
#
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.8 1999/09/24 15:31:55 markm Exp $
#
d12 2
a13 1
LDADD+=	-lm
@


1.9.2.1
log
@MFC: Merge the CURRENT perl-building method to STABLE. This will
dramatically reduce the dependance on miniperl.

NOTE!! This does not bring Perl-5.6.0 to STABLE !!

NOTE!! You should delete /usr/bin/miniperl !!
@
text
@d2 1
a2 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.9 2000/03/08 15:45:11 markm Exp $
d14 1
a14 3
LDADD=	-lm

NO_PERL_SCRIPT_MAKE=	true
a18 6

build-tools:	cleandepend
	cd ${.CURDIR} && ${MAKE} lib${LIB}.a

config.h:	links
	@@sh config_h.sh
@


1.9.2.2
log
@MFC: Vendor supplied patches to fix procname ($0)

Reviewed by:	markm
@
text
@d2 1
a2 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.9.2.1 2000/10/05 09:54:39 markm Exp $
d14 1
a14 2
DPADD=	${LIBM} ${LIBUTIL}
LDADD=	-lm -lutil
@


1.9.2.3
log
@MFC: cross-building fixes.
@
text
@d2 1
a2 1
# $FreeBSD$
d22 3
@


1.9.2.4
log
@Switch importer
@
text
@d2 1
a2 1
# $FreeBSD: stable/4/gnu/usr.bin/perl/libperl/Makefile 90934 2002-02-19 16:21:35Z ru $
@


1.8
log
@Low-level, but significant cleanup of Perl's build process.

This should significantly ease "make; make install" loops.
@
text
@d2 1
a2 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.7 1999/09/04 10:01:55 markm Exp $
d13 2
@


1.7
log
@Allow perl to be built with thread support.

Submitted by:	Doug Ambrisko <ambrisko@@whistle.com>
@
text
@d2 1
a2 1
# $FreeBSD: src/gnu/usr.bin/perl/libperl/Makefile,v 1.6 1999/08/27 23:36:15 peter Exp $
a15 4
beforeinstall beforedepend all: config.h config.sh

CLEANFILES+=	config.h config.sh config_h.sh

a17 10
PERL_THREADED?= no
.if ${PERL_THREADED} == "true"
CFLAGS+=        -pthread
.endif

PERL_DEBUGGING?=        no
.if ${PERL_DEBUGGING} == "true"
CFLAGS+=        -DDEBUGGING
.endif

a22 14

config.h: config_h.sh config.sh
	sh config_h.sh

.if ${PERL_THREADED} == "true"
config.sh: config.SH-threads-${OBJFORMAT}.${MACHINE_ARCH}
	ln -sf ${.OODATE} ${.TARGET}
.else
config.sh: config.SH-${OBJFORMAT}.${MACHINE_ARCH}
	ln -sf ${.OODATE} ${.TARGET}
.endif

config_h.sh: config_h.SH
	ln -sf ${.OODATE} ${.TARGET}
@


1.6
log
@$Id$ -> $FreeBSD$
@
text
@d2 1
a2 1
# $FreeBSD$
d22 10
d41 4
d47 1
@


1.5
log
@Switch to using ".So" as the extension for PIC object files rather
than ".so".  The old extension conflicted with well-established
naming conventions for dynamically loadable modules.

The "clean" targets continue to remove ".so" files too, to deal with
old systems.
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.4 1998/09/16 17:25:51 markm Exp $
@


1.5.2.1
log
@$Id$ -> $FreeBSD$
@
text
@d2 1
a2 1
# $FreeBSD$
@


1.4
log
@Generalise the build a bit more.

1) Fix up the NOSHARED stuff (bde)
2) Accomodate CFLAGS (vanilla)
3) Provide separate files for i386 and alpha (Doug Rabson)

In case 3, the supplied files were corrupted, but the concepts
sound enough, so I just copied what exists into
config.SH-{elf|aout}.{i386|alpha}. Alpha team, go ahead and do what
is necessary on config.SH-elf.alpha. :-)
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.3 1998/09/12 19:16:32 markm Exp $
d24 1
a24 1
.SUFFIXES: .o .po .so .s .S .c
@


1.3
log
@Allow libperl to be a shared library.

This has the delightful side effect of fixing ELF .so objects.

Asked-for-by: peter
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.2 1998/09/12 15:45:29 markm Exp $
d31 1
a31 1
config.sh: config.SH-${OBJFORMAT}
@


1.2
log
@Fix parallel building.

(Tested by make -j12 buildworld on a 4-cpu SMP box).

Address (but not solve) ELF shareable objects causing perl to
dump core. (I have a heck of a lot to learn about ELF).

Lots of help by: bde, jkh, jb and others
@
text
@d2 1
a2 1
# $Id: Makefile,v 1.1 1998/09/09 07:20:25 markm Exp $
d14 1
a14 1
NOPIC=	true
d24 1
a24 1
.SUFFIXES: .a .c .h .o .po .sh
@


1.1
log
@Bring in the Perl5 BMake files. This ends the easy stuff.

I'll be doiung the rest in stages.
@
text
@d2 1
a2 1
# $Id$
d31 1
a31 1
config.sh: ${.CURDIR}/config.SH
a35 3

test:
	@@echo ${PERL5SRC}
@
