head	1.55;
access;
symbols
	RELENG_8_4:1.55.0.2
	RELENG_9_1_0_RELEASE:1.51.2.2.2.2
	RELENG_9_1:1.51.2.2.0.2
	RELENG_9_1_BP:1.51.2.2
	RELENG_8_3_0_RELEASE:1.46.2.1.8.1
	RELENG_8_3:1.46.2.1.0.8
	RELENG_8_3_BP:1.46.2.1
	RELENG_9_0_0_RELEASE:1.51.2.1.2.1
	RELENG_9_0:1.51.2.1.0.2
	RELENG_9_0_BP:1.51.2.1
	RELENG_9:1.51.0.2
	RELENG_9_BP:1.51
	RELENG_7_4_0_RELEASE:1.44.2.1.10.1
	RELENG_8_2_0_RELEASE:1.46.2.1.6.1
	RELENG_7_4:1.44.2.1.0.10
	RELENG_7_4_BP:1.44.2.1
	RELENG_8_2:1.46.2.1.0.6
	RELENG_8_2_BP:1.46.2.1
	RELENG_8_1_0_RELEASE:1.46.2.1.4.1
	RELENG_8_1:1.46.2.1.0.4
	RELENG_8_1_BP:1.46.2.1
	RELENG_7_3_0_RELEASE:1.44.2.1.8.1
	RELENG_7_3:1.44.2.1.0.8
	RELENG_7_3_BP:1.44.2.1
	RELENG_8_0_0_RELEASE:1.46.2.1.2.1
	RELENG_8_0:1.46.2.1.0.2
	RELENG_8_0_BP:1.46.2.1
	RELENG_8:1.46.0.2
	RELENG_8_BP:1.46
	RELENG_7_2_0_RELEASE:1.44.2.1.6.1
	RELENG_7_2:1.44.2.1.0.6
	RELENG_7_2_BP:1.44.2.1
	RELENG_7_1_0_RELEASE:1.44.2.1.4.1
	RELENG_6_4_0_RELEASE:1.41.2.2.4.1
	RELENG_7_1:1.44.2.1.0.4
	RELENG_7_1_BP:1.44.2.1
	RELENG_6_4:1.41.2.2.0.4
	RELENG_6_4_BP:1.41.2.2
	RELENG_7_0_0_RELEASE:1.44.2.1
	RELENG_6_3_0_RELEASE:1.41.2.2
	RELENG_7_0:1.44.2.1.0.2
	RELENG_7_0_BP:1.44.2.1
	RELENG_6_3:1.41.2.2.0.2
	RELENG_6_3_BP:1.41.2.2
	RELENG_7:1.44.0.2
	RELENG_7_BP:1.44
	RELENG_6_2_0_RELEASE:1.41.2.1
	RELENG_6_2:1.41.2.1.0.2
	RELENG_6_2_BP:1.41.2.1
	RELENG_5_5_0_RELEASE:1.37.2.2
	RELENG_5_5:1.37.2.2.0.4
	RELENG_5_5_BP:1.37.2.2
	RELENG_6_1_0_RELEASE:1.41
	RELENG_6_1:1.41.0.6
	RELENG_6_1_BP:1.41
	RELENG_6_0_0_RELEASE:1.41
	RELENG_6_0:1.41.0.4
	RELENG_6_0_BP:1.41
	RELENG_6:1.41.0.2
	RELENG_6_BP:1.41
	RELENG_5_4_0_RELEASE:1.37.2.2
	RELENG_5_4:1.37.2.2.0.2
	RELENG_5_4_BP:1.37.2.2
	RELENG_4_11_0_RELEASE:1.17.2.6
	RELENG_4_11:1.17.2.6.0.10
	RELENG_4_11_BP:1.17.2.6
	RELENG_5_3_0_RELEASE:1.37.2.1
	RELENG_5_3:1.37.2.1.0.2
	RELENG_5_3_BP:1.37.2.1
	RELENG_5:1.37.0.2
	RELENG_5_BP:1.37
	RELENG_4_10_0_RELEASE:1.17.2.6
	RELENG_4_10:1.17.2.6.0.8
	RELENG_4_10_BP:1.17.2.6
	RELENG_5_2_1_RELEASE:1.35
	RELENG_5_2_0_RELEASE:1.35
	RELENG_5_2:1.35.0.2
	RELENG_5_2_BP:1.35
	RELENG_4_9_0_RELEASE:1.17.2.6
	RELENG_4_9:1.17.2.6.0.6
	RELENG_4_9_BP:1.17.2.6
	RELENG_5_1_0_RELEASE:1.32
	RELENG_5_1:1.32.0.4
	RELENG_5_1_BP:1.32
	RELENG_4_8_0_RELEASE:1.17.2.6
	RELENG_4_8:1.17.2.6.0.4
	RELENG_4_8_BP:1.17.2.6
	RELENG_5_0_0_RELEASE:1.32
	RELENG_5_0:1.32.0.2
	RELENG_5_0_BP:1.32
	RELENG_4_7_0_RELEASE:1.17.2.6
	RELENG_4_7:1.17.2.6.0.2
	RELENG_4_7_BP:1.17.2.6
	RELENG_4_6_2_RELEASE:1.17.2.5
	RELENG_4_6_1_RELEASE:1.17.2.5
	RELENG_4_6_0_RELEASE:1.17.2.5
	RELENG_4_6:1.17.2.5.0.8
	RELENG_4_6_BP:1.17.2.5
	RELENG_4_5_0_RELEASE:1.17.2.5
	RELENG_4_5:1.17.2.5.0.6
	RELENG_4_5_BP:1.17.2.5
	RELENG_4_4_0_RELEASE:1.17.2.5
	RELENG_4_4:1.17.2.5.0.4
	RELENG_4_4_BP:1.17.2.5
	KSE_MILESTONE_2:1.26
	KSE_PRE_MILESTONE_2:1.26
	RELENG_4_3_0_RELEASE:1.17.2.5
	RELENG_4_3:1.17.2.5.0.2
	RELENG_4_3_BP:1.17.2.5
	RELENG_4_2_0_RELEASE:1.17.2.2
	RELENG_4_1_1_RELEASE:1.17.2.2
	PRE_SMPNG:1.20
	RELENG_4_1_0_RELEASE:1.17.2.2
	RELENG_3_5_0_RELEASE:1.7.2.2
	RELENG_4_0_0_RELEASE:1.17
	RELENG_4:1.17.0.2
	RELENG_4_BP:1.17
	RELENG_3_4_0_RELEASE:1.7.2.2
	RELENG_3_3_0_RELEASE:1.7.2.2
	RELENG_3_2_PAO:1.7.2.1.0.2
	RELENG_3_2_PAO_BP:1.7.2.1
	RELENG_3_2_0_RELEASE:1.7.2.1
	POST_VFS_BIO_NFS_PATCH:1.10
	PRE_VFS_BIO_NFS_PATCH:1.10
	POST_SMP_VMSHARE:1.10
	PRE_SMP_VMSHARE:1.10
	POST_NEWBUS:1.10
	PRE_NEWBUS:1.10
	RELENG_3_1_0_RELEASE:1.7.2.1
	RELENG_3:1.7.0.2
	RELENG_3_BP:1.7;
