head	1.51;
access;
symbols
	perseant-exfatfs-base-20250801:1.51
	perseant-exfatfs-base-20240630:1.51
	perseant-exfatfs:1.51.0.6
	perseant-exfatfs-base:1.51
	netbsd-8-3-RELEASE:1.40
	netbsd-9-4-RELEASE:1.50
	netbsd-9-3-RELEASE:1.50
	cjep_sun2x:1.51.0.4
	cjep_sun2x-base:1.51
	cjep_staticlib_x-base1:1.51
	netbsd-9-2-RELEASE:1.50
	cjep_staticlib_x:1.51.0.2
	cjep_staticlib_x-base:1.51
	netbsd-9-1-RELEASE:1.50
	phil-wifi-20200421:1.51
	phil-wifi-20200411:1.51
	phil-wifi-20200406:1.51
	netbsd-8-2-RELEASE:1.40
	netbsd-9-0-RELEASE:1.50
	netbsd-9-0-RC2:1.50
	netbsd-9-0-RC1:1.50
	netbsd-9:1.50.0.2
	netbsd-9-base:1.50
	phil-wifi-20190609:1.50
	netbsd-8-1-RELEASE:1.40
	netbsd-8-1-RC1:1.40
	pgoyette-compat-merge-20190127:1.41.2.2
	pgoyette-compat-20190127:1.45
	pgoyette-compat-20190118:1.45
	pgoyette-compat-1226:1.43
	pgoyette-compat-1126:1.43
	pgoyette-compat-1020:1.43
	pgoyette-compat-0930:1.43
	pgoyette-compat-0906:1.43
	netbsd-7-2-RELEASE:1.32.2.1
	pgoyette-compat-0728:1.43
	netbsd-8-0-RELEASE:1.40
	phil-wifi:1.42.0.2
	phil-wifi-base:1.42
	pgoyette-compat-0625:1.42
	netbsd-8-0-RC2:1.40
	pgoyette-compat-0521:1.42
	pgoyette-compat-0502:1.42
	pgoyette-compat-0422:1.41
	netbsd-8-0-RC1:1.40
	pgoyette-compat-0415:1.41
	pgoyette-compat-0407:1.41
	pgoyette-compat-0330:1.41
	pgoyette-compat-0322:1.41
	pgoyette-compat-0315:1.41
	netbsd-7-1-2-RELEASE:1.32.2.1
	pgoyette-compat:1.41.0.2
	pgoyette-compat-base:1.41
	netbsd-7-1-1-RELEASE:1.32.2.1
	matt-nb8-mediatek:1.40.0.10
	matt-nb8-mediatek-base:1.40
	perseant-stdc-iso10646:1.40.0.8
	perseant-stdc-iso10646-base:1.40
	netbsd-8:1.40.0.6
	netbsd-8-base:1.40
	prg-localcount2-base3:1.40
	prg-localcount2-base2:1.40
	prg-localcount2-base1:1.40
	prg-localcount2:1.40.0.4
	prg-localcount2-base:1.40
	pgoyette-localcount-20170426:1.40
	bouyer-socketcan-base1:1.40
	pgoyette-localcount-20170320:1.40
	netbsd-7-1:1.32.2.1.0.6
	netbsd-7-1-RELEASE:1.32.2.1
	netbsd-7-1-RC2:1.32.2.1
	netbsd-7-nhusb-base-20170116:1.32.2.1
	bouyer-socketcan:1.40.0.2
	bouyer-socketcan-base:1.40
	pgoyette-localcount-20170107:1.39
	netbsd-7-1-RC1:1.32.2.1
	pgoyette-localcount-20161104:1.39
	netbsd-7-0-2-RELEASE:1.32.2.1
	localcount-20160914:1.39
	netbsd-7-nhusb:1.32.2.1.0.4
	netbsd-7-nhusb-base:1.32.2.1
	pgoyette-localcount-20160806:1.39
	pgoyette-localcount-20160726:1.39
	pgoyette-localcount:1.39.0.2
	pgoyette-localcount-base:1.39
	netbsd-7-0-1-RELEASE:1.32.2.1
	netbsd-7-0:1.32.2.1.0.2
	netbsd-7-0-RELEASE:1.32.2.1
	netbsd-7-0-RC3:1.32.2.1
	netbsd-7-0-RC2:1.32.2.1
	netbsd-7-0-RC1:1.32.2.1
	netbsd-6-0-6-RELEASE:1.6
	netbsd-6-1-5-RELEASE:1.6
	netbsd-7:1.32.0.2
	netbsd-7-base:1.32
	yamt-pagecache-base9:1.30
	yamt-pagecache-tag8:1.4.2.3
	netbsd-6-1-4-RELEASE:1.6
	netbsd-6-0-5-RELEASE:1.6
	tls-earlyentropy:1.30.0.2
	tls-earlyentropy-base:1.31
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.30
	riastradh-drm2-base3:1.30
	netbsd-6-1-3-RELEASE:1.6
	netbsd-6-0-4-RELEASE:1.6
	netbsd-6-1-2-RELEASE:1.6
	netbsd-6-0-3-RELEASE:1.6
	netbsd-6-1-1-RELEASE:1.6
	riastradh-drm2-base2:1.20
	riastradh-drm2-base1:1.20
	riastradh-drm2:1.20.0.2
	riastradh-drm2-base:1.20
	netbsd-6-1:1.6.0.8
	netbsd-6-0-2-RELEASE:1.6
	netbsd-6-1-RELEASE:1.6
	khorben-n900:1.18.0.2
	netbsd-6-1-RC4:1.6
	netbsd-6-1-RC3:1.6
	agc-symver:1.17.0.4
	agc-symver-base:1.17
	netbsd-6-1-RC2:1.6
	netbsd-6-1-RC1:1.6
	yamt-pagecache-base8:1.15
	netbsd-6-0-1-RELEASE:1.6
	yamt-pagecache-base7:1.15
	matt-nb6-plus-nbase:1.6
	yamt-pagecache-base6:1.14
	netbsd-6-0:1.6.0.6
	netbsd-6-0-RELEASE:1.6
	netbsd-6-0-RC2:1.6
	tls-maxphys:1.12.0.2
	tls-maxphys-base:1.32
	matt-nb6-plus:1.6.0.4
	matt-nb6-plus-base:1.6
	netbsd-6-0-RC1:1.6
	yamt-pagecache-base5:1.8
	yamt-pagecache-base4:1.8
	netbsd-6:1.6.0.2
	netbsd-6-base:1.6
	yamt-pagecache-base3:1.4
	yamt-pagecache-base2:1.4
	yamt-pagecache:1.4.0.2
	yamt-pagecache-base:1.4
	cherry-xenmp:1.3.0.2
	cherry-xenmp-base:1.3
	bouyer-quota2:1.1.0.2
	bouyer-quota2-base:1.1
	bouyer-quota2-nbase:1.1;
locks; strict;
comment	@# @;


1.51
date	2019.11.13.22.03.36;	author joerg;	state dead;
branches;
next	1.50;
commitid	VVWg38Zx9vNeTJKB;

1.50
date	2019.06.07.05.22.28;	author mrg;	state Exp;
branches;
next	1.49;
commitid	2Lcy9U2pBNFssdqB;

1.49
date	2019.04.03.15.21.58;	author joerg;	state Exp;
branches;
next	1.48;
commitid	dAeEThbtMKeNRUhB;

1.48
date	2019.04.03.15.12.45;	author joerg;	state Exp;
branches;
next	1.47;
commitid	gE8oJ7ohJTsPOUhB;

1.47
date	2019.03.20.22.51.38;	author mrg;	state Exp;
branches;
next	1.46;
commitid	hp13TviEnPUmN9gB;

1.46
date	2019.03.03.17.46.01;	author maya;	state Exp;
branches;
next	1.45;
commitid	RFmRKLd3yf2dEWdB;

1.45
date	2019.01.01.18.46.04;	author maya;	state Exp;
branches;
next	1.44;
commitid	iFoRiUWwF9UfX66B;

1.44
date	2018.12.31.19.33.02;	author maya;	state Exp;
branches;
next	1.43;
commitid	H2NQalTYyhvffZ5B;

1.43
date	2018.07.17.18.55.27;	author joerg;	state Exp;
branches;
next	1.42;
commitid	ZigGmMKrele9pwKA;

1.42
date	2018.04.29.18.29.29;	author jmcneill;	state Exp;
branches
	1.42.2.1;
next	1.41;
commitid	nykOgKWq1kFNNmAA;

1.41
date	2017.08.01.20.07.40;	author joerg;	state Exp;
branches
	1.41.2.1;
next	1.40;
commitid	Eal5CLsDsgNz3y1A;

1.40
date	2017.01.11.12.02.28;	author joerg;	state Exp;
branches;
next	1.39;
commitid	J5yUvIHsYWlHRxBz;

1.39
date	2016.02.27.21.47.32;	author joerg;	state Exp;
branches
	1.39.2.1;
next	1.38;
commitid	CPKx2lHByYm8mBWy;

1.38
date	2015.11.07.00.12.57;	author joerg;	state Exp;
branches;
next	1.37;
commitid	yR6Zd4brEqtgN5Iy;

1.37
date	2015.05.29.17.40.41;	author joerg;	state Exp;
branches;
next	1.36;
commitid	yHujcCumL4rrNmny;

1.36
date	2015.01.29.20.41.34;	author joerg;	state Exp;
branches;
next	1.35;
commitid	ADAyDANcT8UzDX7y;

1.35
date	2014.11.14.15.59.46;	author joerg;	state Exp;
branches;
next	1.34;
commitid	Qfab42ZZrgEwxaYx;

1.34
date	2014.11.14.15.56.12;	author joerg;	state Exp;
branches;
next	1.33;
commitid	H1cKPcQrwr2jwaYx;

1.33
date	2014.09.06.01.02.21;	author joerg;	state Exp;
branches;
next	1.32;
commitid	COgrzoV9NZ2dNdPx;

1.32
date	2014.08.10.17.34.21;	author joerg;	state Exp;
branches
	1.32.2.1;
next	1.31;
commitid	LSY4UBCvKZWl9QLx;

1.31
date	2014.05.30.18.28.13;	author joerg;	state Exp;
branches;
next	1.30;
commitid	HUKCFjIKgK7YKACx;

1.30
date	2014.02.14.20.23.56;	author joerg;	state Exp;
branches
	1.30.2.1;
next	1.29;
commitid	vx0eoFPhbjkRL6px;

1.29
date	2014.01.15.22.21.34;	author joerg;	state Exp;
branches;
next	1.28;
commitid	HdzLIuZThDhTnglx;

1.28
date	2014.01.07.01.59.36;	author joerg;	state Exp;
branches;
next	1.27;
commitid	B8aFqwdL1ko6T7kx;

1.27
date	2014.01.05.16.38.06;	author joerg;	state Exp;
branches;
next	1.26;
commitid	HKy6us9gT88YMWjx;

1.26
date	2014.01.05.15.15.34;	author joerg;	state Exp;
branches;
next	1.25;
commitid	VqB1PTLcv4D0mWjx;

1.25
date	2013.11.11.23.51.36;	author joerg;	state Exp;
branches;
next	1.24;
commitid	2NnxHXVchSAKYUcx;

1.24
date	2013.10.30.20.27.39;	author joerg;	state Exp;
branches;
next	1.23;
commitid	WLR7ioUiaz4xembx;

1.23
date	2013.10.14.01.47.50;	author joerg;	state Exp;
branches;
next	1.22;
commitid	4Vr04GmTsCUhyc9x;