locks; strict;
comment	@# @;


1.55
date	2012.12.21.06.08.52;	author svnexp;	state Exp;
branches
	1.55.2.1;
next	1.54;

1.54
date	2012.11.17.01.51.15;	author svnexp;	state Exp;
branches;
next	1.53;

1.53
date	2012.10.20.16.57.23;	author avg;	state Exp;
branches;
next	1.52;

1.52
date	2012.07.26.10.10.54;	author ache;	state Exp;
branches;
next	1.51;

1.51
date	2011.01.05.22.24.33;	author dim;	state Exp;
branches
	1.51.2.1;
next	1.50;

1.50
date	2011.01.05.22.12.06;	author dim;	state Exp;
branches;
next	1.49;

1.49
date	2011.01.05.22.00.37;	author dim;	state Exp;
branches;
next	1.48;

1.48
date	2010.08.23.01.43.47;	author imp;	state Exp;
branches;
next	1.47;

1.47
date	2010.07.12.00.49.22;	author nwhitehorn;	state Exp;
branches;
next	1.46;

1.46
date	2008.10.14.10.11.14;	author raj;	state Exp;
branches
	1.46.2.1;
next	1.45;

1.45
date	2007.10.15.14.20.24;	author nyan;	state Exp;
branches;
next	1.44;

1.44
date	2006.09.28.10.02.03;	author ru;	state Exp;
branches
	1.44.2.1;
next	1.43;

1.43
date	2006.05.12.04.07.42;	author jhb;	state Exp;
branches;
next	1.42;

1.42
date	2005.07.15.12.22.14;	author ache;	state Exp;
branches;
next	1.41;

1.41
date	2005.05.31.18.13.29;	author obrien;	state Exp;
branches
	1.41.2.1;
next	1.40;

1.40
date	2004.10.24.15.32.49;	author ru;	state Exp;
branches;
next	1.39;

1.39
date	2004.08.23.16.25.07;	author obrien;	state Exp;
branches;
next	1.38;

1.38
date	2004.08.22.06.24.59;	author marcel;	state Exp;
branches;
next	1.37;

1.37
date	2004.02.07.08.10.07;	author ru;	state Exp;
branches
	1.37.2.1;
next	1.36;

1.36
date	2003.12.10.09.10.54;	author grehan;	state Exp;
branches;
next	1.35;

1.35
date	2003.06.30.19.08.49;	author ru;	state Exp;
branches;
next	1.34;

1.34
date	2003.06.26.03.51.57;	author peter;	state Exp;
branches;
next	1.33;

1.33
date	2003.06.08.03.11.16;	author nyan;	state Exp;
branches;
next	1.32;

1.32
date	2002.05.13.11.09.06;	author ru;	state Exp;
branches;
next	1.31;

1.31
date	2002.05.12.13.54.40;	author obrien;	state Exp;
branches;
next	1.30;

1.30
date	2002.05.11.18.02.32;	author obrien;	state Exp;
branches;
next	1.29;

1.29
date	2002.05.10.09.26.31;	author obrien;	state Exp;
branches;
next	1.28;

1.28
date	2002.05.09.17.47.25;	author obrien;	state Exp;
branches;
next	1.27;

1.27
date	2002.04.09.17.45.11;	author dcs;	state Exp;
branches;
next	1.26;

1.26
date	2001.04.29.02.36.33;	author dcs;	state Exp;
branches;
next	1.25;

1.25
date	2001.03.02.16.52.13;	author ru;	state Exp;
branches;
next	1.24;

1.24
date	2000.12.01.01.58.48;	author ache;	state Exp;
branches;
next	1.23;

1.23
date	2000.11.14.21.02.48;	author obrien;	state Exp;
branches;
next	1.22;

1.22
date	2000.09.10.17.11.27;	author dfr;	state Exp;
branches;
next	1.21;

1.21
date	2000.09.10.12.15.30;	author dfr;	state Exp;
branches;
next	1.20;

1.20
date	2000.08.11.23.23.20;	author peter;	state Exp;
branches;
next	1.19;

1.19
date	2000.06.07.22.07.00;	author dcs;	state Exp;
branches;
next	1.18;

1.18
date	2000.05.12.21.51.20;	author peter;	state Exp;
branches;
next	1.17;

1.17
date	2000.01.28.03.07.25;	author dcs;	state Exp;
branches
	1.17.2.1;
next	1.16;

1.16
date	2000.01.28.02.40.23;	author dcs;	state Exp;
branches;
next	1.15;

1.15
date	99.11.23.16.28.39;	author dcs;	state Exp;
branches;
next	1.14;

1.14
date	99.11.23.15.55.28;	author dcs;	state Exp;
branches;
next	1.13;

1.13
date	99.11.23.15.23.54;	author dcs;	state Exp;
branches;
next	1.12;

1.12
date	99.09.29.04.43.05;	author dcs;	state Exp;
branches;
next	1.11;

1.11
date	99.08.28.00.39.54;	author peter;	state Exp;
branches;
next	1.10;

1.10
date	99.04.06.02.43.06;	author dcs;	state Exp;
branches;
next	1.9;

1.9
date	99.03.17.23.03.36;	author dcs;	state Exp;
branches;
next	1.8;

1.8
date	99.02.04.17.13.30;	author dcs;	state Exp;
branches;
next	1.7;

1.7
date	99.01.18.19.05.26;	author msmith;	state Exp;
branches
	1.7.2.1;
next	1.6;

1.6
date	98.11.05.08.39.42;	author jkh;	state Exp;
branches;
next	1.5;

1.5
date	98.11.05.07.27.55;	author jkh;	state Exp;
branches;
next	1.4;

1.4
date	98.11.05.04.54.05;	author msmith;	state Exp;
branches;
next	1.3;

1.3
date	98.11.04.03.42.16;	author msmith;	state Exp;
branches;
next	1.2;

1.2
date	98.11.04.00.29.33;	author msmith;	state Exp;
branches;
next	1.1;

1.1
date	98.11.03.06.11.34;	author msmith;	state Exp;
branches;
next	;

1.55.2.1
date	2012.12.21.06.08.52;	author svnexp;	state dead;
branches;
next	1.55.2.2;

1.55.2.2
date	2013.03.28.13.04.01;	author svnexp;	state Exp;
branches;
next	;

1.51.2.1
date	2011.09.23.00.51.37;	author kensmith;	state Exp;
branches
	1.51.2.1.2.1;
next	1.51.2.2;

1.51.2.2
date	2012.08.02.15.13.12;	author ache;	state Exp;
branches
	1.51.2.2.2.1;
next	1.51.2.3;

1.51.2.3
date	2012.11.17.11.36.47;	author svnexp;	state Exp;
branches;
next	1.51.2.4;

1.51.2.4
date	2012.11.18.12.46.23;	author svnexp;	state Exp;
branches;
next	1.51.2.5;

1.51.2.5
date	2013.12.30.21.01.46;	author svnexp;	state Exp;
branches;
next	;

1.51.2.1.2.1
date	2011.11.11.04.20.22;	author kensmith;	state Exp;
branches;
next	1.51.2.1.2.2;

1.51.2.1.2.2
date	2012.11.17.08.36.45;	author svnexp;	state Exp;
branches;
next	;

1.51.2.2.2.1
date	2012.08.05.23.54.33;	author kensmith;	state Exp;
branches;
next	1.51.2.2.2.2;

1.51.2.2.2.2
date	2012.11.17.08.47.36;	author svnexp;	state Exp;
branches;
next	;

1.46.2.1
date	2009.08.03.08.13.06;	author kensmith;	state Exp;
branches
	1.46.2.1.2.1
	1.46.2.1.4.1
	1.46.2.1.6.1
	1.46.2.1.8.1;
next	1.46.2.2;

1.46.2.2
date	2012.11.17.10.36.26;	author svnexp;	state Exp;
branches;
next	1.46.2.3;

1.46.2.3
date	2012.11.18.12.44.28;	author svnexp;	state Exp;
branches;
next	;

1.46.2.1.2.1
date	2009.10.25.01.10.29;	author kensmith;	state Exp;
branches;
next	;

1.46.2.1.4.1
date	2010.06.14.02.09.06;	author kensmith;	state Exp;
branches;
next	;

1.46.2.1.6.1
date	2010.12.21.17.09.25;	author kensmith;	state Exp;
branches;
next	;

1.46.2.1.8.1
date	2012.03.03.06.15.13;	author kensmith;	state Exp;
branches;
next	1.46.2.1.8.2;

1.46.2.1.8.2
date	2012.11.17.08.25.07;	author svnexp;	state Exp;
branches;
next	;

1.44.2.1
date	2007.10.18.12.08.53;	author nyan;	state Exp;
branches
	1.44.2.1.4.1
	1.44.2.1.6.1
	1.44.2.1.8.1
	1.44.2.1.10.1;
next	1.44.2.2;

1.44.2.2
date	2012.11.17.08.04.50;	author svnexp;	state Exp;
branches;
next	;

1.44.2.1.4.1
date	2008.11.25.02.59.29;	author kensmith;	state Exp;
branches;
next	;

1.44.2.1.6.1
date	2009.04.15.03.14.26;	author kensmith;	state Exp;
branches;
next	;

1.44.2.1.8.1
date	2010.02.10.00.26.20;	author kensmith;	state Exp;
branches;
next	;

1.44.2.1.10.1
date	2010.12.21.17.10.29;	author kensmith;	state Exp;
branches;
next	1.44.2.1.10.2;

1.44.2.1.10.2
date	2012.11.17.08.17.04;	author svnexp;	state Exp;
branches;
next	;

1.41.2.1
date	2006.10.25.15.03.29;	author jhb;	state Exp;
branches;
next	1.41.2.2;

1.41.2.2
date	2007.10.24.11.50.07;	author nyan;	state Exp;
branches
	1.41.2.2.4.1;
next	1.41.2.3;

1.41.2.3
date	2012.11.17.07.42.36;	author svnexp;	state Exp;
branches;
next	;

1.41.2.2.4.1
date	2008.10.02.02.57.24;	author kensmith;	state Exp;
branches;
next	;

1.37.2.1
date	2004.08.23.04.26.55;	author marcel;	state Exp;
branches;
next	1.37.2.2;

1.37.2.2
date	2005.02.13.07.23.31;	author obrien;	state Exp;
branches;
next	;

1.17.2.1
date	2000.05.18.08.10.54;	author ps;	state Exp;
branches;
next	1.17.2.2;

1.17.2.2
date	2000.07.06.23.44.58;	author obrien;	state Exp;
branches;
next	1.17.2.3;

1.17.2.3
date	2000.12.28.12.04.04;	author ps;	state Exp;
branches;
next	1.17.2.4;

1.17.2.4
date	2001.03.04.04.55.10;	author obrien;	state Exp;
branches;
next	1.17.2.5;

1.17.2.5
date	2001.03.05.13.08.45;	author ru;	state Exp;
branches;
next	1.17.2.6;

1.17.2.6
date	2002.07.19.18.46.28;	author ru;	state Exp;
branches;
next	1.17.2.7;

1.17.2.7
date	2012.11.17.07.25.19;	author svnexp;	state Exp;
branches;
next	;

1.7.2.1
date	99.02.06.14.27.45;	author dcs;	state Exp;
branches;
next	1.7.2.2;

1.7.2.2
date	99.08.29.16.20.35;	author peter;	state Exp;
branches;
next	;


desc
@@


1.55
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/244531
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
@
text
@# $FreeBSD: head/sys/boot/ficl/Makefile 244531 2012-12-21 05:22:14Z rpaulo $
#

FICLDIR?=	${.CURDIR}

.if !defined(FICL64)
.PATH: ${FICLDIR}/${MACHINE_CPUARCH:S/amd64/i386/}
.else
.PATH: ${FICLDIR}/${MACHINE_CPUARCH}
.endif
BASE_SRCS=	dict.c ficl.c fileaccess.c float.c loader.c math64.c \
		prefix.c search.c stack.c tools.c vm.c words.c

SRCS=		${BASE_SRCS} sysdep.c softcore.c
CLEANFILES=	softcore.c testmain testmain.o
CFLAGS+=	-ffreestanding
.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
.if !defined(FICL64)
CFLAGS+=	-march=i386
CFLAGS+=	-mpreferred-stack-boundary=2
.endif
CFLAGS+=	-mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float
.endif
.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm"
CFLAGS+=	-msoft-float
.endif
.if ${MACHINE} == "pc98"
CFLAGS+=	-Os -DPC98
.endif
.if HAVE_PNP
CFLAGS+=	-DHAVE_PNP
.endif
.ifmake testmain
CFLAGS+=	-DTESTMAIN -D_TESTMAIN
SRCS+=		testmain.c
PROG=		testmain
.include <bsd.prog.mk>
.else
LIB=		ficl
INTERNALLIB=
.include <bsd.lib.mk>
.endif

# Standard softwords
.PATH: ${FICLDIR}/softwords
SOFTWORDS=	softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \
		ifbrack.fr
# Optional OO extension softwords
#SOFTWORDS+=	oo.fr classes.fr

.if ${MACHINE_CPUARCH} == "amd64" && !defined(FICL64)
CFLAGS+=	-m32 -I.
.endif

.if ${MACHINE_ARCH} == "powerpc64"
CFLAGS+=	-m32 -mcpu=powerpc -I.
.endif

CFLAGS+=	-I${FICLDIR} -I${FICLDIR}/${MACHINE_CPUARCH:S/amd64/i386/} \
		-I${FICLDIR}/../common

softcore.c: ${SOFTWORDS} softcore.awk
	(cd ${FICLDIR}/softwords; cat ${SOFTWORDS} \
	    | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET}

.if ${MACHINE_CPUARCH} == "amd64"
.if !exists(machine)
${SRCS:M*.c:R:S/$/.o/g}: machine

beforedepend ${OBJS}: machine
.endif

machine:
	ln -sf ${.CURDIR}/../../i386/include machine

CLEANFILES+=	machine
.endif
@


1.55.2.1
log
@file Makefile was added on branch RELENG_8_4 on 2013-03-28 13:04:01 +0000
@
text
@d1 77
@