1.22
date	2013.10.14.01.37.39;	author joerg;	state Exp;
branches;
next	1.21;
commitid	oVGkImbuIWDUuc9x;

1.21
date	2013.09.21.22.28.12;	author joerg;	state Exp;
branches;
next	1.20;
commitid	2v1Jst3GvO0A9m6x;

1.20
date	2013.07.07.21.36.43;	author joerg;	state Exp;
branches;
next	1.19;
commitid	ZV9rCKFTZlFqjAWw;

1.19
date	2013.05.28.17.37.34;	author joerg;	state Exp;
branches;
next	1.18;
commitid	XKi6BfOZNFC9hqRw;

1.18
date	2013.04.25.13.59.56;	author joerg;	state Exp;
branches;
next	1.17;

1.17
date	2013.02.04.15.00.33;	author joerg;	state Exp;
branches;
next	1.16;

1.16
date	2013.01.23.15.02.57;	author joerg;	state Exp;
branches;
next	1.15;

1.15
date	2012.11.17.04.57.27;	author joerg;	state Exp;
branches;
next	1.14;

1.14
date	2012.10.28.17.07.45;	author joerg;	state Exp;
branches;
next	1.13;

1.13
date	2012.09.23.17.22.23;	author joerg;	state Exp;
branches;
next	1.12;

1.12
date	2012.08.09.14.37.06;	author joerg;	state Exp;
branches
	1.12.2.1;
next	1.11;

1.11
date	2012.06.17.07.40.26;	author joerg;	state Exp;
branches;
next	1.10;

1.10
date	2012.06.16.17.01.03;	author joerg;	state Exp;
branches;
next	1.9;

1.9
date	2012.05.29.19.31.52;	author joerg;	state Exp;
branches;
next	1.8;

1.8
date	2012.04.04.10.42.01;	author joerg;	state Exp;
branches;
next	1.7;

1.7
date	2012.02.28.17.09.30;	author joerg;	state Exp;
branches;
next	1.6;

1.6
date	2012.01.11.23.24.46;	author joerg;	state Exp;
branches;
next	1.5;

1.5
date	2011.12.11.14.58.50;	author joerg;	state Exp;
branches;
next	1.4;

1.4
date	2011.10.11.13.53.58;	author joerg;	state Exp;
branches
	1.4.2.1;
next	1.3;

1.3
date	2011.05.12.14.56.23;	author joerg;	state Exp;
branches;
next	1.2;

1.2
date	2011.04.15.19.31.07;	author joerg;	state Exp;
branches;
next	1.1;

1.1
date	2011.02.06.01.13.52;	author joerg;	state Exp;
branches
	1.1.2.1;
next	;

1.42.2.1
date	2019.06.10.21.50.49;	author christos;	state Exp;
branches;
next	1.42.2.2;
commitid	jtc8rnCzWiEEHGqB;

1.42.2.2
date	2020.04.13.07.55.21;	author martin;	state dead;
branches;
next	;
commitid	X01YhRUPVUDaec4C;

1.41.2.1
date	2018.05.02.07.20.00;	author pgoyette;	state Exp;
branches;
next	1.41.2.2;
commitid	o3kRuNRzl9360HAA;

1.41.2.2
date	2018.07.28.04.37.09;	author pgoyette;	state Exp;
branches;
next	;
commitid	1UP1xAIUxv1ZgRLA;

1.39.2.1
date	2017.03.20.06.55.58;	author pgoyette;	state Exp;
branches;
next	;
commitid	jjw7cAwgyKq7RfKz;

1.32.2.1
date	2015.06.04.20.05.43;	author snj;	state Exp;
branches;
next	;
commitid	yRnjq9fueSo6n9oy;

1.30.2.1
date	2014.08.10.07.09.08;	author tls;	state Exp;
branches;
next	;
commitid	t01A1TLTYxkpGMLx;

1.12.2.1
date	2012.11.20.02.58.01;	author tls;	state Exp;
branches;
next	1.12.2.2;

1.12.2.2
date	2013.02.25.00.26.35;	author tls;	state Exp;
branches;
next	1.12.2.3;

1.12.2.3
date	2013.06.23.06.28.22;	author tls;	state Exp;
branches;
next	1.12.2.4;
commitid	OnlO1cBgtQRcIHUw;

1.12.2.4
date	2014.08.19.23.51.23;	author tls;	state Exp;
branches;
next	;
commitid	jTnpym9Qu0o4R1Nx;

1.4.2.1
date	2012.04.17.00.03.30;	author yamt;	state Exp;
branches;
next	1.4.2.2;

1.4.2.2
date	2012.10.30.18.55.49;	author yamt;	state Exp;
branches;
next	1.4.2.3;

1.4.2.3
date	2013.01.16.05.27.58;	author yamt;	state Exp;
branches;
next	1.4.2.4;

1.4.2.4
date	2014.05.22.16.14.36;	author yamt;	state Exp;
branches;
next	;
commitid	XDyvjA6olAjshyBx;

1.1.2.1
date	2011.02.06.01.13.52;	author bouyer;	state dead;
branches;
next	1.1.2.2;

1.1.2.2
date	2011.03.06.15.07.44;	author bouyer;	state Exp;
branches;
next	;


desc
@@


1.51
log
@Remove old LLVM build system.
@
text
@#	$NetBSD: Makefile,v 1.50 2019/06/07 05:22:28 mrg Exp $

.include <bsd.init.mk>

.if ${MKLLVM} != "no"
.PATH:	${CLANG_SRCDIR}/lib/Headers

.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
INCS=	adxintrin.h \
	ammintrin.h \
	avx2intrin.h \
	avx512bitalgintrin.h \
	avx512bwintrin.h \
	avx512cdintrin.h \
	avx512dqintrin.h \
	avx512erintrin.h \
	avx512fintrin.h \
	avx512ifmaintrin.h \
	avx512ifmavlintrin.h \
	avx512pfintrin.h \
	avx512vbmi2intrin.h \
	avx512vbmiintrin.h \
	avx512vbmivlintrin.h \
	avx512vlbitalgintrin.h \
	avx512vlbwintrin.h \
	avx512vlcdintrin.h \
	avx512vldqintrin.h \
	avx512vlintrin.h \
	avx512vlvbmi2intrin.h \
	avx512vlvnniintrin.h \
	avx512vnniintrin.h \
	avx512vpopcntdqintrin.h \
	avx512vpopcntdqvlintrin.h \
	avxintrin.h \
	bmi2intrin.h \
	bmiintrin.h \
	cetintrin.h \
	cldemoteintrin.h \
	clflushoptintrin.h \
	clwbintrin.h \
	clzerointrin.h \
	cpuid.h \
	emmintrin.h \
	f16cintrin.h \
	fma4intrin.h \
	fmaintrin.h \
	fxsrintrin.h \
	gfniintrin.h \
	ia32intrin.h \
	immintrin.h \
	invpcidintrin.h \
	lwpintrin.h \
	lzcntintrin.h \
	mm3dnow.h \
	mmintrin.h \
	mm_malloc.h \
	movdirintrin.h \
	mwaitxintrin.h \
	nmmintrin.h \
	pconfigintrin.h \
	pkuintrin.h \
	pmmintrin.h \
	popcntintrin.h \
	prfchwintrin.h \
	ptwriteintrin.h \
	rdseedintrin.h \
	rtmintrin.h \
	sgxintrin.h \
	shaintrin.h \
	smmintrin.h \
	tbmintrin.h \
	tmmintrin.h \
	vaesintrin.h \
	vpclmulqdqintrin.h \
	waitpkgintrin.h \
	wbnoinvdintrin.h \
	wmmintrin.h \
	__wmmintrin_aes.h \
	__wmmintrin_pclmul.h \
	x86intrin.h \
	xmmintrin.h \
	xopintrin.h \
	xsavecintrin.h \
	xsaveintrin.h \
	xsaveoptintrin.h \
	xsavesintrin.h \
	xtestintrin.h

.elif ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64"
INCS=	altivec.h \
	htmintrin.h \
	htmxlintrin.h
.elif ${MACHINE_CPU} == "arm" || ${MACHINE_CPU} == "aarch64"
INCS=	arm_acle.h \
	arm_neon.h
.  if ${MACHINE_CPU} == "aarch64"
INCS+=	arm64intr.h
.  endif
.elif ${MACHINE_CPU} == "mips" || ${MACHINE_CPU} == "mips64"
INCS=	msa.h
.endif
INCS+=	stdatomic.h
INCSDIR=	/usr/include/clang-${CLANG_VERSION:R}
.endif # MKLLVM

.PATH:	${LLVM_SRCDIR}/include/llvm/IR \

TABLEGEN_SRC=	Attributes.td Intrinsics.td Options.td

TABLEGEN_OUTPUT.Attributes.td= \
	llvm/IR/Attributes.inc|-gen-attrs

TABLEGEN_OUTPUT.Intrinsics.td= \
	llvm/IR/IntrinsicEnums.inc|-gen-intrinsic-enums \
	llvm/IR/IntrinsicImpl.inc|-gen-intrinsic-impl