1.55.2.2
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/248810
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
@
text
@a0 65
# $FreeBSD: releng/8.4/sys/boot/ficl/Makefile 243220 2012-11-18 12:30:04Z avg $
#
.PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/}
BASE_SRCS=	dict.c ficl.c fileaccess.c float.c loader.c math64.c \
		prefix.c search.c stack.c tools.c vm.c words.c

SRCS=		${BASE_SRCS} sysdep.c softcore.c
CLEANFILES=	softcore.c testmain testmain.o
CFLAGS+=	-ffreestanding
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64"
CFLAGS+=	-march=i386
CFLAGS+=	-mpreferred-stack-boundary=2
CFLAGS+=	-mno-mmx -mno-3dnow -mno-sse -mno-sse2
.endif
.if ${MACHINE_ARCH} == "i386"
CFLAGS+=	-mno-sse3
.endif
.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "arm"
CFLAGS+=	-msoft-float
.endif
.if ${MACHINE} == "pc98"
CFLAGS+=	-Os -DPC98
.endif
.if HAVE_PNP
CFLAGS+=	-DHAVE_PNP
.endif
.ifmake testmain
CFLAGS+=	-DTESTMAIN -D_TESTMAIN
SRCS+=		testmain.c
PROG=		testmain
.include <bsd.prog.mk>
.else
LIB=		ficl
INTERNALLIB=
.include <bsd.lib.mk>
.endif

# Standard softwords
.PATH: ${.CURDIR}/softwords
SOFTWORDS=	softcore.fr jhlocal.fr marker.fr freebsd.fr ficllocal.fr \
		ifbrack.fr
# Optional OO extension softwords
#SOFTWORDS+=	oo.fr classes.fr

.if ${MACHINE_ARCH} == "amd64"
CFLAGS+=	-m32 -I.
.endif

CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} \
		-I${.CURDIR}/../common

softcore.c: ${SOFTWORDS} softcore.awk
	(cd ${.CURDIR}/softwords; cat ${SOFTWORDS} \
	    | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET}

.if ${MACHINE_ARCH} == "amd64"
${SRCS:M*.c:R:S/$/.o/g}: machine

beforedepend ${OBJS}: machine

machine:
	ln -sf ${.CURDIR}/../../i386/include machine

CLEANFILES+=	machine
.endif
@


1.54
log
@Switching exporter and resync
@
text
@d1 1
a1 1
# $FreeBSD: head/sys/boot/ficl/Makefile 241785 2012-10-20 16:57:23Z avg $
d3 8
a10 1
.PATH: ${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/}
d18 1
d21 1
d45 1
a45 1
.PATH: ${.CURDIR}/softwords
d51 1
a51 1
.if ${MACHINE_CPUARCH} == "amd64"
d59 2
a60 2
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/} \
		-I${.CURDIR}/../common
d63 1
a63 1
	(cd ${.CURDIR}/softwords; cat ${SOFTWORDS} \
@


1.53
log
@SVN rev 241785 on 2012-10-20 16:57:23Z by avg

boot: use -march=i386 for both i386 and amd64 builds

.. so that consistent compilation algorithms are used for both
architectures as in practice the binaries are expected to be
interchangeable (for time being).
Previously i386 used default setting which were equivalent to
-march=i486 -mtune=generic.
The only difference is using smaller but slower "leave" instructions.

Discussed with:	jhb, dim
MFC after:	29 days
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.52
log
@SVN rev 238795 on 2012-07-26 10:10:54Z by ache

Try to avoid all files dependence on the modification time of the large and
often modified directory created symbolic links points to - it cause
unnecessary full rebuilds each time make runs when directory is changed.
So do it only if symbolic link does not exists, which usually means that
objdir is clean anyway.

MFC after:      1 week
@
text
@d11 1
d43 1
a43 1
CFLAGS+=	-m32 -march=i386 -I.
@


1.51
log
@SVN rev 217033 on 2011-01-05 22:24:33Z by dim

On i386 and amd64, consistently use the following options whenever we
want to avoid using any "advanced" CPU features:

  -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float
@
text
@d57 1
d61 1
@


1.51.2.1
log
@SVN rev 225736 on 2011-09-23 00:51:37Z by kensmith

Copy head to stable/9 as part of 9.0-RELEASE release cycle.

Approved by:	re (implicit)
@
text
@@


1.51.2.2
log
@SVN rev 238992 on 2012-08-02 15:13:12Z by ache

MFC r238795

Try to avoid all files dependence on the modification time of the large
and often modified directory created symbolic links points to - it cause
unnecessary full rebuilds each time make runs when directory is changed.
So do it only if symbolic link does not exists, which usually means that
objdir is clean anyway.

Approved by:    re (kib)
@
text
@a56 1
.if !exists(machine)
a59 1
.endif
@


1.51.2.3
log
@## SVN ##
## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/ 242902
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ## r242902 | dteske | 2012-11-11 23:29:45 +0000 (Sun, 11 Nov 2012) | 10 lines
## SVN ##
## SVN ## Fix a regression introduced by SVN r211417 that saw the breakage of a feature
## SVN ## documented in usr.sbin/sysinstall/help/shortcuts.hlp (reproduced below):
## SVN ##
## SVN ## If /usr/sbin/sysinstall is linked to another filename, say
## SVN ## `/usr/local/bin/configPackages', then the basename will be used
## SVN ## as an implicit command name.
## SVN ##
## SVN ## Reviewed by:	adrian (co-mentor)
## SVN ## Approved by:	adrian (co-mentor)
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ##
@
text
@d1 1
a1 1
# $FreeBSD: stable/9/sys/boot/ficl/Makefile 238992 2012-08-02 15:13:12Z ache $
@


1.51.2.4
log
@## SVN ##
## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/ 243219
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ## r243219 | avg | 2012-11-18 12:28:29 +0000 (Sun, 18 Nov 2012) | 2 lines
## SVN ##
## SVN ## MFC r241785: boot: use -march=i386 for both i386 and amd64 builds
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ##
@
text
@d1 1
a1 1
# $FreeBSD: stable/9/sys/boot/ficl/Makefile 243219 2012-11-18 12:28:29Z avg $
a10 1
CFLAGS+=	-march=i386
d42 1
a42 1
CFLAGS+=	-m32 -I.
@


1.51.2.5
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/260096
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
@
text
@d1 1
a1 1
# $FreeBSD: stable/9/sys/boot/ficl/Makefile 260096 2013-12-30 20:15:46Z dim $
d12 1
a12 1
CFLAGS.gcc+=	-mpreferred-stack-boundary=2
@


1.51.2.2.2.1
log
@SVN rev 239080 on 2012-08-05 23:54:33Z by kensmith

Copy stable/9 to releng/9.1 as part of the 9.1-RELEASE release process.

Approved by:	re (implicit)
@
text
@@


1.51.2.2.2.2
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: releng/9.1/sys/boot/ficl/Makefile 238992 2012-08-02 15:13:12Z ache $
@


1.51.2.1.2.1
log
@SVN rev 227445 on 2011-11-11 04:20:22Z by kensmith

Copy stable/9 to releng/9.0 as part of the FreeBSD 9.0-RELEASE release
cycle.

Approved by:	re (implicit)
@
text
@@


1.51.2.1.2.2
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: releng/9.0/sys/boot/ficl/Makefile 217033 2011-01-05 22:24:33Z dim $
@


1.50
log
@SVN rev 217030 on 2011-01-05 22:12:06Z by dim

Remove an empty .if/.endif pair from sys/boot/ficl/Makefile that I
forgot to cleanup in the last commit.
@
text
@d12 1
a12 1
CFLAGS+=	-mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3
@


1.49
log
@SVN rev 217029 on 2011-01-05 22:00:37Z by dim

In lib/libstand, sys/boot/ficl and sys/boot/zfs, -mno-sse3 should also
be used for amd64, not just for i386.
@
text
@a13 2
.if ${MACHINE_CPUARCH} == "i386"
.endif
@


1.48
log
@SVN rev 211678 on 2010-08-23 01:43:47Z by imp

MF tbemd: Minor tweaks, prefer MACHINE_CPUARCH generally to MACHINE_ARCH (which simplifies some powerpc/powerpc64 ifs)
@
text
@d12 1
a12 1
CFLAGS+=	-mno-mmx -mno-3dnow -mno-sse -mno-sse2
a14 1
CFLAGS+=	-mno-sse3
@


1.47
log
@SVN rev 209920 on 2010-07-12 00:49:22Z by nwhitehorn

Provide support in loader for booting 64-bit PowerPC kernels. Like amd64,
64-bit PowerPC kernels are loaded by a 32-bit loader, since nearly all
powerpc64 firmwares execute in 32-bit mode.
@
text
@d3 1
a3 1
.PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/:S/powerpc64/powerpc/}
d10 1
a10 1
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64"
d14 1
a14 1
.if ${MACHINE_ARCH} == "i386"
d17 1
a17 1
.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64" || ${MACHINE_ARCH} == "arm" 
d44 1
a44 1
.if ${MACHINE_ARCH} == "amd64"
d52 1
a52 1
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/:S/powerpc64/powerpc/} \
d59 1
a59 1
.if ${MACHINE_ARCH} == "amd64"
@


1.46
log
@SVN rev 183878 on 2008-10-14 10:11:14Z by raj

Initial support of loader(8) for ARM machines running U-Boot.

This uses the common U-Boot support lib (sys/boot/uboot, already used on
FreeBSD/powerpc), and assumes the underlying firmware has the modern API for
stand-alone apps enabled in the config (CONFIG_API).

Only netbooting is supported at the moment.

Obtained from:	Marvell, Semihalf
@
text
@d3 1
a3 1
.PATH: ${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/}
d17 1
a17 1
.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "arm"
d48 5
a52 1
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH:S/amd64/i386/} \
@


1.46.2.1
log
@SVN rev 196045 on 2009-08-03 08:13:06Z by kensmith

Copy head to stable/8 as part of 8.0 Release cycle.

Approved by:	re (Implicit)
@
text
@@


1.46.2.2
log
@## SVN ##
## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/ 242909
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ## r242909 | dim | 2012-11-12 07:47:19 +0000 (Mon, 12 Nov 2012) | 20 lines
## SVN ##
## SVN ## MFC r242625:
## SVN ##
## SVN ## Remove duplicate const specifiers in many drivers (I hope I got all of
## SVN ## them, please let me know if not).  Most of these are of the form:
## SVN ##
## SVN ## static const struct bzzt_type {
## SVN ##       [...list of members...]
## SVN ## } const bzzt_devs[] = {
## SVN ##       [...list of initializers...]
## SVN ## };
## SVN ##
## SVN ## The second const is unnecessary, as arrays cannot be modified anyway,
## SVN ## and if the elements are const, the whole thing is const automatically
## SVN ## (e.g. it is placed in .rodata).
## SVN ##
## SVN ## I have verified this does not change the binary output of a full kernel
## SVN ## build (except for build timestamps embedded in the object files).
## SVN ##
## SVN ## Reviewed by:	yongari, marius
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ##
@
text
@d1 1
a1 1
# $FreeBSD: stable/8/sys/boot/ficl/Makefile 183878 2008-10-14 10:11:14Z raj $
@


1.46.2.3
log
@## SVN ##
## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/ 243220
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ## r243220 | avg | 2012-11-18 12:30:04 +0000 (Sun, 18 Nov 2012) | 2 lines
## SVN ##
## SVN ## MFC r241785: boot: use -march=i386 for both i386 and amd64 builds
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ##
@
text
@d1 1
a1 1
# $FreeBSD: stable/8/sys/boot/ficl/Makefile 243220 2012-11-18 12:30:04Z avg $
a10 1
CFLAGS+=	-march=i386
d45 1
a45 1
CFLAGS+=	-m32 -I.
@


1.46.2.1.8.1
log
@SVN rev 232438 on 2012-03-03 06:15:13Z by kensmith

Copy stable/8 to releng/8.3 as part of 8.3-RELEASE release cycle.

Approved by:	re (implicit)
@
text
@@


1.46.2.1.8.2
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: releng/8.3/sys/boot/ficl/Makefile 183878 2008-10-14 10:11:14Z raj $
@


1.46.2.1.6.1
log
@SVN rev 216617 on 2010-12-21 17:09:25Z by kensmith

Copy stable/8 to releng/8.2 in preparation for FreeBSD-8.2 release.

Approved by:	re (implicit)
@
text
@@


1.46.2.1.4.1
log
@SVN rev 209145 on 2010-06-14 02:09:06Z by kensmith

Copy stable/8 to releng/8.1 in preparation for 8.1-RC1.

Approved by:	re (implicit)
@
text
@@


1.46.2.1.2.1
log
@SVN rev 198460 on 2009-10-25 01:10:29Z by kensmith

Copy stable/8 to releng/8.0 as part of 8.0-RELEASE release procedure.

Approved by:	re (implicit)
@
text
@@


1.45
log
@Optimize for size on pc98.  It enables to boot a kernel again.

I don't know what's wrong (loader, boot2 or others), but this change is
effective.

Tested by:	NAKAJI Hiroyuki
MFC after:	3 days
@
text
@d17 1
a17 1
.if ${MACHINE_ARCH} == "powerpc"
@


1.44
log
@Add -march=i386 to fix amd64 build by generating the same code
as i386 would do.
@
text
@d21 1
a21 1
CFLAGS+=	-DPC98
@


1.44.2.1
log
@MFC: Optimize for size on pc98.  It enables to boot a kernel again.

Approved by:	re (kensmith)
@
text
@d21 1
a21 1
CFLAGS+=	-Os -DPC98
@


1.44.2.2
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: stable/7/sys/boot/ficl/Makefile 172751 2007-10-18 12:08:53Z nyan $
@


1.44.2.1.10.1
log
@SVN rev 216618 on 2010-12-21 17:10:29Z by kensmith

Copy stable/7 to releng/7.4 in preparation for FreeBSD-7.4 release.

Approved by:	re (implicit)
@
text
@@


1.44.2.1.10.2
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: releng/7.4/sys/boot/ficl/Makefile 172751 2007-10-18 12:08:53Z nyan $
@


1.44.2.1.8.1
log
@SVN rev 203736 on 2010-02-10 00:26:20Z by kensmith

Copy stable/7 to releng/7.3 as part of the 7.3-RELEASE process.

Approved by:	re (implicit)
@
text
@@