.if ${MKLLVM} != "no"
.PATH:	${CLANG_SRCDIR}/include/clang/AST \
	${CLANG_SRCDIR}/include/clang/Basic \
	${CLANG_SRCDIR}/include/clang/Driver \
	${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
CLANG_TABLEGEN_SRC=	\
	arm_fp16.td \
	arm_neon.td \
	Attr.td \
	Checkers.td \
	CommentCommands.td \
	CommentHTMLNamedCharacterReferences.td \
	CommentHTMLTags.td \
	CommentNodes.td \
	DeclNodes.td \
	Diagnostic.td \
	StmtDataCollectors.td \
	StmtNodes.td

CLANG_TABLEGEN_INCLUDES.Attr.td=	-I${CLANG_SRCDIR}/include
CLANG_TABLEGEN_OUTPUT.Attr.td= \
	clang/AST/Attrs.inc|-gen-clang-attr-classes \
	clang/AST/AttrDump.inc|-gen-clang-attr-dump \
	clang/AST/AttrImpl.inc|-gen-clang-attr-impl \
	clang/AST/AttrVisitor.inc|-gen-clang-attr-ast-visitor \
	clang/Basic/AttrList.inc|-gen-clang-attr-list \
	clang/Basic/AttrHasAttributeImpl.inc|-gen-clang-attr-has-attribute-impl \
	clang/Basic/AttrSubMatchRulesList.inc|-gen-clang-attr-subject-match-rule-list \
	clang/Parse/AttrParserStringSwitches.inc|-gen-clang-attr-parser-string-switches \
	clang/Parse/AttrSubMatchRulesParserStringSwitches.inc|-gen-clang-attr-subject-match-rules-parser-string-switches \
	clang/Sema/AttrParsedAttrImpl.inc|-gen-clang-attr-parsed-attr-impl \
	clang/Sema/AttrParsedAttrKinds.inc|-gen-clang-attr-parsed-attr-kinds \
	clang/Sema/AttrParsedAttrList.inc|-gen-clang-attr-parsed-attr-list \
	clang/Sema/AttrSpellingListIndex.inc|-gen-clang-attr-spelling-index \
	clang/Sema/AttrTemplateInstantiate.inc|-gen-clang-attr-template-instantiate \
	clang/Serialization/AttrPCHRead.inc|-gen-clang-attr-pch-read \
	clang/Serialization/AttrPCHWrite.inc|-gen-clang-attr-pch-write

CLANG_TABLEGEN_OUTPUT.StmtNodes.td= \
	clang/AST/StmtNodes.inc|-gen-clang-stmt-nodes

CLANG_TABLEGEN_OUTPUT.StmtDataCollectors.td= \
	clang/AST/StmtDataCollectors.inc|-gen-clang-data-collectors

CLANG_TABLEGEN_OUTPUT.DeclNodes.td= \
	clang/AST/DeclNodes.inc|-gen-clang-decl-nodes

CLANG_TABLEGEN_OUTPUT.CommentNodes.td= \
	clang/AST/CommentNodes.inc|-gen-clang-comment-nodes

CLANG_TABLEGEN_OUTPUT.CommentCommands.td= \
	clang/AST/CommentCommandInfo.inc|-gen-clang-comment-command-info \
	clang/AST/CommentCommandList.inc|-gen-clang-comment-command-list

CLANG_TABLEGEN_OUTPUT.CommentHTMLTags.td= \
	clang/AST/CommentHTMLTags.inc|-gen-clang-comment-html-tags \
	clang/AST/CommentHTMLTagsProperties.inc|-gen-clang-comment-html-tags-properties

CLANG_TABLEGEN_OUTPUT.CommentHTMLNamedCharacterReferences.td= \
	clang/AST/CommentHTMLNamedCharacterReferences.inc|-gen-clang-comment-html-named-character-references

CLANG_TABLEGEN_INCLUDES.Diagnostic.td=	-I${CLANG_SRCDIR}/include/clang/Basic
CLANG_TABLEGEN_OUTPUT.Diagnostic.td= \
	clang/Basic/DiagnosticAnalysisKinds.inc|-gen-clang-diags-defs^-clang-component=Analysis \
	clang/Basic/DiagnosticASTKinds.inc|-gen-clang-diags-defs^-clang-component=AST \
	clang/Basic/DiagnosticCommentKinds.inc|-gen-clang-diags-defs^-clang-component=Comment \
	clang/Basic/DiagnosticCommonKinds.inc|-gen-clang-diags-defs^-clang-component=Common \
	clang/Basic/DiagnosticCrossTUKinds.inc|-gen-clang-diags-defs^-clang-component=CrossTU \
	clang/Basic/DiagnosticDriverKinds.inc|-gen-clang-diags-defs^-clang-component=Driver \
	clang/Basic/DiagnosticFrontendKinds.inc|-gen-clang-diags-defs^-clang-component=Frontend \
	clang/Basic/DiagnosticGroups.inc|-gen-clang-diag-groups \
	clang/Basic/DiagnosticIndexName.inc|-gen-clang-diags-index-name \
	clang/Basic/DiagnosticLexKinds.inc|-gen-clang-diags-defs^-clang-component=Lex \
	clang/Basic/DiagnosticParseKinds.inc|-gen-clang-diags-defs^-clang-component=Parse \
	clang/Basic/DiagnosticRefactoringKinds.inc|-gen-clang-diags-defs^-clang-component=Refactoring \
	clang/Basic/DiagnosticSemaKinds.inc|-gen-clang-diags-defs^-clang-component=Sema \
	clang/Basic/DiagnosticSerializationKinds.inc|-gen-clang-diags-defs^-clang-component=Serialization


CLANG_TABLEGEN_INCLUDES.arm_neon.td=	-I${CLANG_SRCDIR}/include/clang/Basic
CLANG_TABLEGEN_OUTPUT.arm_neon.td= \
	clang/Basic/arm_neon.inc|-gen-arm-neon-sema \
	arm_neon.h|-gen-arm-neon

CLANG_TABLEGEN_INCLUDES.arm_fp16.td=	-I${CLANG_SRCDIR}/include/clang/Basic
CLANG_TABLEGEN_OUTPUT.arm_fp16.td= \
	clang/Basic/arm_fp16.inc|-gen-arm-neon-sema

CLANG_TABLEGEN_INCLUDES.Checkers.td=	\
	-I${CLANG_SRCDIR}/include \
	-I${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
CLANG_TABLEGEN_OUTPUT.Checkers.td= \
	clang/StaticAnalyzer/Checkers/Checkers.inc|-gen-clang-sa-checkers

TABLEGEN_INCLUDES.Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.Options.td= \
	clang/Driver/Options.inc|-gen-opt-parser-defs
.endif # MKLLVM

.include "${.PARSEDIR}/../tablegen.mk"

DPSRCS+=	llvm/Support/VCSRevision.h
DPSRC+=		llvm/Support/VCSRevision.h

llvm/Support/VCSRevision.h: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_REVISION "svn-r${LLVM_REVISION}"\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

.if ${MKLLVM} != "no"
DPSRCS+=	clang/Basic/Version.inc
CLEANFILES+=	clang/Basic/Version.inc

clang/Basic/Version.inc: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define CLANG_VERSION ${CLANG_VERSION}\n' > ${.TARGET}.tmp
	printf '#define CLANG_VERSION_STRING "${CLANG_VERSION}"\n' >> ${.TARGET}.tmp
	printf '#define CLANG_VERSION_MAJOR ${CLANG_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define CLANG_VERSION_MINOR ${CLANG_VERSION:R:E}\n' >> ${.TARGET}.tmp
	printf '#define CLANG_VERSION_PATCHLEVEL ${CLANG_VERSION:R:R}\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}
.endif # MKLLVM

.if ${MKLLD} != "no"
DPSRCS+=	lld/Config/Version.inc
CLEANFILES+=	lld/Config/Version.inc

lld/Config/Version.inc: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define LLD_VERSION ${LLD_VERSION}\n' > ${.TARGET}.tmp
	printf '#define LLD_VERSION_MAJOR ${LLD_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define LLD_VERSION_MINOR ${LLD_VERSION:R:E}\n' >> ${.TARGET}.tmp
	printf '#define LLD_REVISION_STRING "r${LLD_REVISION}"\n' >> ${.TARGET}.tmp
	printf '#define LLD_REPOSITORY_STRING "${SVN_ROOT}/lld/${SVN_BRANCH}"\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}
.endif

.ifndef HOST_BUILD

DPSRCS+=	llvm/Config/config.h llvm/Config/llvm-config.h
CLEANFILES+=	llvm/Config/config.h llvm/Config/llvm-config.h

NATIVE_LIBS=	-lm -lexecinfo

.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
NATIVE_LLVM_ARCH=		X86
.endif

.if ${MACHINE_ARCH} == "aarch64" || ${MACHINE_ARCH} == "aarch64eb"
NATIVE_LLVM_ARCH=		AArch64
.endif

.if !empty(MACHINE_ARCH:Mearm*) || !empty(MACHINE_ARCH:Marm*)
NATIVE_LLVM_ARCH=		ARM
.endif

.if !empty(MACHINE_ARCH:Mmips*)
NATIVE_LLVM_ARCH=		Mips
.endif

.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64"
NATIVE_LLVM_ARCH=		PowerPC
.endif

.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64"
NATIVE_LLVM_ARCH=		Sparc
.endif

.if defined(NATIVE_LLVM_ARCH)
NATIVE_LLVM_ASMPARSER=		LLVMInitialize${NATIVE_LLVM_ARCH}AsmParser
NATIVE_LLVM_ASMPRINTER=		LLVMInitialize${NATIVE_LLVM_ARCH}AsmPrinter
NATIVE_LLVM_DISASSEMBLER=	LLVMInitialize${NATIVE_LLVM_ARCH}Disassembler
NATIVE_LLVM_TARGET=		LLVMInitialize${NATIVE_LLVM_ARCH}Target
NATIVE_LLVM_TARGETINFO=		LLVMInitialize${NATIVE_LLVM_ARCH}TargetInfo
NATIVE_LLVM_TARGETMC=		LLVMInitialize${NATIVE_LLVM_ARCH}TargetMC
.endif

llvm/Config/config.h: ${LLVM_TOPLEVEL}/Makefile.inc ${LLVM_TOPLEVEL}/config/llvm/Config/config.h.in
	mkdir -p ${.TARGET:H}
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d \
		    -e /LLVM_HOST_TRIPLE/d \
		    -e /LLVM_NATIVE_/d \
		    -e /LLVM_VERSION_/d \
		    -e /PACKAGE_VERSION/d -e 'x' \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/config.h.in \
	    > ${.TARGET}.tmp
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_HOST_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
.if defined(NATIVE_LLVM_ARCH)
	printf '#define LLVM_NATIVE_ARCH ${NATIVE_LLVM_ARCH}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPARSER ${NATIVE_LLVM_ASMPARSER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPRINTER ${NATIVE_LLVM_ASMPRINTER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_DISASSEMBLER ${NATIVE_LLVM_DISASSEMBLER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGET ${NATIVE_LLVM_TARGET}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETINFO ${NATIVE_LLVM_TARGETINFO}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETMC ${NATIVE_LLVM_TARGETMC}\n' >> ${.TARGET}.tmp
.endif
	printf '#define PACKAGE_VERSION "${LLVM_VERSION} (trunk ${LLVM_REVISION})"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:R:E}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_PATCH ${LLVM_VERSION:E}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_STRING "${LLVM_VERSION}"\n' >> ${.TARGET}.tmp
	printf '#endif\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

llvm/Config/llvm-config.h: ${LLVM_TOPLEVEL}/Makefile.inc ${LLVM_TOPLEVEL}/config/llvm/Config/llvm-config.h.in
	mkdir -p ${.TARGET:H}
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d \
		    -e /LLVM_HOST_TRIPLE/d \
		    -e /LLVM_NATIVE_/d \
		    -e /LLVM_VERSION_/d \
		    -e /PACKAGE_VERSION/d -e 'x' \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/llvm-config.h.in \
	    > ${.TARGET}.tmp
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_HOST_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
.if defined(NATIVE_LLVM_ARCH)
	printf '#define LLVM_NATIVE_ARCH ${NATIVE_LLVM_ARCH}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPARSER ${NATIVE_LLVM_ASMPARSER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPRINTER ${NATIVE_LLVM_ASMPRINTER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_DISASSEMBLER ${NATIVE_LLVM_DISASSEMBLER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGET ${NATIVE_LLVM_TARGET}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETINFO ${NATIVE_LLVM_TARGETINFO}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETMC ${NATIVE_LLVM_TARGETMC}\n' >> ${.TARGET}.tmp
.endif
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:R:E}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_PATCH ${LLVM_VERSION:E}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_STRING "${LLVM_VERSION}"\n' >> ${.TARGET}.tmp
	printf '#endif\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

run-configure:
	[ ! -d tmp ] || rm -r tmp
	mkdir -p tmp
	cd tmp && CONFIG_SITE= ${CONFIG_DIR}/configure ${LLVM_CONFIGURE_ARGS} \
	    CC=${CC:Q} CFLAGS=${CFLAGS:N-Werror:Q} CXX=${CXX:Q} CXXFLAGS=${CXXFLAGS:N-Werror:Q} \
	    CPPFLAGS=${CPPFLAGS:N-std=c++11:Q} LDFLAGS=${LDFLAGS:Q} LD=${LD:Q} LIBS=${NATIVE_LIBS:Q} \
	    BUILD_CC=${CC:Q} BUILD_CXX=${CXX:Q}
	cp -r tmp/include/llvm/* ${LLVM_INCLUDE_CONFIG}/llvm/
	mv ${LLVM_INCLUDE_CONFIG}/llvm/Config/llvm-config.h \
	   ${LLVM_INCLUDE_CONFIG}/llvm/Config/llvm-config.h.in
	cp -r tmp/include/clang/* ${CLANG_INCLUDE_CONFIG}/clang/
	rm -r tmp
	mv ${LLVM_INCLUDE_CONFIG}/llvm/Config/config.h \
	    ${LLVM_INCLUDE_CONFIG}/llvm/Config/config.h.in
.endif

includes depend dependall all: ${DPSRCS}

.include <bsd.prog.mk>
@


1.50
log
@also fix up LLVM_HOST_TRIPLE.

previously, this was attempting to emit x86 code on arm.

thanks joerg@@ for pointing me in the right place.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.49 2019/04/03 15:21:58 joerg Exp $
@


1.49
log
@Add MKLLVMRT to build a subset of the LLVM stack for JIT purposes.
Hook up AMDGPU backend for clang.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.48 2019/04/03 15:12:45 joerg Exp $
d297 5
a301 2
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d -e /LLVM_NATIVE_/d \
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d -e 'x' \
d305 1
d325 5
a329 2
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d -e /LLVM_NATIVE_/d \
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d -e 'x' \
d333 1
@


1.48
log
@Revert MKLLVMCMDS changes.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.46 2019/03/03 17:46:01 maya Exp $
d5 1
a7 1

d104 1
a106 4
	${CLANG_SRCDIR}/include/clang/AST \
	${CLANG_SRCDIR}/include/clang/Basic \
	${CLANG_SRCDIR}/include/clang/Driver \
	${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
d117 5
d214 1
d218 12
a229 2
DPSRCS+=	clang/Basic/Version.inc llvm/Support/VCSRevision.h
CLEANFILES+=	clang/Basic/Version.inc llvm/Support/VCSRevision.h
d239 1
a239 6

llvm/Support/VCSRevision.h: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_REVISION "svn-r${LLVM_REVISION}"\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}
d262 33
d302 9
d326 9
@


1.47
log
@split MKLLVM into MKLLVM and MKLLVMCMDS, like MKGCC and MKGCCCMDS:

- only build clang or clang-tblgen if MKLLVMCMDS != "no"
- move HAVE_MESA_VER earlier so we can detect mesa 18 and enable
  MKLLVM on platforms that need it
- move the clang commands and headers into llvmcmds group
- only build the clang specific LLVM libraries if MKLLVMCMDS != "no"

much of this work came from maya@@'s github commit
f90685c11d4460d3098fa35f48b58d1893e974e0, reworked for HAVE_MESA_VER
and llvmcmds vs MKCLANG.


build tested on several platforms and on amd64 and i386 with several
different build options (clang build, gcc build, gcc build with llvm
libs).
@
text
@d7 1
a7 1
.if ${MKLLVMCMDS} != "no"
d104 3
a106 1
.PATH:	${CLANG_SRCDIR}/include/clang/AST \
d111 9
a208 2
TABLEGEN_SRC+=	Options.td

a212 12
.endif

.PATH:	${LLVM_SRCDIR}/include/llvm/IR
TABLEGEN_SRC+=	Attributes.td Intrinsics.td #Options.td

TABLEGEN_OUTPUT.Attributes.td= \
	llvm/IR/Attributes.inc|-gen-attrs

TABLEGEN_OUTPUT.Intrinsics.td= \
	llvm/IR/IntrinsicEnums.inc|-gen-intrinsic-enums \
	llvm/IR/IntrinsicImpl.inc|-gen-intrinsic-impl

@


1.46
log
@Make the includes target run the custom include targets.

This avoids the need for a .WAIT here, and later makes it possible
for non-llvm things to not worry about llvm includes not being created
yet (as includes runs before a lot of other things)

suggested by mrg, build-tested by agc, thanks!
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.45 2019/01/01 18:46:04 maya Exp $
d7 1
a7 1

d104 1
a104 3

.PATH:	${LLVM_SRCDIR}/include/llvm/IR \
	${CLANG_SRCDIR}/include/clang/AST \
a108 9
TABLEGEN_SRC=	Attributes.td Intrinsics.td Options.td

TABLEGEN_OUTPUT.Attributes.td= \
	llvm/IR/Attributes.inc|-gen-attrs

TABLEGEN_OUTPUT.Intrinsics.td= \
	llvm/IR/IntrinsicEnums.inc|-gen-intrinsic-enums \
	llvm/IR/IntrinsicImpl.inc|-gen-intrinsic-impl

d198 2
d204 12
@


1.45
log
@Revert installing llvm headers.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.43 2018/07/17 18:55:27 joerg Exp $
d299 1
a299 1
depend dependall all: ${DPSRCS}
@


1.44
log
@Install most of the llvm headers.

This is missing some generated files, llvm/include/IR/*.inc
@
text
@a248 2
SUBDIR+=	llvm llvm-c

a300 1
.include <bsd.subdir.mk>
@


1.43
log
@Update LLVM/Clang build system to r337282.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.42 2018/04/29 18:29:29 jmcneill Exp $
d249 2
d303 1
@


1.42
log
@Install ARM ACLE and NEON intrinsics headers on aarch64.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.41 2017/08/01 20:07:40 joerg Exp $
d7 1
d9 1
a9 3
INCS=	__wmmintrin_aes.h \
	__wmmintrin_pclmul.h \
	adxintrin.h \
d12 1
d16 1
a17 1
	avx512erintrin.h \
d21 1
d24 1
d29 3
d33 1
d37 2
d40 1
d45 1
a46 1
	fma4intrin.h \
d48 1
d51 1
d57 1
d60 1
d65 1
d68 1
d73 4
d78 2
d83 1
a83 1
	xsavesintrin.h \
d86 1
a86 1
	xsavecintrin.h \
d96 3
d114 1
a114 1
	llvm/IR/Attributes.gen|-gen-attrs
d117 2
a118 1
	llvm/IR/Intrinsics.gen|-gen-intrinsic
d120 13
a132 3
CLANG_TABLEGEN_SRC=	Attr.td CommentCommands.td CommentHTMLTags.td \
	CommentNodes.td CommentHTMLNamedCharacterReferences.td DeclNodes.td \
	StmtNodes.td Diagnostic.td arm_neon.td Checkers.td
d156 3
d182 1
d185 2
d189 1
d191 2
a192 3
	clang/Basic/DiagnosticSerializationKinds.inc|-gen-clang-diags-defs^-clang-component=Serialization \
	clang/Basic/DiagnosticGroups.inc|-gen-clang-diag-groups \
	clang/Basic/DiagnosticIndexName.inc|-gen-clang-diags-index-name
d194 1
d199 7
a205 1
CLANG_TABLEGEN_INCLUDES.Checkers.td=	-I${CLANG_SRCDIR}/include
@


1.42.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.50 2019/06/07 05:22:28 mrg Exp $
a4 1
.if ${MKLLVM} != "no"
d8 3
a10 1
INCS=	adxintrin.h \
a12 1
	avx512bitalgintrin.h \
d16 1
a17 1
	avx512fintrin.h \
a20 1
	avx512vbmi2intrin.h \
a22 1
	avx512vlbitalgintrin.h \
a26 3
	avx512vlvbmi2intrin.h \
	avx512vlvnniintrin.h \
	avx512vnniintrin.h \
a27 1
	avx512vpopcntdqvlintrin.h \
a30 2
	cetintrin.h \
	cldemoteintrin.h \
a31 1
	clwbintrin.h \
d36 1
a37 1
	fmaintrin.h \
a38 1
	gfniintrin.h \
a40 1
	invpcidintrin.h \
a45 1
	movdirintrin.h \
a47 1
	pconfigintrin.h \
a51 1
	ptwriteintrin.h \
a53 1
	sgxintrin.h \
a57 4
	vaesintrin.h \
	vpclmulqdqintrin.h \
	waitpkgintrin.h \
	wbnoinvdintrin.h \
a58 2
	__wmmintrin_aes.h \
	__wmmintrin_pclmul.h \
d62 1
a62 1
	xsavecintrin.h \
d65 1
a65 1
	xsavesintrin.h \
a74 3
.  if ${MACHINE_CPU} == "aarch64"
INCS+=	arm64intr.h
.  endif
a79 1
.endif # MKLLVM
d82 4
d90 1
a90 1
	llvm/IR/Attributes.inc|-gen-attrs
d93 1
a93 2
	llvm/IR/IntrinsicEnums.inc|-gen-intrinsic-enums \
	llvm/IR/IntrinsicImpl.inc|-gen-intrinsic-impl
d95 3
a97 18
.if ${MKLLVM} != "no"
.PATH:	${CLANG_SRCDIR}/include/clang/AST \
	${CLANG_SRCDIR}/include/clang/Basic \
	${CLANG_SRCDIR}/include/clang/Driver \
	${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
CLANG_TABLEGEN_SRC=	\
	arm_fp16.td \
	arm_neon.td \
	Attr.td \
	Checkers.td \
	CommentCommands.td \
	CommentHTMLNamedCharacterReferences.td \
	CommentHTMLTags.td \
	CommentNodes.td \
	DeclNodes.td \
	Diagnostic.td \
	StmtDataCollectors.td \
	StmtNodes.td
a120 3
CLANG_TABLEGEN_OUTPUT.StmtDataCollectors.td= \
	clang/AST/StmtDataCollectors.inc|-gen-clang-data-collectors

a143 1
	clang/Basic/DiagnosticCrossTUKinds.inc|-gen-clang-diags-defs^-clang-component=CrossTU \
a145 2
	clang/Basic/DiagnosticGroups.inc|-gen-clang-diag-groups \
	clang/Basic/DiagnosticIndexName.inc|-gen-clang-diags-index-name \
a147 1
	clang/Basic/DiagnosticRefactoringKinds.inc|-gen-clang-diags-defs^-clang-component=Refactoring \
d149 3
a151 1
	clang/Basic/DiagnosticSerializationKinds.inc|-gen-clang-diags-defs^-clang-component=Serialization
a152 2

CLANG_TABLEGEN_INCLUDES.arm_neon.td=	-I${CLANG_SRCDIR}/include/clang/Basic
d157 1
a157 7
CLANG_TABLEGEN_INCLUDES.arm_fp16.td=	-I${CLANG_SRCDIR}/include/clang/Basic
CLANG_TABLEGEN_OUTPUT.arm_fp16.td= \
	clang/Basic/arm_fp16.inc|-gen-arm-neon-sema

CLANG_TABLEGEN_INCLUDES.Checkers.td=	\
	-I${CLANG_SRCDIR}/include \
	-I${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
a163 1
.endif # MKLLVM
d167 2
a168 12
DPSRCS+=	llvm/Support/VCSRevision.h
DPSRC+=		llvm/Support/VCSRevision.h

llvm/Support/VCSRevision.h: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_REVISION "svn-r${LLVM_REVISION}"\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

.if ${MKLLVM} != "no"
DPSRCS+=	clang/Basic/Version.inc
CLEANFILES+=	clang/Basic/Version.inc
d178 6
a183 1
.endif # MKLLVM
a205 33
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64"
NATIVE_LLVM_ARCH=		X86
.endif

.if ${MACHINE_ARCH} == "aarch64" || ${MACHINE_ARCH} == "aarch64eb"
NATIVE_LLVM_ARCH=		AArch64
.endif

.if !empty(MACHINE_ARCH:Mearm*) || !empty(MACHINE_ARCH:Marm*)
NATIVE_LLVM_ARCH=		ARM
.endif

.if !empty(MACHINE_ARCH:Mmips*)
NATIVE_LLVM_ARCH=		Mips
.endif

.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64"
NATIVE_LLVM_ARCH=		PowerPC
.endif

.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64"
NATIVE_LLVM_ARCH=		Sparc
.endif

.if defined(NATIVE_LLVM_ARCH)
NATIVE_LLVM_ASMPARSER=		LLVMInitialize${NATIVE_LLVM_ARCH}AsmParser
NATIVE_LLVM_ASMPRINTER=		LLVMInitialize${NATIVE_LLVM_ARCH}AsmPrinter
NATIVE_LLVM_DISASSEMBLER=	LLVMInitialize${NATIVE_LLVM_ARCH}Disassembler
NATIVE_LLVM_TARGET=		LLVMInitialize${NATIVE_LLVM_ARCH}Target
NATIVE_LLVM_TARGETINFO=		LLVMInitialize${NATIVE_LLVM_ARCH}TargetInfo
NATIVE_LLVM_TARGETMC=		LLVMInitialize${NATIVE_LLVM_ARCH}TargetMC
.endif

d208 2
a209 5
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d \
		    -e /LLVM_HOST_TRIPLE/d \
		    -e /LLVM_NATIVE_/d \
		    -e /LLVM_VERSION_/d \
		    -e /PACKAGE_VERSION/d -e 'x' \
a212 10
	printf '#define LLVM_HOST_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
.if defined(NATIVE_LLVM_ARCH)
	printf '#define LLVM_NATIVE_ARCH ${NATIVE_LLVM_ARCH}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPARSER ${NATIVE_LLVM_ASMPARSER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPRINTER ${NATIVE_LLVM_ASMPRINTER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_DISASSEMBLER ${NATIVE_LLVM_DISASSEMBLER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGET ${NATIVE_LLVM_TARGET}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETINFO ${NATIVE_LLVM_TARGETINFO}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETMC ${NATIVE_LLVM_TARGETMC}\n' >> ${.TARGET}.tmp
.endif
d223 2
a224 5
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d \
		    -e /LLVM_HOST_TRIPLE/d \
		    -e /LLVM_NATIVE_/d \
		    -e /LLVM_VERSION_/d \
		    -e /PACKAGE_VERSION/d -e 'x' \
a227 10
	printf '#define LLVM_HOST_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
.if defined(NATIVE_LLVM_ARCH)
	printf '#define LLVM_NATIVE_ARCH ${NATIVE_LLVM_ARCH}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPARSER ${NATIVE_LLVM_ASMPARSER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_ASMPRINTER ${NATIVE_LLVM_ASMPRINTER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_DISASSEMBLER ${NATIVE_LLVM_DISASSEMBLER}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGET ${NATIVE_LLVM_TARGET}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETINFO ${NATIVE_LLVM_TARGETINFO}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_NATIVE_TARGETMC ${NATIVE_LLVM_TARGETMC}\n' >> ${.TARGET}.tmp
.endif
d251 1
a251 1
includes depend dependall all: ${DPSRCS}
@


1.42.2.2
log
@Mostly merge changes from HEAD upto 20200411
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.42.2.1 2019/06/10 21:50:49 christos Exp $
@


1.41
log
@Update LLVM build glue for 5.0RC1.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.40 2017/01/11 12:02:28 joerg Exp $
d72 1
a72 1
.elif ${MACHINE_CPU} == "arm"
@


1.41.2.1
log
@Synch with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.42 2018/04/29 18:29:29 jmcneill Exp $
d72 1
a72 1
.elif ${MACHINE_CPU} == "arm" || ${MACHINE_CPU} == "aarch64"
@


1.41.2.2
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.43 2018/07/17 18:55:27 joerg Exp $
a6 1

d8 3
a10 1
INCS=	adxintrin.h \
a12 1
	avx512bitalgintrin.h \
d16 1
a17 1
	avx512fintrin.h \
a20 1
	avx512vbmi2intrin.h \
a22 1
	avx512vlbitalgintrin.h \
a26 3
	avx512vlvbmi2intrin.h \
	avx512vlvnniintrin.h \
	avx512vnniintrin.h \
a27 1
	avx512vpopcntdqvlintrin.h \
a30 2
	cetintrin.h \
	cldemoteintrin.h \
a31 1
	clwbintrin.h \
d36 1
a37 1
	fmaintrin.h \
a38 1
	gfniintrin.h \
a40 1
	invpcidintrin.h \
a45 1
	movdirintrin.h \
a47 1
	pconfigintrin.h \
a51 1
	ptwriteintrin.h \
a53 1
	sgxintrin.h \
a57 4
	vaesintrin.h \
	vpclmulqdqintrin.h \
	waitpkgintrin.h \
	wbnoinvdintrin.h \
a58 2
	__wmmintrin_aes.h \
	__wmmintrin_pclmul.h \
d62 1
a62 1
	xsavecintrin.h \
d65 1
a65 1
	xsavesintrin.h \
a74 3
.  if ${MACHINE_CPU} == "aarch64"
INCS+=	arm64intr.h
.  endif
d90 1
a90 1
	llvm/IR/Attributes.inc|-gen-attrs
d93 1
a93 2
	llvm/IR/IntrinsicEnums.inc|-gen-intrinsic-enums \
	llvm/IR/IntrinsicImpl.inc|-gen-intrinsic-impl
d95 3
a97 13
CLANG_TABLEGEN_SRC=	\
	arm_fp16.td \
	arm_neon.td \
	Attr.td \
	Checkers.td \
	CommentCommands.td \
	CommentHTMLNamedCharacterReferences.td \
	CommentHTMLTags.td \
	CommentNodes.td \
	DeclNodes.td \
	Diagnostic.td \
	StmtDataCollectors.td \
	StmtNodes.td
a120 3
CLANG_TABLEGEN_OUTPUT.StmtDataCollectors.td= \
	clang/AST/StmtDataCollectors.inc|-gen-clang-data-collectors

a143 1
	clang/Basic/DiagnosticCrossTUKinds.inc|-gen-clang-diags-defs^-clang-component=CrossTU \
a145 2
	clang/Basic/DiagnosticGroups.inc|-gen-clang-diag-groups \
	clang/Basic/DiagnosticIndexName.inc|-gen-clang-diags-index-name \
a147 1
	clang/Basic/DiagnosticRefactoringKinds.inc|-gen-clang-diags-defs^-clang-component=Refactoring \
d149 3
a151 2
	clang/Basic/DiagnosticSerializationKinds.inc|-gen-clang-diags-defs^-clang-component=Serialization

a152 1
CLANG_TABLEGEN_INCLUDES.arm_neon.td=	-I${CLANG_SRCDIR}/include/clang/Basic
d157 1
a157 7
CLANG_TABLEGEN_INCLUDES.arm_fp16.td=	-I${CLANG_SRCDIR}/include/clang/Basic
CLANG_TABLEGEN_OUTPUT.arm_fp16.td= \
	clang/Basic/arm_fp16.inc|-gen-arm-neon-sema

CLANG_TABLEGEN_INCLUDES.Checkers.td=	\
	-I${CLANG_SRCDIR}/include \
	-I${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
@


1.40
log
@Update LLVM build glue for pre-4.0.0 r291444.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.39 2016/02/27 21:47:32 joerg Exp $
d27 1
d32 1
d41 1
d78 1
a78 1
INCS+=	stdalign.h stdatomic.h stdnoreturn.h
d107 1
d109 1
d167 2
a168 2
DPSRCS+=	clang/Basic/Version.inc
CLEANFILES+=	clang/Basic/Version.inc
d179 5
a183 1
lld/Config/Version.inc: ${LLVM_TOPLEVEL}/Makefile.inc
@


1.39
log
@Update build system for LLVM 3.8.0rc3.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.38 2015/11/07 00:12:57 joerg Exp $
d18 5
d24 1
d30 1
d43 1
d72 2
d81 2
a82 1
	${CLANG_SRCDIR}/include/clang/Driver
d87 1
a87 1
	llvm/IR/Attributes.inc|-gen-attrs
d94 1
a94 1
	StmtNodes.td Diagnostic.td arm_neon.td
d152 4
d168 1
d171 1
d207 1
d221 1
d229 1
a229 1
	cd tmp && ${LLVM_SRCDIR}/configure ${LLVM_CONFIGURE_ARGS} \
d232 1
a232 1
	    ac_cv_func_mmap_fixed_mapped=yes ac_cv_func_mmap_file=yes llvm_cv_c_printf_a=yes
d236 1
a236 1
	cp -r tmp/tools/clang/include/clang/* ${CLANG_INCLUDE_CONFIG}/clang/
@


1.39.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.40 2017/01/11 12:02:28 joerg Exp $
a17 5
	avx512ifmaintrin.h \
	avx512ifmavlintrin.h \
	avx512pfintrin.h \
	avx512vbmiintrin.h \
	avx512vbmivlintrin.h \
a18 1
	avx512vlcdintrin.h \
a23 1
	clflushoptintrin.h \
a35 1
	mwaitxintrin.h \
a63 2
.elif ${MACHINE_CPU} == "mips" || ${MACHINE_CPU} == "mips64"
INCS=	msa.h
d71 1
a71 2
	${CLANG_SRCDIR}/include/clang/Driver \
	${CLANG_SRCDIR}/include/clang/StaticAnalyzer/Checkers
d76 1
a76 1
	llvm/IR/Attributes.gen|-gen-attrs
d83 1
a83 1
	StmtNodes.td Diagnostic.td arm_neon.td Checkers.td
a140 4
CLANG_TABLEGEN_INCLUDES.Checkers.td=	-I${CLANG_SRCDIR}/include
CLANG_TABLEGEN_OUTPUT.Checkers.td= \
	clang/StaticAnalyzer/Checkers/Checkers.inc|-gen-clang-sa-checkers

a152 1
	printf '#define CLANG_VERSION_STRING "${CLANG_VERSION}"\n' >> ${.TARGET}.tmp
a154 1
	printf '#define CLANG_VERSION_PATCHLEVEL ${CLANG_VERSION:R:R}\n' >> ${.TARGET}.tmp
a189 1
	printf '#define LLVM_VERSION_PATCH ${LLVM_VERSION:E}\n' >> ${.TARGET}.tmp
a202 1
	printf '#define LLVM_VERSION_PATCH ${LLVM_VERSION:E}\n' >> ${.TARGET}.tmp
d210 1
a210 1
	cd tmp && CONFIG_SITE= ${CONFIG_DIR}/configure ${LLVM_CONFIGURE_ARGS} \
d213 1
a213 1
	    BUILD_CC=${CC:Q} BUILD_CXX=${CXX:Q}
d217 1
a217 1
	cp -r tmp/include/clang/* ${CLANG_INCLUDE_CONFIG}/clang/
@


1.38
log
@Install stdalign.h and stdnoreturn.h for clang as well.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.37 2015/05/29 17:40:41 joerg Exp $
d14 2
d19 1
d29 1
d37 1
d50 7
a56 1
	xopintrin.h
d58 3
a60 1
INCS=	altivec.h
d73 4
a76 1
TABLEGEN_SRC=	Intrinsics.td Options.td
d178 2
d190 1
d203 1
d212 1
a212 1
	    CPPFLAGS=${CPPFLAGS:N-std=c++11:Q} LDFLAGS=${LDFLAGS:Q} LD=${LD:Q} LIBS=-lm \
a214 2
	mv ${LLVM_INCLUDE_CONFIG}/llvm/Config/config.h \
	   ${LLVM_INCLUDE_CONFIG}/llvm/Config/config.h.in
d219 2
@


1.37
log
@Until we have a solution for stdatomic.h for GCC 4.8, install Clang's
version under /usr/include/clang-3.6 to match the C11 default.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.36 2015/01/29 20:41:34 joerg Exp $
d52 1
a52 1
INCS+=	stdatomic.h
@


1.36
log
@Update build system glue for LLVM 3.6RC1. Notable changes:

- Old JIT is removed.
- Improvements to debug information handling.
- ARM: check for deprecated instructions and warn in the integrated
  assembler
- PPC: VSX support, va_arg support for struct/union types, -fPIC vs
  -fpic supported, faster atomics
- x86: improved vectorizer
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.35 2014/11/14 15:59:46 joerg Exp $
d52 1
@


1.35
log
@Install cpuid.h on X86 and arm_neon.h on ARM.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.34 2014/11/14 15:56:12 joerg Exp $
d10 1
d13 1
d16 2
d140 16
@


1.34
log
@LLVM switched to three component point release version, so follow here.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.33 2014/09/06 01:02:21 joerg Exp $
d17 1
d45 2
a46 1
INCS=	arm_acle.h
d118 1
a118 1
	arm_neon.h.inc|-gen-arm-neon
@


1.33
log
@Install altivec.h for ppc64 too.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.32 2014/08/10 17:34:21 joerg Exp $
d46 1
a46 11
INCSDIR=	/usr/include/clang-${CLANG_VERSION}

HEADER=	\
  float.h \
  iso646.h \
  limits.h \
  stdarg.h \
  stdbool.h \
  stddef.h \
  stdint.h \
  tgmath.h
d130 2
a131 2
	printf '#define CLANG_VERSION_MAJOR ${CLANG_VERSION:C,\.[0-9]*,,}\n' >> ${.TARGET}.tmp
	printf '#define CLANG_VERSION_MINOR ${CLANG_VERSION:C,[0-9]*\.,,}\n' >> ${.TARGET}.tmp
d147 2
a148 2
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:C,\.[0-9]*,,}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:C,[0-9]*\.,,}\n' >> ${.TARGET}.tmp
d159 2
a160 2
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:C,\.[0-9]*,,}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:C,[0-9]*\.,,}\n' >> ${.TARGET}.tmp
@


1.32
log
@Update build glue for LLVM/Clang 3.6svn r215315. Changes include various
performance improvements across all backends and a much improved PPC32
backend.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.31 2014/05/30 18:28:13 joerg Exp $
d41 1
a41 1
.elif ${MACHINE_ARCH} == "powerpc"
@


1.32.2.1
log
@Update LLVM to 3.6.1, requested by joerg in ticket 824.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.37 2015/05/29 17:40:41 joerg Exp $
a9 1
	adxintrin.h \
a11 1
	avx512bwintrin.h \
a13 2
	avx512vlbwintrin.h \
	avx512vlintrin.h \
a16 1
	cpuid.h \
d41 1
a41 1
.elif ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64"
d44 1
a44 2
INCS=	arm_acle.h \
	arm_neon.h
d46 11
a56 2
INCS+=	stdatomic.h
INCSDIR=	/usr/include/clang-${CLANG_VERSION:R}
d126 1
a126 1
	arm_neon.h|-gen-arm-neon
d140 2
a141 2
	printf '#define CLANG_VERSION_MAJOR ${CLANG_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define CLANG_VERSION_MINOR ${CLANG_VERSION:R:E}\n' >> ${.TARGET}.tmp
a143 16
lld/Config/Version.inc: ${LLVM_TOPLEVEL}/Makefile.inc

.if ${MKLLD} != "no"
DPSRCS+=	lld/Config/Version.inc
CLEANFILES+=	lld/Config/Version.inc

lld/Config/Version.inc: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define LLD_VERSION ${LLD_VERSION}\n' > ${.TARGET}.tmp
	printf '#define LLD_VERSION_MAJOR ${LLD_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define LLD_VERSION_MINOR ${LLD_VERSION:R:E}\n' >> ${.TARGET}.tmp
	printf '#define LLD_REVISION_STRING "r${LLD_REVISION}"\n' >> ${.TARGET}.tmp
	printf '#define LLD_REPOSITORY_STRING "${SVN_ROOT}/lld/${SVN_BRANCH}"\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}
.endif

d157 2
a158 2
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:R:E}\n' >> ${.TARGET}.tmp
d169 2
a170 2
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:R:R}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:R:E}\n' >> ${.TARGET}.tmp
@


1.31
log
@Update build system for LLVM/Clang snapshot r209886. This brings in the
merged AArch64 backend and the move of eARM to DWARF exception handling
for NetBSD. C++11 is required for building.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.30 2014/02/14 20:23:56 joerg Exp $
d12 2
d43 2
d63 1
a63 1
TABLEGEN_SRC=	Intrinsics.td Options.td CC1AsOptions.td 
a131 4
TABLEGEN_INCLUDES.CC1AsOptions.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.CC1AsOptions.td= \
	clang/Driver/CC1AsOptions.inc|-gen-opt-parser-defs

@


1.30
log
@Update LLVm/Clang to 3.5svn r201163. This brings improvements to the
16bit x86 support, self hosting for SPARC64 and improvements to the
NetBSD driver on ARM, AArch64 and MIPS.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.29 2014/01/15 22:21:34 joerg Exp $
d19 1
d75 1
a75 1
	clang/Lex/AttrSpellings.inc|-gen-clang-attr-spelling-list \
@


1.30.2.1
log
@Rebase.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.31 2014/05/30 18:28:13 joerg Exp $
a18 1
	ia32intrin.h \
d74 1
a74 1
	clang/Basic/AttrHasAttributeImpl.inc|-gen-clang-attr-has-attribute-impl \
@


1.29
log
@Update build glue for LLVM/Clang 3.5svn r199312. Noticable changes
include bug fixes for the loop vectorizer, initial work for assembler
parser/disassembler on SPARC, improvements to ARM assembler and .code16
support on x86.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.28 2014/01/07 01:59:36 joerg Exp $
d75 1
a75 4
	clang/Parse/AttrArgContext.inc|-gen-clang-attr-arg-context-list \
	clang/Parse/AttrIdentifierArg.inc|-gen-clang-attr-identifier-arg-list \
	clang/Parse/AttrLateParsed.inc|-gen-clang-attr-late-parsed-list \
	clang/Parse/AttrTypeArg.inc|-gen-clang-attr-type-arg-list \
@


1.28
log
@Replace with a simple -e x for sed.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.27 2014/01/05 16:38:06 joerg Exp $
d75 1
@


1.27
log
@Update LLVM family to 3.5svn r198450. Interesting changes include:
- Improvements in the SPARC64 support
- ARM backend can almost build a full NetBSD/EABI system with the
  integrated assembler
- PowerPC grows disassembler support
- LLD supports copy relocation, beginning of MIPS backend
- New diagnostic for use of bool expression as size_t argument for
  strncmp and friends
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.26 2014/01/05 15:15:34 joerg Exp $
d153 3
a155 3
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/config.h.in | \
	head -n -1 > ${.TARGET}.tmp
d166 3
a168 3
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/llvm-config.h.in | \
	head -n -1 > ${.TARGET}.tmp
@


1.26
log
@Use head to remove final #endif, newer versions will contain multiple
conditional blocks for dealing with Apple universal binaries.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.25 2013/11/11 23:51:36 joerg Exp $
d72 1
@


1.25
log
@Update LLVM/Clang snapshot to r194393 for the FPU changes on x86.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.24 2013/10/30 20:27:39 joerg Exp $
d153 2
a154 3
	    -e /^\#endif/d \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/config.h.in \
	    > ${.TARGET}.tmp
d166 2
a167 3
	    -e /\#endif/d \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/llvm-config.h.in \
	    > ${.TARGET}.tmp
@


1.24
log
@Update LLVM/Clang snapshot to r193633. Fixes an old and somewhat amusing
bug involving a source file foo.c, a function foo and a static
function-local variable c in the direct object writer.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.23 2013/10/14 01:47:50 joerg Exp $
d76 1
@


1.23
log
@Don't pass -std=c++11 down to configure, it breaks C compiler detection.
Regen configuration.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.22 2013/10/14 01:37:39 joerg Exp $
d74 1
a74 1
	clang/Parse/AttrExprArgs.inc|-gen-clang-attr-expr-args-list \
@


1.22
log
@Update LLVM/Clang snapshot to r192551 for various bug fixes.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.21 2013/09/21 22:28:12 joerg Exp $
d180 1
a180 1
	    CPPFLAGS=${CPPFLAGS:Q} LDFLAGS=${LDFLAGS:Q} LD=${LD:Q} LIBS=-lm \
@


1.21
log
@Update LLVM/Clang snapshot to r191105. This brings in a better detection
of unused static variables and functions. Disable this for some external
code and for ioconf.c in the kernel.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.20 2013/07/07 21:36:43 joerg Exp $
d32 1
@


1.20
log
@Update LLVM/Clang to snapshot r185778. This brings in a lot of work on
integrated-assembler support on PowerPC as well as support for
compressed DWARF sections in some tools.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.19 2013/05/28 17:37:34 joerg Exp $
d30 1
d75 1
a75 1
	clang/Sema/AttrTemplateInstantiate.inc|-gen-clang-attr-template-instantiate \
d79 1
@


1.19
log
@Update LLVM/Clang snapshot to r182734. Brings initial support for
integrated PowerPC assembler.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.18 2013/04/25 13:59:56 joerg Exp $
d56 1
a56 1
TABLEGEN_SRC=	Intrinsics.td
d63 1
a63 2
	StmtNodes.td Diagnostic.td arm_neon.td Options.td \
	CC1AsOptions.td CC1Options.td
d120 2
a121 2
CLANG_TABLEGEN_INCLUDES.Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
CLANG_TABLEGEN_OUTPUT.Options.td= \
d124 2
a125 2
CLANG_TABLEGEN_INCLUDES.CC1AsOptions.td=	-I${CLANG_SRCDIR}/include/clang/Driver
CLANG_TABLEGEN_OUTPUT.CC1AsOptions.td= \
d149 1
a149 1
	    -e /\#endif/d \
@


1.18
log
@Update LLVM/Clang snapshot to r180004. This brings in the last pieces of
C++11 support in Clang as well as initial SPARC64 support.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.17 2013/02/04 15:00:33 joerg Exp $
d73 1
@


1.17
log
@Update to LLVM/Clang snapshot r174288. This brings in the new AArch64
backend as well as an import bug fix for pointer compare optimisations.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.16 2013/01/23 15:02:57 joerg Exp $
d27 2
@


1.16
log
@Update LLVM/Clang snapshot to r172366. Catch up with the move past 3.2
release.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.15 2012/11/17 04:57:27 joerg Exp $
d60 2
a61 2
	CommentNodes.td DeclNodes.td StmtNodes.td \
	Diagnostic.td arm_neon.td Options.td \
d75 1
d89 2
a90 1
	clang/AST/CommentCommandInfo.inc|-gen-clang-comment-command-info
d96 3
@


1.15
log
@Update LLVM/Clang snapshot to r168187 for various bug fixes.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.14 2012/10/28 17:07:45 joerg Exp $
d49 1
a49 1
.PATH:	${LLVM_SRCDIR}/include/llvm \
d57 1
a57 1
	llvm/Intrinsics.gen|-gen-intrinsic
d67 2
a68 1
        clang/AST/AttrImpl.inc|-gen-clang-attr-impl \
@


1.14
log
@Update LLVM/Clang snapshot to r166772. Now builds without RTTI and
exceptions. Also features the first round of a loop vectorizer.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.13 2012/09/23 17:22:23 joerg Exp $
d8 3
a10 1
INCS=	ammintrin.h \
d27 1
@


1.13
log
@Update LLVM/Clang snapshot to r164464. This adopts the GCC options for
the SSP parameters and a not-yet-default rewrite of SROA.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.12 2012/08/09 14:37:06 joerg Exp $
d14 1
@


1.12
log
@Update LLVM/Clang snapshot to r161532 for the usual set of improvements
and bugfixes.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.11 2012/06/17 07:40:26 joerg Exp $
d46 1
d55 4
a58 2
CLANG_TABLEGEN_SRC=	Attr.td StmtNodes.td DeclNodes.td CommentNodes.td \
	Diagnostic.td arm_neon.td Options.td CC1AsOptions.td CC1Options.td
d82 7
@


1.12.2.1
log
@Resync to 2012-11-19 00:00:00 UTC
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.15 2012/11/17 04:57:27 joerg Exp $
d8 1
a8 3
INCS=	__wmmintrin_aes.h \
	__wmmintrin_pclmul.h \
	ammintrin.h \
a13 1
	f16cintrin.h \
a23 1
	rtmintrin.h \
a45 1
	${CLANG_SRCDIR}/include/clang/AST \
d54 2
a55 4
CLANG_TABLEGEN_SRC=	Attr.td CommentCommands.td CommentHTMLTags.td \
	CommentNodes.td DeclNodes.td StmtNodes.td \
	Diagnostic.td arm_neon.td Options.td \
	CC1AsOptions.td CC1Options.td
a78 7
CLANG_TABLEGEN_OUTPUT.CommentCommands.td= \
	clang/AST/CommentCommandInfo.inc|-gen-clang-comment-command-info

CLANG_TABLEGEN_OUTPUT.CommentHTMLTags.td= \
	clang/AST/CommentHTMLTags.inc|-gen-clang-comment-html-tags \
	clang/AST/CommentHTMLTagsProperties.inc|-gen-clang-comment-html-tags-properties

@


1.12.2.2
log
@resync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.12.2.1 2012/11/20 02:58:01 tls Exp $
d49 1
a49 1
.PATH:	${LLVM_SRCDIR}/include/llvm/IR \
d57 1
a57 1
	llvm/IR/Intrinsics.gen|-gen-intrinsic
d60 2
a61 2
	CommentNodes.td CommentHTMLNamedCharacterReferences.td DeclNodes.td \
	StmtNodes.td Diagnostic.td arm_neon.td Options.td \
d67 1
a67 2
	clang/AST/AttrDump.inc|-gen-clang-attr-dump \
	clang/AST/AttrImpl.inc|-gen-clang-attr-impl \
a73 1
	clang/Sema/AttrSpellingListIndex.inc|-gen-clang-attr-spelling-index \
d87 1
a87 2
	clang/AST/CommentCommandInfo.inc|-gen-clang-comment-command-info \
	clang/AST/CommentCommandList.inc|-gen-clang-comment-command-list
a92 3
CLANG_TABLEGEN_OUTPUT.CommentHTMLNamedCharacterReferences.td= \
	clang/AST/CommentHTMLNamedCharacterReferences.inc|-gen-clang-comment-html-named-character-references

@


1.12.2.3
log
@resync from head
@
text
@d1 1
a1 1
#	$NetBSD$
a26 2
	prfchwintrin.h \
	rdseedintrin.h \
a70 1
	clang/Parse/AttrExprArgs.inc|-gen-clang-attr-expr-args-list \
@


1.12.2.4
log
@Rebase to HEAD as of a few days ago.
@
text
@a11 2
	avx512fintrin.h \
	avx512erintrin.h \
a18 1
	ia32intrin.h \
a29 1
	shaintrin.h \
a30 1
	tbmintrin.h \
a37 2
.elif ${MACHINE_CPU} == "arm"
INCS=	arm_acle.h
d56 1
a56 1
TABLEGEN_SRC=	Intrinsics.td Options.td
d63 2
a64 1
	StmtNodes.td Diagnostic.td arm_neon.td
a70 1
	clang/AST/AttrVisitor.inc|-gen-clang-attr-ast-visitor \
d72 4
a75 3
	clang/Basic/AttrHasAttributeImpl.inc|-gen-clang-attr-has-attribute-impl \
	clang/Parse/AttrParserStringSwitches.inc|-gen-clang-attr-parser-string-switches \
	clang/Sema/AttrParsedAttrImpl.inc|-gen-clang-attr-parsed-attr-impl \
a78 1
	clang/Sema/AttrTemplateInstantiate.inc|-gen-clang-attr-template-instantiate \
d121 2
a122 2
TABLEGEN_INCLUDES.Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.Options.td= \
d125 4
d149 2
a150 1
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d -e 'x' \
d163 2
a164 1
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d -e 'x' \
d178 1
a178 1
	    CPPFLAGS=${CPPFLAGS:N-std=c++11:Q} LDFLAGS=${LDFLAGS:Q} LD=${LD:Q} LIBS=-lm \
@


1.11
log
@Fix version string returned by clang --version.
Integrate the in-tree config file generation with the cross-building
toolchain.  Regenerate the files.
Keep version numbers all in one place.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.10 2012/06/16 17:01:03 joerg Exp $
d54 1
a54 1
CLANG_TABLEGEN_SRC=	Attr.td StmtNodes.td DeclNodes.td \
d76 3
d83 1
@


1.10
log
@Update LLVM/Clang snapshot to r158533. This brings in support for
stack-realignment in functions using alloca on x86. Move to
/usr/include/clang-3.2 to reflect the version.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.9 2012/05/29 19:31:52 joerg Exp $
d33 1
a33 1
INCSDIR=	/usr/include/clang-3.2
d104 58
@


1.9
log
@Update Clang/LLVM snapshot to 156412. Refactoring.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.8 2012/04/04 10:42:01 joerg Exp $
d8 2
a9 1
INCS=	avx2intrin.h \
d14 1
d28 2
a29 1
	xmmintrin.h
d33 1
a33 1
INCSDIR=	/usr/include/clang-3.0
@


1.8
log
@Update LLVM/Clang snapshot to r153935. This brings in the new inline
cost analysis.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.7 2012/02/28 17:09:30 joerg Exp $
a94 4
CLANG_TABLEGEN_INCLUDES.CC1Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
CLANG_TABLEGEN_OUTPUT.CC1Options.td= \
	clang/Driver/CC1Options.inc|-gen-opt-parser-defs

@


1.7
log
@Update LLVM/Clang snapshot to r151411. This brings in Lambda support for
C++11 and a new literal format string check to catch variadic argument
functions.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.6 2012/01/11 23:24:46 joerg Exp $
d62 2
@


1.6
log
@Update LLVM/Clang snapshot to r147888. Most importantly, this fixes a
number of ABI issues for i386 and provides the correct
__FLT_EVAL_METHOD__ when using i387.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.5 2011/12/11 14:58:50 joerg Exp $
d61 1
@


1.5
log
@Update to LLVM/Clang r146325. This fixes a number of issues for i386.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4 2011/10/11 13:53:58 joerg Exp $
d8 4
a11 1
INCS=	avxintrin.h \
d13 1
d15 1
d19 1
d21 1
d24 2
@


1.4
log
@Update LLVM/Clang snapshot to r141658. This primarily fixes a regression
preventing Qt4 from building.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.3 2011/05/12 14:56:23 joerg Exp $
d71 1
@


1.4.2.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4 2011/10/11 13:53:58 joerg Exp $
d8 1
a8 4
INCS=	avx2intrin.h \
	avxintrin.h \
	bmi2intrin.h \
	bmiintrin.h \
a9 1
	fma4intrin.h \
a10 1
	lzcntintrin.h \
a13 1
	nmmintrin.h \
a14 1
	popcntintrin.h \
a16 2
	wmmintrin.h \
	x86intrin.h \
a51 3
	clang/Sema/AttrTemplateInstantiate.inc|-gen-clang-attr-template-instantiate \
	clang/Sema/AttrParsedAttrKinds.inc|-gen-clang-attr-parsed-attr-kinds \
	clang/Sema/AttrParsedAttrList.inc|-gen-clang-attr-parsed-attr-list \
a70 1
	clang/Basic/DiagnosticSerializationKinds.inc|-gen-clang-diags-defs^-clang-component=Serialization \
@


1.4.2.2
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4.2.1 2012/04/17 00:03:30 yamt Exp $
d8 1
a8 2
INCS=	ammintrin.h \
	avx2intrin.h \
a12 2
	f16cintrin.h \
	fmaintrin.h \
d26 1
a26 2
	xmmintrin.h \
	xopintrin.h
d30 1
a30 1
INCSDIR=	/usr/include/clang-${CLANG_VERSION}
a42 1
	${CLANG_SRCDIR}/include/clang/AST \
d51 2
a52 4
CLANG_TABLEGEN_SRC=	Attr.td CommentCommands.td CommentHTMLTags.td \
	CommentNodes.td DeclNodes.td StmtNodes.td \
	Diagnostic.td arm_neon.td Options.td \
	CC1AsOptions.td CC1Options.td
a72 10
CLANG_TABLEGEN_OUTPUT.CommentNodes.td= \
	clang/AST/CommentNodes.inc|-gen-clang-comment-nodes

CLANG_TABLEGEN_OUTPUT.CommentCommands.td= \
	clang/AST/CommentCommandInfo.inc|-gen-clang-comment-command-info

CLANG_TABLEGEN_OUTPUT.CommentHTMLTags.td= \
	clang/AST/CommentHTMLTags.inc|-gen-clang-comment-html-tags \
	clang/AST/CommentHTMLTagsProperties.inc|-gen-clang-comment-html-tags-properties

a76 1
	clang/Basic/DiagnosticCommentKinds.inc|-gen-clang-diags-defs^-clang-component=Comment \
d95 4
a104 58
DPSRCS+=	clang/Basic/Version.inc
CLEANFILES+=	clang/Basic/Version.inc

clang/Basic/Version.inc: ${LLVM_TOPLEVEL}/Makefile.inc
	mkdir -p ${.TARGET:H}
	printf '#define CLANG_VERSION ${CLANG_VERSION}\n' > ${.TARGET}.tmp
	printf '#define CLANG_VERSION_MAJOR ${CLANG_VERSION:C,\.[0-9]*,,}\n' >> ${.TARGET}.tmp
	printf '#define CLANG_VERSION_MINOR ${CLANG_VERSION:C,[0-9]*\.,,}\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

.ifndef HOST_BUILD

DPSRCS+=	llvm/Config/config.h llvm/Config/llvm-config.h
CLEANFILES+=	llvm/Config/config.h llvm/Config/llvm-config.h

llvm/Config/config.h: ${LLVM_TOPLEVEL}/Makefile.inc ${LLVM_TOPLEVEL}/config/llvm/Config/config.h.in
	mkdir -p ${.TARGET:H}
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d -e /LLVM_NATIVE_/d \
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d \
	    -e /\#endif/d \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/config.h.in \
	    > ${.TARGET}.tmp
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define PACKAGE_VERSION "${LLVM_VERSION} (trunk ${LLVM_REVISION})"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:C,\.[0-9]*,,}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:C,[0-9]*\.,,}\n' >> ${.TARGET}.tmp
	printf '#endif\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

llvm/Config/llvm-config.h: ${LLVM_TOPLEVEL}/Makefile.inc ${LLVM_TOPLEVEL}/config/llvm/Config/llvm-config.h.in
	mkdir -p ${.TARGET:H}
	${TOOL_SED} -e /LLVM_DEFAULT_TARGET_TRIPLE/d -e /LLVM_NATIVE_/d \
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d \
	    -e /\#endif/d \
	    < ${LLVM_TOPLEVEL}/config/llvm/Config/llvm-config.h.in \
	    > ${.TARGET}.tmp
	printf '#define LLVM_DEFAULT_TARGET_TRIPLE "${MACHINE_GNU_PLATFORM}"\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MAJOR ${LLVM_VERSION:C,\.[0-9]*,,}\n' >> ${.TARGET}.tmp
	printf '#define LLVM_VERSION_MINOR ${LLVM_VERSION:C,[0-9]*\.,,}\n' >> ${.TARGET}.tmp
	printf '#endif\n' >> ${.TARGET}.tmp
	mv ${.TARGET}.tmp ${.TARGET}

run-configure:
	[ ! -d tmp ] || rm -r tmp
	mkdir -p tmp
	cd tmp && ${LLVM_SRCDIR}/configure ${LLVM_CONFIGURE_ARGS} \
	    CC=${CC:Q} CFLAGS=${CFLAGS:N-Werror:Q} CXX=${CXX:Q} CXXFLAGS=${CXXFLAGS:N-Werror:Q} \
	    CPPFLAGS=${CPPFLAGS:Q} LDFLAGS=${LDFLAGS:Q} LD=${LD:Q} LIBS=-lm \
	    ac_cv_func_mmap_fixed_mapped=yes ac_cv_func_mmap_file=yes llvm_cv_c_printf_a=yes
	cp -r tmp/include/llvm/* ${LLVM_INCLUDE_CONFIG}/llvm/
	mv ${LLVM_INCLUDE_CONFIG}/llvm/Config/config.h \
	   ${LLVM_INCLUDE_CONFIG}/llvm/Config/config.h.in
	mv ${LLVM_INCLUDE_CONFIG}/llvm/Config/llvm-config.h \
	   ${LLVM_INCLUDE_CONFIG}/llvm/Config/llvm-config.h.in
	cp -r tmp/tools/clang/include/clang/* ${CLANG_INCLUDE_CONFIG}/clang/
	rm -r tmp
.endif

@


1.4.2.3
log
@sync with (a bit old) head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4.2.2 2012/10/30 18:55:49 yamt Exp $
d8 1
a8 3
INCS=	__wmmintrin_aes.h \
	__wmmintrin_pclmul.h \
	ammintrin.h \
a24 1
	rtmintrin.h \
@


1.4.2.4
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4.2.3 2013/01/16 05:27:58 yamt Exp $
a26 2
	prfchwintrin.h \
	rdseedintrin.h \
a27 1
	shaintrin.h \
a28 1
	tbmintrin.h \
d49 1
a49 1
.PATH:	${LLVM_SRCDIR}/include/llvm/IR \
d54 1
a54 1
TABLEGEN_SRC=	Intrinsics.td Options.td CC1AsOptions.td 
d57 1
a57 1
	llvm/IR/Intrinsics.gen|-gen-intrinsic
d60 3
a62 2
	CommentNodes.td CommentHTMLNamedCharacterReferences.td DeclNodes.td \
	StmtNodes.td Diagnostic.td arm_neon.td
d67 1
a67 3
	clang/AST/AttrDump.inc|-gen-clang-attr-dump \
	clang/AST/AttrImpl.inc|-gen-clang-attr-impl \
	clang/AST/AttrVisitor.inc|-gen-clang-attr-ast-visitor \
d70 2
a71 2
	clang/Parse/AttrParserStringSwitches.inc|-gen-clang-attr-parser-string-switches \
	clang/Sema/AttrParsedAttrImpl.inc|-gen-clang-attr-parsed-attr-impl \
a73 2
	clang/Sema/AttrSpellingListIndex.inc|-gen-clang-attr-spelling-index \
	clang/Sema/AttrTemplateInstantiate.inc|-gen-clang-attr-template-instantiate \
d87 1
a87 2
	clang/AST/CommentCommandInfo.inc|-gen-clang-comment-command-info \
	clang/AST/CommentCommandList.inc|-gen-clang-comment-command-list
a92 3
CLANG_TABLEGEN_OUTPUT.CommentHTMLNamedCharacterReferences.td= \
	clang/AST/CommentHTMLNamedCharacterReferences.inc|-gen-clang-comment-html-named-character-references

d112 2
a113 2
TABLEGEN_INCLUDES.Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.Options.td= \
d116 2
a117 2
TABLEGEN_INCLUDES.CC1AsOptions.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.CC1AsOptions.td= \
d140 2
a141 1
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d -e 'x' \
d154 2
a155 1
	    -e /LLVM_VERSION_/d -e /PACKAGE_VERSION/d -e 'x' \
d169 1
a169 1
	    CPPFLAGS=${CPPFLAGS:N-std=c++11:Q} LDFLAGS=${LDFLAGS:Q} LD=${LD:Q} LIBS=-lm \
@


1.3
log
@Update LLVM and Clang snapshot
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.2 2011/04/15 19:31:07 joerg Exp $
d37 1
a37 2
TABLEGEN_SRC=	Intrinsics.td Attr.td StmtNodes.td DeclNodes.td \
	Diagnostic.td arm_neon.td Options.td CC1AsOptions.td CC1Options.td
d42 5
a46 2
TABLEGEN_INCLUDES.Attr.td=	-I${CLANG_SRCDIR}/include
TABLEGEN_OUTPUT.Attr.td= \
d51 1
d55 1
a55 1
TABLEGEN_OUTPUT.StmtNodes.td= \
d58 1
a58 1
TABLEGEN_OUTPUT.DeclNodes.td= \
d61 2
a62 2
TABLEGEN_INCLUDES.Diagnostic.td=	-I${CLANG_SRCDIR}/include/clang/Basic
TABLEGEN_OUTPUT.Diagnostic.td= \
d74 1
a74 1
TABLEGEN_OUTPUT.arm_neon.td= \
d78 2
a79 2
TABLEGEN_INCLUDES.Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.Options.td= \
d82 2
a83 2
TABLEGEN_INCLUDES.CC1Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.CC1Options.td= \
d86 2
a87 2
TABLEGEN_INCLUDES.CC1AsOptions.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.CC1AsOptions.td= \
@


1.2
log
@Install clang's MD headers into /usr/include/clang-3.0 similar to GCC.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.1 2011/02/06 01:13:52 joerg Exp $
d11 2
a13 1
	mmintrin.h \
d68 2
a69 1
	clang/Basic/DiagnosticGroups.inc|-gen-clang-diag-groups
@


1.1
log
@Add LLVM and clang build system.  It is enabled by MKLLVM=yes.
Upstream sources can be fetched by running "make checkout" in
src/external/bsd/llvm, they will be properly imported once the
integration and missing features are sorted out.
@
text
@d1 1
a1 1
#	$NetBSD$
d7 14
a20 13
#INCS=	${INCS.x86}
INCSDIR=	/usr/include

INCS.x86= \
  emmintrin.h \
  immintrin.h \
  mm_malloc.h \
  mmintrin.h \
  pmmintrin.h \
  smmintrin.h \
  tmmintrin.h \
  xmmintrin.h

a22 2
  altivec.h \
  avxintrin.h \
@


1.1.2.1
log
@file Makefile was added on branch bouyer-quota2 on 2011-03-06 15:07:44 +0000
@
text
@d1 90
@


1.1.2.2
log
@Sync with HEAD
@
text
@a0 90
#	$NetBSD: Makefile,v 1.1 2011/02/06 01:13:52 joerg Exp $

.include <bsd.init.mk>

.PATH:	${CLANG_SRCDIR}/lib/Headers

#INCS=	${INCS.x86}
INCSDIR=	/usr/include

INCS.x86= \
  emmintrin.h \
  immintrin.h \
  mm_malloc.h \
  mmintrin.h \
  pmmintrin.h \
  smmintrin.h \
  tmmintrin.h \
  xmmintrin.h


HEADER=	\
  altivec.h \
  avxintrin.h \
  float.h \
  iso646.h \
  limits.h \
  stdarg.h \
  stdbool.h \
  stddef.h \
  stdint.h \
  tgmath.h

.PATH:	${LLVM_SRCDIR}/include/llvm \
	${CLANG_SRCDIR}/include/clang/Basic \
	${CLANG_SRCDIR}/include/clang/Driver

TABLEGEN_SRC=	Intrinsics.td Attr.td StmtNodes.td DeclNodes.td \
	Diagnostic.td arm_neon.td Options.td CC1AsOptions.td CC1Options.td

TABLEGEN_OUTPUT.Intrinsics.td= \
	llvm/Intrinsics.gen|-gen-intrinsic

TABLEGEN_INCLUDES.Attr.td=	-I${CLANG_SRCDIR}/include
TABLEGEN_OUTPUT.Attr.td= \
	clang/AST/Attrs.inc|-gen-clang-attr-classes \
        clang/AST/AttrImpl.inc|-gen-clang-attr-impl \
	clang/Basic/AttrList.inc|-gen-clang-attr-list \
	clang/Lex/AttrSpellings.inc|-gen-clang-attr-spelling-list \
	clang/Serialization/AttrPCHRead.inc|-gen-clang-attr-pch-read \
	clang/Serialization/AttrPCHWrite.inc|-gen-clang-attr-pch-write

TABLEGEN_OUTPUT.StmtNodes.td= \
	clang/AST/StmtNodes.inc|-gen-clang-stmt-nodes

TABLEGEN_OUTPUT.DeclNodes.td= \
	clang/AST/DeclNodes.inc|-gen-clang-decl-nodes

TABLEGEN_INCLUDES.Diagnostic.td=	-I${CLANG_SRCDIR}/include/clang/Basic
TABLEGEN_OUTPUT.Diagnostic.td= \
	clang/Basic/DiagnosticAnalysisKinds.inc|-gen-clang-diags-defs^-clang-component=Analysis \
	clang/Basic/DiagnosticASTKinds.inc|-gen-clang-diags-defs^-clang-component=AST \
	clang/Basic/DiagnosticCommonKinds.inc|-gen-clang-diags-defs^-clang-component=Common \
	clang/Basic/DiagnosticDriverKinds.inc|-gen-clang-diags-defs^-clang-component=Driver \
	clang/Basic/DiagnosticFrontendKinds.inc|-gen-clang-diags-defs^-clang-component=Frontend \
	clang/Basic/DiagnosticLexKinds.inc|-gen-clang-diags-defs^-clang-component=Lex \
	clang/Basic/DiagnosticParseKinds.inc|-gen-clang-diags-defs^-clang-component=Parse \
	clang/Basic/DiagnosticSemaKinds.inc|-gen-clang-diags-defs^-clang-component=Sema \
	clang/Basic/DiagnosticGroups.inc|-gen-clang-diag-groups

TABLEGEN_OUTPUT.arm_neon.td= \
	clang/Basic/arm_neon.inc|-gen-arm-neon-sema \
	arm_neon.h.inc|-gen-arm-neon

TABLEGEN_INCLUDES.Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.Options.td= \
	clang/Driver/Options.inc|-gen-opt-parser-defs

TABLEGEN_INCLUDES.CC1Options.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.CC1Options.td= \
	clang/Driver/CC1Options.inc|-gen-opt-parser-defs

TABLEGEN_INCLUDES.CC1AsOptions.td=	-I${CLANG_SRCDIR}/include/clang/Driver
TABLEGEN_OUTPUT.CC1AsOptions.td= \
	clang/Driver/CC1AsOptions.inc|-gen-opt-parser-defs

.include "${.PARSEDIR}/../tablegen.mk"

depend dependall all: ${DPSRCS}

.include <bsd.prog.mk>
@