1.44.2.1.6.1
log
@SVN rev 191087 on 2009-04-15 03:14:26Z by kensmith

Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE.

Approved by:	re (implicit)
@
text
@@


1.44.2.1.4.1
log
@SVN rev 185281 on 2008-11-25 02:59:29Z by kensmith

Create releng/7.1 in preparation for moving into RC phase of 7.1 release
cycle.

Approved by:	re (implicit)
@
text
@@


1.43
log
@Remove Alpha bits for ficl.
@
text
@d45 1
a45 1
CFLAGS+=	-m32 -I.
@


1.42
log
@Add -mno-sse3 for prescott/nocona
@
text
@a9 3
.if ${MACHINE_ARCH} == "alpha"
CFLAGS+=	-mno-fp-regs -Os
.endif
@


1.41
log
@Ensure GCC does not use FP registers in integer code.
I really don't like cluttering up the compiler invocation,
but this bigger hammer will fix reported problems for now.
@
text
@d17 3
@


1.41.2.1
log
@MFC: Add -march=i386 for the amd64 build to generate smaller binaries.

Approved by:	re (hrs)
@
text
@d45 1
a45 1
CFLAGS+=	-m32 -march=i386 -I.
@


1.41.2.2
log
@MFC: Optimize for size on pc98.
@
text
@d21 1
a21 1
CFLAGS+=	-Os -DPC98
@


1.41.2.3
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: stable/6/sys/boot/ficl/Makefile 172923 2007-10-24 11:50:07Z nyan $
@


1.41.2.2.4.1
log
@SVN rev 183531 on 2008-10-02 02:57:24Z by kensmith

Create releng/6.4 from stable/6 in preparation for 6.4-RC1.

Approved by:	re (implicit)
@
text
@@


1.40
log
@For variables that are only checked with defined(), don't provide
any fake value.
@
text
@d15 1
@


1.39
log
@Forced commit to document:

	Doug Rabson <dfr@@nlsystems.com>
	Message-Id: <200408220940.18504.dfr@@nlsystems.com>
	Size does matter for the alpha loader.  The firmware gives it 256k
	of address space which we overflowed many years ago.  I extended it
	in sys/boot/alpha/common/main.c:extend_heap() by adding 512k to the
	loader's mapped address space.
@
text
@d32 1
a32 1
INTERNALLIB=	yes
@


1.38
log
@Part 2 of fixing the boot code: gcc 3.4 fixes.

The whole problem seems to be size. Which is odd, because it is said
that size doesn't matter. Anyway... Add -Os to strategic places in the
makefile to have the final loader be as mall as possible. This seems
to be enough to make it work. For now... I think something is more
fundamentally wrong; or something more fundamental is wrong. Potato,
potaato.
@
text
@@


1.37
log
@Untangle building of AMD64 boot code.

Tested on:	amd64 (sledge)
@
text
@d11 1
a11 1
CFLAGS+=	-mno-fp-regs
@


1.37.2.1
log
@MFC of alpha boot fixes for binutils 2.15 and gcc-3.4.2.

Revisions:
	alpha/Makefile.inc		1.10
	alpha/common/Makefile.common	1.19
	alpha/common/ldscript		1.1
	ficl/Makefile			1.38

Approved by: re (kensmith)
@
text
@d11 1
a11 1
CFLAGS+=	-mno-fp-regs -Os
@


1.37.2.2
log
@MFC: For variables that are only checked with defined(), don't provide
     any fake value.
@
text
@d32 1
a32 1
INTERNALLIB=
@


1.36
log
@Disable floating point on PowerPC for the ficl library.
@
text
@d3 1
a3 5
.if ${MACHINE_ARCH} == "amd64"
.MAKEFLAGS:  MACHINE_ARCH=i386 MACHINE=i386 REALLY_AMD64=true
.endif

.PATH: ${.CURDIR}/${MACHINE_ARCH}
d13 1
a13 1
.if ${MACHINE_ARCH} == "i386"
d43 1
a43 1
.if defined(REALLY_AMD64)
d47 2
a48 1
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH} -I${.CURDIR}/../common
d54 1
a54 1
.if defined(REALLY_AMD64)
@


1.35
log
@bsd.lib.mk,v 1.143 no longer uses ld(1) directly to strip
symbols from intermediate object files, so these hacks to
get AMD64 compile are no longer needed.

Tested on:	sledge.FreeBSD.org
@
text
@d20 3
@


1.34
log
@Build on amd64.  Yes, I know this isn't particularly nice.
@
text
@a45 1
LDFLAGS=	-m elf_i386_fbsd
@


1.33
log
@Set arch-pc98 env to true for pc98.
@
text
@d3 4
d44 5
d54 11
@


1.32
log
@Removed now unused INTERNALSTATICLIB.
INTERNALLIB now implies NOPIC and NOPROFILE.
Removed gratuitous NOMAN.
@
text
@d16 3
@


1.31
log
@Back out last commit.  I expect our bsd.*.mk gods to remove the need for
defining so many extra things in addition to INTERNALLIB.  We don't like
repetitive C code and we shouldn't for make code either.
@
text
@a26 2
INTERNALSTATICLIB= yes
NOPROFILE=	yes
@


1.30
log
@NOPIC, NOPROFILE, NOMAN, and INTERNALSTATICLIB are redundant when using
INTERNALLIB now.
@
text
@d27 2
@


1.29
log
@-ffreestanding is the word.
(also resort some CFLAGS such that the more "important" value are first so
they are easier to see)
@
text
@a26 2
INTERNALSTATICLIB= yes
NOPROFILE=	yes
@


1.28
log
@Partical style cleanup.
@
text
@d9 1
@


1.27
log
@Upgrade to FICL version 3.02. Anything wrong is my fault, everything right is
due Jon Mini.

PR:		36308
Submitted by:	Jon Mini <mini@@haikugeek.com>
MFC after:	4 weeks
@
text
@d3 3
a5 3
.PATH:			${.CURDIR}/${MACHINE_ARCH}
BASE_SRCS=		dict.c ficl.c fileaccess.c float.c loader.c math64.c \
			prefix.c search.c stack.c tools.c vm.c words.c
d7 2
a8 2
SRCS=			${BASE_SRCS} sysdep.c softcore.c
CLEANFILES=		softcore.c testmain testmain.o
d10 1
a10 1
CFLAGS+=		-mno-fp-regs
d13 1
a13 1
CFLAGS+=		-mpreferred-stack-boundary=2
d16 1
a16 1
CFLAGS+=		-DHAVE_PNP
d19 3
a21 3
CFLAGS+=			-DTESTMAIN -D_TESTMAIN
SRCS+=				testmain.c
PROG=			testmain
d24 4
a27 4
LIB=			ficl
INTERNALLIB=		yes
INTERNALSTATICLIB=	yes
NOPROFILE=		yes
d32 1
a37 1
.PATH:		${.CURDIR}/softwords
d40 1
a40 1
softcore.c:	${SOFTWORDS} softcore.awk
a42 2


@


1.26
log
@Bring in ficl 2.05.

This version has a step debugger, which now completely replaces the
old trace feature. Also, we moved all of the FreeBSD-specific MI
code to loader.c, reducing the diff between this and the official
FICL distribution.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.25 2001/03/02 16:52:13 ru Exp $
d4 3
a6 2
BASE_SRCS=		dict.c ficl.c math64.c search.c stack.c tools.c \
			prefix.c loader.c vm.c words.c
@


1.25
log
@setlocale(3) has been fixed to match POSIX standard:
LC_ALL takes precedence over other LC_* envariables.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.24 2000/12/01 01:58:48 ache Exp $
d4 2
a5 1
BASE_SRCS=		dict.c ficl.c math64.c stack.c vm.c words.c
a26 1
SRCS+=			loader.c
d37 1
a37 1
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH} -I${.CURDIR}/../common -DFICL_TRACE
@


1.24
log
@Cosmetique: don't use localized `date`
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.23 2000/11/14 21:02:48 obrien Exp $
d41 1
a41 1
	    | awk -f softcore.awk -v datestamp="`LC_TIME=C date`") > ${.TARGET}
@


1.23
log
@Don't use the Gawkism strftime().  Pass in the date stamp on the awk
command line instead.

Approved by:	dcs
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.22 2000/09/10 17:11:27 dfr Exp $
d41 1
a41 1
	    | awk -f softcore.awk -v datestamp="`date`") > ${.TARGET}
@


1.22
log
@Fix this so that we actually define HAVE_PNP when its available.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.21 2000/09/10 12:15:30 dfr Exp $
d40 2
a41 1
	(cd ${.CURDIR}/softwords; cat ${SOFTWORDS} | awk -f softcore.awk) > ${.TARGET}
@


1.21
log
@Only build PnP parts if the platform supports PnP.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.20 2000/08/11 23:23:20 peter Exp $
a12 1
.ifmake testmain
d14 1
a14 1
CFLAGS+=			-DHAVE_PNP
d16 1
@


1.20
log
@Add -mpreferred-stack-boundary=2 to CFLAGS for i386.  This and libstand
reduces /boot/loader from 163840 bytes to 155648 and pxeboot from 165888
bytes to 157696 bytes.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.19 2000/06/07 22:07:00 dcs Exp $
d14 3
@


1.19
log
@Add setenv, getenv, setenv?, unsetenv, copyin and copyout to FICL.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.18 2000/05/12 21:51:20 peter Exp $
d9 3
@


1.18
log
@Stop libficl from using floating point registers - this was cauing
dictDelete() to fault early on the Alpha and was the original cause of
the Alpha ficl failures.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.17 2000/01/28 03:07:25 dcs Exp $
d20 1
d31 1
a31 1
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH} -DFICL_TRACE
@


1.17
log
@Add testmain.o to CLEANFILES.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.16 2000/01/28 02:40:23 dcs Exp $
d7 3
@


1.17.2.1
log
@MFC: Reactivate forth on the alpha.  You *MUST* build and install
a current libstand to make this work.
@
text
@d1 1
a1 1
# $FreeBSD$
a6 3
.if ${MACHINE_ARCH} == "alpha"
CFLAGS+=		-mno-fp-regs
.endif
@


1.17.2.2
log
@MFC:  Add setenv, getenv, setenv?, unsetenv, copyin and copyout,
      ANS CORE EXT and SOURCE-ID.
      Also don't use FP regs on the Alpha in libficl and other Alpha
	  needed fixes.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.17.2.1 2000/05/18 08:10:54 ps Exp $
a19 1
SRCS+=			loader.c
d30 1
a30 1
CFLAGS+=	-I${.CURDIR} -I${.CURDIR}/${MACHINE_ARCH} -I${.CURDIR}/../common -DFICL_TRACE
@


1.17.2.3
log
@MFC: Add the -mpreferred-stack-boundary=2 option to reduce code bloat.
@
text
@d1 1
a1 1
# $FreeBSD$
a8 3
.endif
.if ${MACHINE_ARCH} == "i386"
CFLAGS+=		-mpreferred-stack-boundary=2
@


1.17.2.4
log
@MFC: (don't use the Gawkism strftime())
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.17.2.3 2000/12/28 12:04:04 ps Exp $
d37 1
a37 2
	(cd ${.CURDIR}/softwords; cat ${SOFTWORDS} \
	    | awk -f softcore.awk -v datestamp="`date`") > ${.TARGET}
@


1.17.2.5
log
@MFC: fix setlocale(3) so that LC_ALL environment variable (if set
and not NULL) is preferred over other LC_* environment variables,
as required by POSIX.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.17.2.4 2001/03/04 04:55:10 obrien Exp $
d38 1
a38 1
	    | awk -f softcore.awk -v datestamp="`LC_ALL=C date`") > ${.TARGET}
@


1.17.2.6
log
@MFC: new bsd.lib.mk API.
@
text
@d1 1
a1 1
# $FreeBSD$
d21 2
@


1.17.2.7
log
@Switch importer
@
text
@d1 1
a1 1
# $FreeBSD: stable/4/sys/boot/ficl/Makefile 100377 2002-07-19 18:46:30Z ru $
@


1.16
log
@Try my hand again at removing ugly testmain target.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.15 1999/11/23 16:28:39 dcs Exp $
d6 1
a6 1
CLEANFILES=		softcore.c testmain
@


1.15
log
@Revert ill-considered simplification in 1.13.

Pointed by: peter
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.14 1999/11/23 15:55:28 dcs Exp $
d4 9
a13 1
NOPROFILE=		yes
d16 3
a18 3
BASE_SRCS=		dict.c ficl.c math64.c stack.c vm.c words.c
SRCS=			${BASE_SRCS} sysdep.c softcore.c
CLEANFILES=		softcore.c testmain
a31 10
.include <bsd.lib.mk>

testmain:      ${.CURDIR}/testmain.c ${SRCS}
	@@for i in ${BASE_SRCS}; do echo $${i}... ; \
	  ${CC} -c ${CFLAGS} -DTESTMAIN ${.CURDIR}/$${i}; done
	@@echo softdep.c...
	@@${CC} -c ${CFLAGS} -D_TESTMAIN softcore.c
	@@echo sysdep.c
	@@${CC} -c ${CFLAGS} -DTESTMAIN ${.CURDIR}/${MACHINE_ARCH}/sysdep.c
	${CC} -o ${.TARGET} ${CFLAGS} ${.CURDIR}/testmain.c ${OBJS}
@


1.14
log
@Improve Makefile by using .PATH.

Taught by: peter
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.13 1999/11/23 15:23:54 dcs Exp $
d3 1
a3 2
.PATH:	${.CURDIR}/${MACHINE_ARCH}

d8 2
a9 2
BASE_SRCS=		dict.c ficl.c math64.c stack.c sysdep.c vm.c words.c
SRCS=			${BASE_SRCS} softcore.c
d26 8
a33 4
CFLAGS+=	-DTESTMAIN

testmain:      ${.CURDIR}/testmain.c ${OBJS}
	cc -o ${.TARGET} ${CFLAGS} ${.CURDIR}/testmain.c ${OBJS}
@


1.13
log
@Improve on ficl port to alpha.

Files sysdep.[ch] are now in ${MACHINE_ARCH} subdirectory. Internal
#if's used to identify the platform where removed.

Make rule for target testmain was greatly simplified, because it was
easier simplifying it than changing it to support the new location of
sysdep.[ch].

(a repo-copy was done on sysdep.[ch], of course)
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.12 1999/09/29 04:43:05 dcs Exp $
d3 2
d9 2
a10 2
BASE_SRCS=		dict.c ficl.c math64.c stack.c vm.c words.c
SRCS=			${BASE_SRCS} ${MACHINE_ARCH}/sysdep.c softcore.c
@


1.12
log
@Bring in ficl version 2.03. No version bump for loader.
@
text
@d1 1
a1 1
# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.11 1999/08/28 00:39:54 peter Exp $
d7 2
a8 2
BASE_SRCS=		dict.c ficl.c math64.c stack.c sysdep.c vm.c words.c
SRCS=			${BASE_SRCS} softcore.c
d18 1
a18 1
CFLAGS+=	-I${.CURDIR} -DFICL_TRACE
d25 4
a28 6
testmain:      ${.CURDIR}/testmain.c ${SRCS}
	@@for i in ${BASE_SRCS}; do echo $${i}... ; \
	  ${CC} -c ${CFLAGS} -DTESTMAIN ${.CURDIR}/$${i}; done
	@@echo softdep.c...
	@@${CC} -c ${CFLAGS} -D_TESTMAIN softcore.c
	cc -o ${.TARGET} ${.CURDIR}/testmain.c ${OBJS}
@


1.11
log
@$Id$ -> $FreeBSD$
@
text
@d1 1
a1 1
# $FreeBSD$
d12 2
a13 1
SOFTWORDS=	softcore.fr jhlocal.fr marker.fr freebsd.fr
@


1.10
log
@Reactivate trace! after making it egcs-friendly.
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.9 1999/03/17 23:03:36 dcs Exp $
@


1.9
log
@Disable trace! until it gets fixed.
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.8 1999/02/04 17:13:30 dcs Exp $
d17 1
a17 1
CFLAGS+=	-I${.CURDIR} # -DFICL_TRACE
@


1.8
log
@Make FICL_TRACE default.

Add freebsd.fr, for FreeBSD specific forth source. Add $ and %, to
replace the lost @@ and - functionality of include. $ has the opposite
behavior of @@ though, since the default behavior was inverted.
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.7 1999/01/18 19:05:26 msmith Exp $
d17 1
a17 1
CFLAGS+=	-I${.CURDIR} -DFICL_TRACE
@


1.7
log
@Transition from using Perl to using awk for our text-manipulation
needs.  This removes the dependancy on Perl for the generation of the
loader, allowing the world to be built on a perl-free system.

Submitted by:	Joe Abley <jabley@@clear.co.nz>
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.6 1998/11/05 08:39:42 jkh Exp $
d12 1
a12 1
SOFTWORDS=	softcore.fr jhlocal.fr marker.fr
d17 1
a17 1
CFLAGS+=	-I${.CURDIR}
@


1.7.2.1
log
@MFC:

Rename "source" as "include". Make it capable of including forth source,
while stripping #@@- functionality (in the BOOT_FORTH case).

Add builtin "more". (This is already in help.common -- must got into one
of Mike's MFC).

Make bf_run return ficlExec() result code. Push "interpret" on the
execution stack before calling ficlExec() (not doing this was a bug,
if we want ficlExec() to recurse).

Add EXCEPTION and MEMORY-ALLOC word sets.

Fix "evaluate" to respect buffer size.

Make builtins "throw" errors instead of pushing them on the stack. Move
error message printing from bf_command() to bf_run().

Make builtins state-aware.

Fix "type" not to use fixed sized buffers.

Add version words to ficl.

Add trace facility to ficl.

Add words $ and % to replace @@ and - in "include".

Approved by: jhk
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.8 1999/02/04 17:13:30 dcs Exp $
d12 1
a12 1
SOFTWORDS=	softcore.fr jhlocal.fr marker.fr freebsd.fr
d17 1
a17 1
CFLAGS+=	-I${.CURDIR} -DFICL_TRACE
@


1.7.2.2
log
@$Id$ -> $FreeBSD$
@
text
@d1 1
a1 1
# $FreeBSD$
@


1.6
log
@Remember a bit more of my forth and do:

o Add fexists word to check for the presence of a file
o make fexists and fload immediate words which DTRT both interpreted
  and compiled (doh!)
o add an init word which gets run at bootstrapping time to do extra
  post-coldload initialization (in the default implementation, we
  look for /boot/boot.4th and load it if found).
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.5 1998/11/05 07:27:55 jkh Exp $
d19 2
a20 2
softcore.c:	${SOFTWORDS} softcore.pl
	(cd ${.CURDIR}/softwords; perl softcore.pl ${SOFTWORDS}) > ${.TARGET}
@


1.5
log
@1. rebuild all elements of testmain properly for safety.
2. add fload and key prims for doing simple file and terminal I/O, respectively
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.4 1998/11/05 04:54:05 msmith Exp $
d20 1
a20 1
	(cd ${.CURDIR}/softwords; ${PERL} softcore.pl ${SOFTWORDS}) > ${.TARGET}
@


1.4
log
@Explicitly invoke perl to run the softwords.pl script in case the
script is not executable.
Submitted by:	Don Lewis <Don.Lewis@@tsc.tdk.com>
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.3 1998/11/04 03:42:16 msmith Exp $
d7 2
a8 2
SRCS=			dict.c ficl.c math64.c softcore.c stack.c sysdep.c \
			vm.c words.c
d20 1
a20 1
	(cd ${.CURDIR}/softwords; perl softcore.pl ${SOFTWORDS}) > ${.TARGET}
d24 6
a30 2
testmain:	testmain.c ${SRCS}
	cc -o testmain -DTESTMAIN testmain.c ${SRCS}
@


1.3
log
@Fix includes; we were still pulling in <stdlib.h> in some places.
Support building a standalone interpreter with 'make testmain', remove
win32 and egregious gets() in testmain.c
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.2 1998/11/04 00:29:33 msmith Exp $
d20 1
a20 1
	(cd ${.CURDIR}/softwords; ./softcore.pl ${SOFTWORDS}) > ${.TARGET}
@


1.2
log
@Make this work in the libstand environment; don't use stdio/stdlib headers.
@
text
@d1 1
a1 1
# $Id: Makefile,v 1.1 1998/11/03 06:11:34 msmith Exp $
d9 1
a9 1
CLEANFILES=		softcore.c
d24 3
@


1.1
log
@Add the Ficl (Forth Inspired Command Language) interpreter.  If all goes well,
this will allow us to manage bloat in the loader by using a bytecoded HLL
rather than lots of C code.  It also offers an opportunity for vendors
or others with special applications to significantly customise the boot
process without having to commit to a divergent code branch.

This early commit is to allow others to experiment with the most effective
mechanisms for integrating FICL with the loader as it currently stands.

Ficl is distributed with the following license conditions:

"Ficl is freeware.  Use it in any way that you like, with the understanding
 that the code is not supported."

All source files contain authorship attributions.

Obtained from:	John Sadler (john_sadler@@alum.mit.edu)
@
text
@d1 1
a1 1
# $Id$
d7 2
a8 2

SRCS=			dict.c ficl.c math64.c softcore.c stack.c sysdep.c vm.c words.c
@
