Module Name:    src
Committed By:   mrg
Date:           Thu Jun 23 12:09:30 UTC 2011

Modified Files:
        src/external/lgpl3/gmp/lib/libgmp: Makefile
Added Files:
        src/external/lgpl3/gmp/lib/libgmp/arch/x86_64: Makefile.inc config.m4
            gmp-mparam.h

Log Message:
make this build on amd64.

XXX: need to confirm that all the objects are built but this is
XXX: enough to make GCC happy.


To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/external/lgpl3/gmp/lib/libgmp/Makefile
cvs rdiff -u -r0 -r1.1 \
    src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/Makefile.inc \
    src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/config.m4 \
    src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/gmp-mparam.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/lgpl3/gmp/lib/libgmp/Makefile
diff -u src/external/lgpl3/gmp/lib/libgmp/Makefile:1.1 src/external/lgpl3/gmp/lib/libgmp/Makefile:1.2
--- src/external/lgpl3/gmp/lib/libgmp/Makefile:1.1	Tue Jun 21 04:23:56 2011
+++ src/external/lgpl3/gmp/lib/libgmp/Makefile	Thu Jun 23 12:09:30 2011
@@ -1,479 +1,300 @@
-#	$NetBSD: Makefile,v 1.1 2011/06/21 04:23:56 mrg Exp $
+#	$NetBSD: Makefile,v 1.2 2011/06/23 12:09:30 mrg Exp $
 
 .include <bsd.init.mk>
 
-LIB=	gmp
+DIST=${.CURDIR}/../../dist
+
+# XXX
+MKLINT=no
 
-SRCS=			\
-	assert.c	\
-	compat.c	\
-	errno.c	\
-	extract-dbl.c	\
-	invalid.c	\
-	memory.c	\
-	mp_bpl.c	\
-	mp_clz_tab.c	\
-	mp_dv_tab.c	\
-	mp_minv_tab.c	\
-	mp_get_fns.c	\
-	mp_set_fns.c	\
-	rand.c	\
-	randclr.c	\
-	randdef.c	\
-	randiset.c	\
-	randlc2s.c	\
-	randlc2x.c	\
-	randmt.c	\
-	randmts.c	\
-	rands.c	\
-	randsd.c	\
-	randsdui.c	\
-	randbui.c	\
-	randmui.c	\
-	version.c	\
-	nextprime.c	\
-	tal-reent.c	\
-	init.c	\
-	init2.c	\
-	inits.c	\
-	set.c	\
-	set_ui.c	\
-	set_si.c	\
-	set_str.c	\
-	set_d.c	\
-	set_z.c	\
-	iset.c	\
-	iset_ui.c	\
-	iset_si.c	\
-	iset_str.c	\
-	iset_d.c	\
-	clear.c	\
-	clears.c	\
-	get_str.c	\
-	dump.c	\
-	size.c	\
-	eq.c	\
-	reldiff.c	\
-	sqrt.c	\
-	random2.c	\
-	inp_str.c	\
-	out_str.c	\
-	add.c	\
-	add_ui.c	\
-	sub.c	\
-	sub_ui.c	\
-	ui_sub.c	\
-	mul.c	\
-	mul_ui.c	\
-	div.c	\
-	div_ui.c	\
-	cmp.c	\
-	cmp_d.c	\
-	cmp_ui.c	\
-	cmp_si.c	\
-	mul_2exp.c	\
-	div_2exp.c	\
-	abs.c	\
-	neg.c	\
-	set_q.c	\
-	get_d.c	\
-	get_d_2exp.c	\
-	set_dfl_prec.c	\
-	set_prc.c	\
-	set_prc_raw.c	\
-	get_dfl_prec.c	\
-	get_prc.c	\
-	ui_div.c	\
-	sqrt_ui.c	\
-	ceilfloor.c	\
-	trunc.c	\
-	pow_ui.c	\
-	urandomb.c	\
-	swap.c	\
-	fits_sint.c	\
-	fits_slong.c	\
-	fits_sshort.c	\
-	fits_uint.c	\
-	fits_ulong.c	\
-	fits_ushort.c	\
-	get_si.c	\
-	get_ui.c	\
-	int_p.c	\
-	abs.c	\
-	add.c	\
-	add_ui.c	\
-	aorsmul.c	\
-	aorsmul_i.c	\
-	and.c	\
-	array_init.c	\
-	bin_ui.c	\
-	bin_uiui.c	\
-	cdiv_q.c	\
-	cdiv_q_ui.c	\
-	cdiv_qr.c	\
-	cdiv_qr_ui.c	\
-	cdiv_r.c	\
-	cdiv_r_ui.c	\
-	cdiv_ui.c	\
-	cfdiv_q_2exp.c	\
-	cfdiv_r_2exp.c	\
-	clear.c	\
-	clears.c	\
-	clrbit.c	\
-	cmp.c	\
-	cmp_d.c	\
-	cmp_si.c	\
-	cmp_ui.c	\
-	cmpabs.c	\
-	cmpabs_d.c	\
-	cmpabs_ui.c	\
-	com.c	\
-	combit.c	\
-	cong.c	\
-	cong_2exp.c	\
-	cong_ui.c	\
-	divexact.c	\
-	divegcd.c	\
-	dive_ui.c	\
-	divis.c	\
-	divis_ui.c	\
-	divis_2exp.c	\
-	dump.c	\
-	export.c	\
-	fac_ui.c	\
-	fdiv_q.c	\
-	fdiv_q_ui.c	\
-	fdiv_qr.c	\
-	fdiv_qr_ui.c	\
-	fdiv_r.c	\
-	fdiv_r_ui.c	\
-	fdiv_ui.c	\
-	fib_ui.c	\
-	fib2_ui.c	\
-	fits_sint.c	\
-	fits_slong.c	\
-	fits_sshort.c	\
-	fits_uint.c	\
-	fits_ulong.c	\
-	fits_ushort.c	\
-	gcd.c	\
-	gcd_ui.c	\
-	gcdext.c	\
-	get_d.c	\
-	get_d_2exp.c	\
-	get_si.c	\
-	get_str.c	\
-	get_ui.c	\
-	getlimbn.c	\
-	hamdist.c	\
-	import.c	\
-	init.c	\
-	init2.c	\
-	inits.c	\
-	inp_raw.c	\
-	inp_str.c	\
-	invert.c	\
-	ior.c	\
-	iset.c	\
-	iset_d.c	\
-	iset_si.c	\
-	iset_str.c	\
-	iset_ui.c	\
-	jacobi.c	\
-	kronsz.c	\
-	kronuz.c	\
-	kronzs.c	\
-	kronzu.c	\
-	lcm.c	\
-	lcm_ui.c	\
-	lucnum_ui.c	\
-	lucnum2_ui.c	\
-	millerrabin.c	\
-	mod.c	\
-	mul.c	\
-	mul_2exp.c	\
-	mul_si.c	\
-	mul_ui.c	\
-	n_pow_ui.c	\
-	neg.c	\
-	nextprime.c	\
-	out_raw.c	\
-	out_str.c	\
-	perfpow.c	\
-	perfsqr.c	\
-	popcount.c	\
-	pow_ui.c	\
-	powm.c	\
-	powm_sec.c	\
-	powm_ui.c	\
-	pprime_p.c	\
-	random.c	\
-	random2.c	\
-	realloc.c	\
-	realloc2.c	\
-	remove.c	\
-	root.c	\
-	rootrem.c	\
-	rrandomb.c	\
-	scan0.c	\
-	scan1.c	\
-	set.c	\
-	set_d.c	\
-	set_f.c	\
-	set_q.c	\
-	set_si.c	\
-	set_str.c	\
-	set_ui.c	\
-	setbit.c	\
-	size.c	\
-	sizeinbase.c	\
-	sqrt.c	\
-	sqrtrem.c	\
-	sub.c	\
-	sub_ui.c	\
-	swap.c	\
-	tdiv_ui.c	\
-	tdiv_q.c	\
-	tdiv_q_2exp.c	\
-	tdiv_q_ui.c	\
-	tdiv_qr.c	\
-	tdiv_qr_ui.c	\
-	tdiv_r.c	\
-	tdiv_r_2exp.c	\
-	tdiv_r_ui.c	\
-	tstbit.c	\
-	ui_pow_ui.c	\
-	ui_sub.c	\
-	urandomb.c	\
-	urandomm.c	\
-	xor.c	\
-	abs.c	\
-	aors.c	\
-	canonicalize.c	\
-	clear.c	\
-	clears.c	\
-	cmp.c	\
-	cmp_si.c	\
-	cmp_ui.c	\
-	div.c	\
-	get_d.c	\
-	get_den.c	\
-	get_num.c	\
-	get_str.c	\
-	init.c	\
-	inits.c	\
-	inp_str.c	\
-	inv.c	\
-	md_2exp.c	\
-	mul.c	\
-	neg.c	\
-	out_str.c	\
-	set.c	\
-	set_den.c	\
-	set_num.c	\
-	set_si.c	\
-	set_str.c	\
-	set_ui.c	\
-	equal.c	\
-	set_z.c	\
-	set_d.c	\
-	set_f.c	\
-	swap.c	\
-	fib_table.c	\
-	mp_bases.c	\
-	add.c	\
-	add_1.c	\
-	add_n.c	\
-	sub.c	\
-	sub_1.c	\
-	sub_n.c	\
-	neg.c	\
-	com.c	\
-	mul_1.c	\
-	addmul_1.c	\
-	submul_1.c	\
-	lshift.c	\
-	rshift.c	\
-	dive_1.c	\
-	diveby3.c	\
-	divis.c	\
-	divrem.c	\
-	divrem_1.c	\
-	divrem_2.c	\
-	fib2_ui.c	\
-	mod_1.c	\
-	mod_34lsub1.c	\
-	mode1o.c	\
-	pre_mod_1.c	\
-	dump.c	\
-	mod_1_1.c	\
-	mod_1_2.c	\
-	mod_1_3.c	\
-	mod_1_4.c	\
-	lshiftc.c	\
-	mul.c	\
-	mul_fft.c	\
-	mul_n.c	\
-	sqr.c	\
-	mul_basecase.c	\
-	sqr_basecase.c	\
-	nussbaumer_mul.c	\
-	random.c	\
-	random2.c	\
-	pow_1.c	\
-	rootrem.c	\
-	sqrtrem.c	\
-	get_str.c	\
-	set_str.c	\
-	scan0.c	\
-	scan1.c	\
-	popcount.c	\
-	hamdist.c	\
-	cmp.c	\
-	perfsqr.c	\
-	perfpow.c	\
-	gcd_1.c	\
-	gcd.c	\
-	gcdext_1.c	\
-	gcdext.c	\
-	gcd_lehmer.c	\
-	gcd_subdiv_step.c	\
-	gcdext_lehmer.c	\
-	gcdext_subdiv_step.c	\
-	div_q.c	\
-	tdiv_qr.c	\
-	jacbase.c	\
-	get_d.c	\
-	matrix22_mul.c	\
-	hgcd2.c	\
-	hgcd.c	\
-	mullo_n.c	\
-	mullo_basecase.c	\
-	toom22_mul.c	\
-	toom32_mul.c	\
-	toom42_mul.c	\
-	toom52_mul.c	\
-	toom62_mul.c	\
-	toom33_mul.c	\
-	toom43_mul.c	\
-	toom53_mul.c	\
-	toom63_mul.c	\
-	toom44_mul.c	\
-	toom6h_mul.c	\
-	toom6_sqr.c	\
-	toom8h_mul.c	\
-	toom8_sqr.c	\
-	toom_couple_handling.c	\
-	toom2_sqr.c	\
-	toom3_sqr.c	\
-	toom4_sqr.c	\
-	toom_eval_dgr3_pm1.c	\
-	toom_eval_dgr3_pm2.c	\
-	toom_eval_pm1.c	\
-	toom_eval_pm2.c	\
-	toom_eval_pm2exp.c	\
-	toom_eval_pm2rexp.c	\
-	toom_interpolate_5pts.c	\
-	toom_interpolate_6pts.c	\
-	toom_interpolate_7pts.c	\
-	toom_interpolate_8pts.c	\
-	toom_interpolate_12pts.c	\
-	toom_interpolate_16pts.c	\
-	invertappr.c	\
-	invert.c	\
-	binvert.c	\
-	mulmod_bnm1.c	\
-	sqrmod_bnm1.c	\
-	sbpi1_div_q.c	\
-	sbpi1_div_qr.c	\
-	sbpi1_divappr_q.c	\
-	dcpi1_div_q.c	\
-	dcpi1_div_qr.c	\
-	dcpi1_divappr_q.c	\
-	mu_div_qr.c	\
-	mu_divappr_q.c	\
-	mu_div_q.c	\
-	bdiv_q_1.c	\
-	sbpi1_bdiv_q.c	\
-	sbpi1_bdiv_qr.c	\
-	dcpi1_bdiv_q.c	\
-	dcpi1_bdiv_qr.c	\
-	mu_bdiv_q.c	\
-	mu_bdiv_qr.c	\
-	bdiv_q.c	\
-	bdiv_qr.c	\
-	divexact.c	\
-	bdiv_dbm1c.c	\
-	redc_1.c	\
-	redc_2.c	\
-	redc_n.c	\
-	powm.c	\
-	powlo.c	\
-	powm_sec.c	\
-	subcnd_n.c	\
-	redc_1_sec.c	\
-	trialdiv.c	\
-	remove.c	\
-	and_n.c	\
-	andn_n.c	\
-	nand_n.c	\
-	ior_n.c	\
-	iorn_n.c	\
-	nior_n.c	\
-	xor_n.c	\
-	xnor_n.c	\
-	copyi.c	\
-	copyd.c	\
-	zero.c	\
-	invert_limb.c	\
-	mul_2.c	\
-	addmul_2.c	\
-	addlsh1_n.c	\
-	sublsh1_n.c	\
-	rsblsh1_n.c	\
-	rsh1add_n.c	\
-	rsh1sub_n.c	\
-	addlsh2_n.c	\
-	rsblsh2_n.c	\
-	addlsh_n.c	\
-	rsblsh_n.c	\
-	addaddmul_1msb0.c	\
-	asprintf.c	\
-	asprntffuns.c	\
-	doprnt.c	\
-	doprntf.c	\
-	doprnti.c	\
-	fprintf.c	\
-	obprintf.c	\
-	obvprintf.c	\
-	obprntffuns.c	\
-	printf.c	\
-	printffuns.c	\
-	snprintf.c	\
-	snprntffuns.c	\
-	sprintf.c	\
-	sprintffuns.c	\
-	vasprintf.c	\
-	vfprintf.c	\
-	vprintf.c	\
-	vsnprintf.c	\
-	vsprintf.c	\
-	repl-vsnprintf.c	\
-	doscan.c	\
-	fscanf.c	\
-	fscanffuns.c	\
-	scanf.c		\
-	sscanf.c	\
-	sscanffuns.c	\
-	vfscanf.c	\
-	vscanf.c	\
-	vsscanf.c
+LIB=	gmp
 
+MPF_SRCS = \
+	init.c init2.c inits.c set.c			\
+	set_ui.c set_si.c set_str.c set_d.c		\
+	set_z.c iset.c iset_ui.c iset_si.c		\
+	iset_str.c iset_d.c clear.c clears.c		\
+	get_str.c dump.c size.c eq.c reldiff.c		\
+	sqrt.c random2.c inp_str.c out_str.c		\
+	add.c add_ui.c sub.c sub_ui.c ui_sub.c		\
+	mul.c mul_ui.c div.c div_ui.c			\
+	cmp.c cmp_d.c cmp_ui.c cmp_si.c			\
+	mul_2exp.c div_2exp.c abs.c neg.c		\
+	set_q.c get_d.c get_d_2exp.c set_dfl_prec.c	\
+	set_prc.c set_prc_raw.c get_dfl_prec.c		\
+	get_prc.c ui_div.c sqrt_ui.c			\
+	ceilfloor.c trunc.c pow_ui.c			\
+	urandomb.c swap.c				\
+	fits_sint.c fits_slong.c fits_sshort.c		\
+	fits_uint.c fits_ulong.c fits_ushort.c		\
+	get_si.c get_ui.c				\
+	int_p.c
+
+MPZ_SRCS = \
+	abs.c add.c add_ui.c				\
+	aorsmul.c aorsmul_i.c and.c array_init.c	\
+	bin_ui.c bin_uiui.c				\
+	cdiv_q.c cdiv_q_ui.c				\
+	cdiv_qr.c cdiv_qr_ui.c				\
+	cdiv_r.c cdiv_r_ui.c cdiv_ui.c			\
+	cfdiv_q_2exp.c cfdiv_r_2exp.c			\
+	clear.c clears.c clrbit.c			\
+	cmp.c cmp_d.c cmp_si.c cmp_ui.c			\
+	cmpabs.c cmpabs_d.c cmpabs_ui.c			\
+	com.c combit.c					\
+	cong.c cong_2exp.c cong_ui.c			\
+	divexact.c divegcd.c dive_ui.c			\
+	divis.c divis_ui.c divis_2exp.c dump.c		\
+	export.c fac_ui.c fdiv_q.c			\
+	fdiv_q_ui.c fdiv_qr.c fdiv_qr_ui.c		\
+	fdiv_r.c fdiv_r_ui.c				\
+	fdiv_ui.c fib_ui.c fib2_ui.c fits_sint.c	\
+	fits_slong.c fits_sshort.c fits_uint.c		\
+	fits_ulong.c fits_ushort.c gcd.c		\
+	gcd_ui.c gcdext.c get_d.c get_d_2exp.c		\
+	get_si.c get_str.c get_ui.c getlimbn.c		\
+	hamdist.c					\
+	import.c init.c init2.c inits.c 		\
+	inp_raw.c inp_str.c invert.c			\
+	ior.c iset.c iset_d.c iset_si.c			\
+	iset_str.c iset_ui.c jacobi.c kronsz.c		\
+	kronuz.c kronzs.c kronzu.c			\
+	lcm.c lcm_ui.c lucnum_ui.c lucnum2_ui.c		\
+	millerrabin.c mod.c mul.c mul_2exp.c		\
+	mul_si.c mul_ui.c				\
+	n_pow_ui.c neg.c nextprime.c			\
+	out_raw.c out_str.c perfpow.c perfsqr.c		\
+	popcount.c pow_ui.c powm.c powm_sec.c		\
+	powm_ui.c pprime_p.c random.c random2.c		\
+	realloc.c realloc2.c remove.c			\
+	root.c rootrem.c rrandomb.c scan0.c		\
+	scan1.c set.c set_d.c set_f.c			\
+	set_q.c set_si.c set_str.c set_ui.c		\
+	setbit.c					\
+	size.c sizeinbase.c sqrt.c			\
+	sqrtrem.c sub.c sub_ui.c swap.c			\
+	tdiv_ui.c tdiv_q.c tdiv_q_2exp.c		\
+	tdiv_q_ui.c tdiv_qr.c tdiv_qr_ui.c		\
+	tdiv_r.c tdiv_r_2exp.c tdiv_r_ui.c		\
+	tstbit.c ui_pow_ui.c ui_sub.c urandomb.c	\
+	urandomm.c xor.c
+
+MPQ_SRCS = \
+	abs.c aors.c					\
+	canonicalize.c clear.c clears.c			\
+	cmp.c cmp_si.c cmp_ui.c div.c			\
+	get_d.c get_den.c get_num.c get_str.c		\
+	init.c inits.c inp_str.c inv.c			\
+	md_2exp.c mul.c neg.c out_str.c			\
+	set.c set_den.c set_num.c			\
+	set_si.c set_str.c set_ui.c			\
+	equal.c set_z.c set_d.c				\
+	set_f.c swap.c
+
+#	addmul_2.c \
+#	addmul_3.c \
+#	addmul_4.c \
+#	addmul_5.c \
+#	addmul_6.c \
+#	addmul_7.c \
+#	addmul_8.c \
+#	and_n.c \
+#	andn_n.c \
+#	ior_n.c \
+#	iorn_n.c \
+#	mul_2.c \
+#	mul_3.c \
+#	mul_4.c \
+#	nand_n.c \
+#	nior_n.c \
+#	udiv_qrnnd.c \
+#	xor_n.c
+#	xnor_n.c
+# many asm
+#	sqr_diagonal.c \
+
+MPN_SRCS = \
+	add.c \
+	add_1.c \
+	add_n.c \
+	addmul_1.c \
+	cmp.c \
+	com.c \
+	copyd.c \
+	copyi.c \
+	dive_1.c \
+	diveby3.c \
+	divexact.c \
+	divis.c \
+	divrem.c \
+	divrem_1.c \
+	divrem_2.c \
+	sbpi1_bdiv_qr.c \
+	sbpi1_bdiv_q.c \
+	sbpi1_div_qr.c \
+	sbpi1_div_q.c \
+	sbpi1_divappr_q.c \
+	dcpi1_bdiv_qr.c \
+	dcpi1_bdiv_q.c \
+	dcpi1_div_qr.c \
+	dcpi1_div_q.c \
+	dcpi1_divappr_q.c \
+	dump.c \
+	fib2_ui.c \
+	gcd.c \
+	gcd_1.c \
+	gcdext.c \
+	get_d.c \
+	get_str.c \
+	hgcd2.c \
+	hgcd.c \
+	jacbase.c \
+	lshift.c \
+	matrix22_mul.c \
+	mod_1.c \
+	mod_34lsub1.c \
+	mode1o.c \
+	mod_1_1.c \
+	mod_1_2.c \
+	mod_1_3.c \
+	mod_1_4.c \
+	mul.c \
+	mul_1.c \
+	mul_fft.c \
+	mul_n.c \
+	mul_basecase.c \
+	nussbaumer_mul.c \
+	toom22_mul.c \
+	toom32_mul.c \
+	toom42_mul.c \
+	toom52_mul.c \
+	toom62_mul.c \
+	toom33_mul.c \
+	toom43_mul.c \
+	toom53_mul.c \
+	toom63_mul.c \
+	toom44_mul.c \
+	toom6h_mul.c \
+	toom6_sqr.c \
+	toom8h_mul.c \
+	toom8_sqr.c \
+	toom_couple_handling.c \
+	toom2_sqr.c \
+	toom3_sqr.c \
+	toom4_sqr.c \
+	toom_eval_dgr3_pm1.c \
+	toom_eval_dgr3_pm2.c \
+	toom_eval_pm1.c \
+	toom_eval_pm1.c \
+	toom_eval_pm2exp.c \
+	toom_eval_pm2rexp.c \
+	toom_interpolate_5pts.c \
+	toom_interpolate_6pts.c \
+	toom_interpolate_7pts.c \
+	toom_interpolate_8pts.c \
+	toom_interpolate_12pts.c \
+	toom_interpolate_16pts.c \
+	invertappr.c \
+	invert.c \
+	binvert.c \
+	mulmod_bnm1.c \
+	sqrmod_bnm1.c \
+	mullo_n.c \
+	mullo_basecase.c \
+	neg.c \
+	perfsqr.c \
+	pre_divrem_1.c \
+	pre_mod_1.c \
+	pow_1.c \
+	random.c \
+	random2.c \
+	rshift.c \
+	rootrem.c \
+	scan0.c \
+	scan1.c \
+	set_str.c \
+	sqr_basecase.c \
+	sqrtrem.c \
+	sub.c \
+	sub_1.c \
+	sub_n.c \
+	submul_1.c \
+	tdiv_qr.c \
+
+#	udiv_w_sdiv.c
+
+MPN_GENERIC_SRCS = \
+	popcount.c \
+	hamdist.c
+
+PRINTF_SRCS =						\
+	asprintf.c asprntffuns.c			\
+	doprnt.c doprntf.c doprnti.c			\
+	fprintf.c					\
+	obprintf.c obvprintf.c obprntffuns.c		\
+	printf.c printffuns.c				\
+	snprintf.c snprntffuns.c			\
+	sprintf.c sprintffuns.c				\
+	vasprintf.c vfprintf.c vprintf.c		\
+	vsnprintf.c vsprintf.c				\
+	repl-vsnprintf.c
+
+SCANF_SRCS =						\
+	doscan.c fscanf.c fscanffuns.c			\
+	scanf.c sscanf.c sscanffuns.c			\
+	vfscanf.c vscanf.c vsscanf.c
+
+SRCS+= 									\
+	assert.c compat.c errno.c extract-dbl.c invalid.c memory.c	\
+	mp_bpl.c mp_clz_tab.c mp_dv_tab.c mp_minv_tab.c mp_get_fns.c	\
+	mp_set_fns.c rand.c randclr.c randdef.c randiset.c randlc2s.c 	\
+	randlc2x.c randmt.c randmts.c rands.c randsd.c randsdui.c 	\
+	randbui.c randmui.c version.c nextprime.c
+
+.for _src in ${MPN_SRCS}
+COPTS.${_src}+=	-DOPERATION_${_src:R}
+.endfor
+SRCS+=	${MPN_SRCS}
+
+SRCS+=	tal-reent.c
+
+# these are generated
+SRCS+=	fib_table.c mp_bases.c
+
+
+# Build the files that may have multiple identical base names under
+# different names.
+# XXX	${MPBSD_SRCS:C/^/mpbsd /}
+.for _dir _srcfile in \
+	${MPF_SRCS:C/^/mpf /} \
+	${MPZ_SRCS:C/^/mpz /} \
+	${MPQ_SRCS:C/^/mpq /} \
+	${PRINTF_SRCS:C/^/printf /} \
+	${SCANF_SRCS:C/^/scanf /}
+${_dir}_${_srcfile}: #Makefile
+	echo '#include "'${_dir}/${_srcfile}'"' > ${.TARGET}
+
+SRCS+=		${_dir}_${_srcfile}
+CLEANFILES+=	${_dir}_${_srcfile}
+
+.endfor
+
+# Build the generic popcount/hamdist for now
+.for _srcfile in \
+	${MPN_GENERIC_SRCS}
+mpn_${_srcfile}: Makefile
+	echo '#include "mpn/generic/popham.c"' > ${.TARGET}
+
+COPTS.mpn_${_srcfile}+= -DOPERATION_${_srcfile:R}
+
+SRCS+=		mpn_${_srcfile}
+CLEANFILES+=	mpn_${_srcfile}
+.endfor
 
 INCS=		gmp.h
 INCSDIR=	/usr/include
 
-CPPFLAGS+=	-I${.CURDIR} -D__GMP_WITHIN_GMP
+CPPFLAGS+=	-I. -I${DIST} -I${.CURDIR}/arch/${MACHINE_ARCH} -D__GMP_WITHIN_GMP -DHAVE_CONFIG_H
 
 WITHOUT_MAN=	yes
 
@@ -507,6 +328,12 @@
 
 CLEANFILES+=	${DPSRCS} gen-fac_ui gen-fib gen-bases gen-psqr
 
+.sinclude "${.CURDIR}/arch/${MACHINE_ARCH}/Makefile.inc"
+
 .include <bsd.lib.mk>
 
-.PATH: ${.CURDIR}/../../dist ${.CURDIR}/../../dist/mpf
+.PATH:	${DIST} \
+	${DIST}/mpn/generic \
+	${.CURDIR}/arch/${MACHINE_ARCH} \
+	${DIST}/mpf \
+	${DIST}/mpz

Added files:

Index: src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/Makefile.inc
diff -u /dev/null src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/Makefile.inc:1.1
--- /dev/null	Thu Jun 23 12:09:30 2011
+++ src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/Makefile.inc	Thu Jun 23 12:09:30 2011
@@ -0,0 +1,86 @@
+#	$NetBSD: Makefile.inc,v 1.1 2011/06/23 12:09:30 mrg Exp $
+
+SRCS+= \
+	bdiv_q.c \
+	bdiv_qr.c \
+	div_q.c \
+	pow_1.c \
+	powm.c \
+	powm_sec.c \
+	powlo.c \
+	toom_eval_pm2.c \
+	toom_eval_pm2exp.c \
+	toom_eval_pm2rexp.c \
+	mu_bdiv_qr.c \
+	mu_div_qr.c \
+	sqr.c \
+	gcd_lehmer.c \
+	gcd_subdiv_step.c \
+	gcdext_lehmer.c \
+	gcdext_subdiv_step.c \
+	perfpow.c \
+	gcdext_1.c \
+	mu_bdiv_q.c \
+	mu_bdiv_qr.c \
+	mu_div_q.c \
+	mu_div_qr.c \
+	mu_divappr_q.c \
+	redc_1_sec.c \
+	redc_2.c \
+	redc_n.c \
+	subcnd_n.c \
+	trialdiv.c
+
+ASM_SRCS_LIST= \
+	add_n			mpn/x86_64/aors_n.asm \
+	addaddmul_1msb0		mpn/x86_64/addaddmul_1msb0.asm \
+	addlsh1_n		mpn/x86_64/aorrlsh1_n.asm \
+	addlsh2_n		mpn/x86_64/aorrlsh2_n.asm \
+	addlsh_n		mpn/x86_64/aorrlsh_n.asm \
+	addmul_2		mpn/x86_64/addmul_2.asm \
+	bdiv_q_1		mpn/x86_64/bdiv_q_1.asm \
+	bdiv_dbm1c		mpn/x86_64/bdiv_dbm1c.asm \
+	lshiftc			mpn/x86_64/lshiftc.asm \
+	mul_1			mpn/x86_64/mul_1.asm \
+	mul_2			mpn/x86_64/mul_2.asm \
+	rsblsh1_n		mpn/x86_64/aorrlsh1_n.asm \
+	rsblsh2_n		mpn/x86_64/aorrlsh2_n.asm \
+	rsblsh_n		mpn/x86_64/aorrlsh_n.asm \
+	rsh1add_n		mpn/x86_64/rsh1aors_n.asm \
+	rsh1sub_n		mpn/x86_64/rsh1aors_n.asm \
+	rshift			mpn/x86_64/rshift.asm \
+	sub_n			mpn/x86_64/aors_n.asm \
+	sublsh1_n		mpn/x86_64/sublsh1_n.asm \
+	invert_limb		mpn/x86_64/invert_limb.asm \
+	mode1o			mpn/x86_64/mode1o.asm \
+	and_n			mpn/x86_64/logops_n.asm \
+
+# XXX using redc_1.c
+#	redc_1			mpn/x86_64/redc_1.asm
+SRCS+=	redc_1.c
+
+gen-trialdivtab: gen-trialdivtab.c
+	${HOST_CC} -o ${.OBJDIR}/gen-trialdivtab ${.ALLSRC} -lm
+
+# XXX
+GMP_LIMB_BITS=64
+
+trialdiv.c: trialdivtab.h
+trialdivtab.h: gen-trialdivtab
+	${.OBJDIR}/gen-trialdivtab $(GMP_LIMB_BITS) 8000 > ${.OBJDIR}/trialdivtab.h
+
+CLEANFILES+=	trialdivtab.h
+
+# XXX stuff looks for "../config.m4"
+dummy:
+	mkdir dummy
+${.OBJDIR}/config.m4: ${.CURDIR}/arch/${MACHINE_ARCH}/config.m4
+	cp ${.CURDIR}/arch/${MACHINE_ARCH}/config.m4 ${.TARGET}
+
+.for _build _src in ${ASM_SRCS_LIST}
+${_build}.s: Makefile dummy ${.OBJDIR}/config.m4
+	${TOOL_M4} -DCONFIG_TOP_SRCDIR=${DIST} -I${.CURDIR} -I${.OBJDIR}/dummy -I${DIST}/ -I${DIST}/mpn -DOPERATION_${.TARGET:R} ${DIST}/${_src} > ${.TARGET}
+
+SRCS+=	${_build}.s
+
+.endfor
Index: src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/config.m4
diff -u /dev/null src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/config.m4:1.1
--- /dev/null	Thu Jun 23 12:09:30 2011
+++ src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/config.m4	Thu Jun 23 12:09:30 2011
@@ -0,0 +1,35 @@
+dnl config.m4.  Generated automatically by configure.
+changequote(<,>)
+ifdef(<__CONFIG_M4_INCLUDED__>,,<
+define(<WANT_ASSERT>,0)
+define(<WANT_PROFILING>,<`no'>)
+define(<M4WRAP_SPURIOUS>,<no>)
+define(<TEXT>, <.text>)
+define(<DATA>, <.data>)
+define(<LABEL_SUFFIX>, <:>)
+define(<GLOBL>, <.globl>)
+define(<GLOBL_ATTR>, <>)
+define(<GSYM_PREFIX>, <>)
+define(<RODATA>, <	.section	.rodata>)
+define(<TYPE>, <.type	$1,@$2>)
+define(<SIZE>, <.size	$1,$2>)
+define(<LSYM_PREFIX>, <.L>)
+define(<W32>, <.long>)
+define(<ALIGN_LOGARITHMIC>,<no>)
+define(<ALIGN_FILL_0x90>,<yes>)
+define(<SQR_TOOM2_THRESHOLD>,<34>)
+define(<SIZEOF_UNSIGNED>,<4>)
+define(<GMP_LIMB_BITS>,64)
+define(<GMP_NAIL_BITS>,0)
+define(<GMP_NUMB_BITS>,eval(GMP_LIMB_BITS-GMP_NAIL_BITS))
+>)
+changequote(`,')
+ifdef(`__CONFIG_M4_INCLUDED__',,`
+include(CONFIG_TOP_SRCDIR`/mpn/asm-defs.m4')
+include_mpn(`x86_64/x86_64-defs.m4')
+define_not_for_expansion(`HAVE_HOST_CPU_x86_64')
+define_not_for_expansion(`HAVE_ABI_64')
+define_not_for_expansion(`HAVE_LIMB_LITTLE_ENDIAN')
+define_not_for_expansion(`HAVE_DOUBLE_IEEE_LITTLE_ENDIAN')
+')
+define(`__CONFIG_M4_INCLUDED__')
Index: src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/gmp-mparam.h
diff -u /dev/null src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/gmp-mparam.h:1.1
--- /dev/null	Thu Jun 23 12:09:30 2011
+++ src/external/lgpl3/gmp/lib/libgmp/arch/x86_64/gmp-mparam.h	Thu Jun 23 12:09:30 2011
@@ -0,0 +1,197 @@
+/* AMD K8 gmp-mparam.h -- Compiler/machine parameter header file.
+
+Copyright 1991, 1993, 1994, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+2008, 2009, 2010 Free Software Foundation, Inc.
+
+This file is part of the GNU MP Library.
+
+The GNU MP Library is free software; you can redistribute it and/or modify
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 3 of the License, or (at your
+option) any later version.
+
+The GNU MP Library is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public
+License for more details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with the GNU MP Library.  If not, see http://www.gnu.org/licenses/.  */
+
+#define GMP_LIMB_BITS 64
+#define BYTES_PER_MP_LIMB 8
+
+
+#define MOD_1_NORM_THRESHOLD                 0  /* always */
+#define MOD_1_UNNORM_THRESHOLD               0  /* always */
+#define MOD_1N_TO_MOD_1_1_THRESHOLD          8
+#define MOD_1U_TO_MOD_1_1_THRESHOLD          6
+#define MOD_1_1_TO_MOD_1_2_THRESHOLD         0
+#define MOD_1_2_TO_MOD_1_4_THRESHOLD        11
+#define PREINV_MOD_1_TO_MOD_1_THRESHOLD     14
+#define USE_PREINV_DIVREM_1                  1  /* native */
+#define DIVEXACT_1_THRESHOLD                 0  /* always (native) */
+#define BMOD_1_TO_MOD_1_THRESHOLD           19
+
+#define MUL_TOOM22_THRESHOLD                28
+#define MUL_TOOM33_THRESHOLD                81
+#define MUL_TOOM44_THRESHOLD               120
+#define MUL_TOOM6H_THRESHOLD               466
+#define MUL_TOOM8H_THRESHOLD               478
+
+#define MUL_TOOM32_TO_TOOM43_THRESHOLD      97
+#define MUL_TOOM32_TO_TOOM53_THRESHOLD     160
+#define MUL_TOOM42_TO_TOOM53_THRESHOLD     160
+#define MUL_TOOM42_TO_TOOM63_THRESHOLD     211
+
+#define SQR_BASECASE_THRESHOLD               0  /* always (native) */
+#define SQR_TOOM2_THRESHOLD                 34
+#define SQR_TOOM3_THRESHOLD                117
+#define SQR_TOOM4_THRESHOLD                512
+#define SQR_TOOM6_THRESHOLD                686
+#define SQR_TOOM8_THRESHOLD                686
+
+#define MULMOD_BNM1_THRESHOLD               17
+#define SQRMOD_BNM1_THRESHOLD               17
+
+#define MUL_FFT_MODF_THRESHOLD             570  /* k = 5 */
+#define MUL_FFT_TABLE3                                      \
+  { {    570, 5}, {     21, 6}, {     11, 5}, {     23, 6}, \
+    {     25, 7}, {     13, 6}, {     27, 7}, {     15, 6}, \
+    {     31, 7}, {     25, 8}, {     13, 7}, {     29, 8}, \
+    {     15, 7}, {     31, 8}, {     17, 7}, {     35, 8}, \
+    {     19, 7}, {     39, 8}, {     21, 7}, {     43, 8}, \
+    {     23, 7}, {     47, 8}, {     25, 7}, {     51, 8}, \
+    {     29, 9}, {     15, 8}, {     37, 9}, {     19, 8}, \
+    {     43, 9}, {     23, 8}, {     51, 9}, {     27, 8}, \
+    {     55,10}, {     15, 9}, {     43,10}, {     23, 9}, \
+    {     55,10}, {     31, 9}, {     63, 5}, {   1023, 4}, \
+    {   2431, 5}, {   1279, 6}, {    671, 7}, {    367, 8}, \
+    {    189, 9}, {     95, 8}, {    195, 9}, {    111,11}, \
+    {     31, 9}, {    131,10}, {     71, 9}, {    155,10}, \
+    {     79, 9}, {    159,10}, {     87,11}, {     47,10}, \
+    {    111,11}, {     63,10}, {    135,11}, {     79,10}, \
+    {    167,11}, {     95,10}, {    191,11}, {    111,12}, \
+    {     63,11}, {    143,10}, {    287,11}, {    159,10}, \
+    {    319,11}, {    175,12}, {     95,11}, {    207,13}, \
+    {     63,12}, {    127,11}, {    255,10}, {    543,11}, \
+    {    287,12}, {    159,11}, {    319,10}, {    639,11}, \
+    {    335,10}, {    671,11}, {    351,10}, {    703,12}, \
+    {    191,11}, {    383,10}, {    767,11}, {    415,12}, \
+    {    223,13}, {    127,12}, {    255,11}, {    543,12}, \
+    {    287,11}, {    575,10}, {   1151,11}, {    607,12}, \
+    {    319,11}, {    639,10}, {   1279,11}, {    671,12}, \
+    {    351,11}, {    703,13}, {    191,12}, {    383,11}, \
+    {    767,12}, {    415,11}, {    831,12}, {    447,14}, \
+    {    127,13}, {    255,12}, {    543,11}, {   1087,12}, \
+    {    607,11}, {   1215,13}, {    319,12}, {    671,11}, \
+    {   1343,12}, {    735,13}, {    383,12}, {    767,11}, \
+    {   1535,12}, {    799,11}, {   1599,12}, {    831,13}, \
+    {    447,12}, {    895,11}, {   1791,12}, {    959,14}, \
+    {    255,13}, {    511,12}, {   1087,13}, {    575,12}, \
+    {   1215,13}, {    639,12}, {   1343,13}, {    703,12}, \
+    {   1407,14}, {    383,13}, {    767,12}, {   1599,13}, \
+    {    831,12}, {   1663,13}, {    895,12}, {   1791,13}, \
+    {    959,15}, {    255,14}, {    511,13}, {   1087,12}, \
+    {   2175,13}, {   1215,14}, {    639,13}, {   1471,14}, \
+    {    767,13}, {   1663,14}, {    895,13}, {   1855,15}, \
+    {    511,14}, {   1023,13}, {   2175,14}, {   1151,13}, \
+    {   2431,14}, {   1279,13}, {   2687,14}, {   1407,15}, \
+    {    767,14}, {   1535,13}, {   3071,14}, {   1791,16}, \
+    {    511,15}, {   1023,14}, {   2431,15}, {   1279,14}, \
+    {   2815,15}, {   1535,14}, {   3199,15}, {   1791,14}, \
+    {   3583,16}, {  65536,17}, { 131072,18}, { 262144,19}, \
+    { 524288,20}, {1048576,21}, {2097152,22}, {4194304,23}, \
+    {8388608,24} }
+#define MUL_FFT_TABLE3_SIZE 185
+#define MUL_FFT_THRESHOLD                 7552
+
+#define SQR_FFT_MODF_THRESHOLD             460  /* k = 5 */
+#define SQR_FFT_TABLE3                                      \
+  { {    460, 5}, {     21, 6}, {     11, 5}, {     23, 6}, \
+    {     12, 5}, {     25, 6}, {     27, 7}, {     14, 6}, \
+    {     29, 7}, {     15, 6}, {     31, 7}, {     29, 8}, \
+    {     15, 7}, {     32, 8}, {     17, 7}, {     35, 8}, \
+    {     19, 7}, {     39, 8}, {     21, 7}, {     43, 8}, \
+    {     25, 7}, {     51, 8}, {     29, 9}, {     15, 8}, \
+    {     35, 9}, {     19, 8}, {     43, 9}, {     23, 8}, \
+    {     51, 9}, {     27, 8}, {     55,10}, {     15, 9}, \
+    {     31, 8}, {     63, 9}, {     43,10}, {     23, 9}, \
+    {     55,11}, {     15,10}, {     31, 9}, {     71,10}, \
+    {     39, 9}, {     83,10}, {     47, 6}, {    767, 4}, \
+    {   3263, 5}, {   1727, 4}, {   3455, 5}, {   1791, 6}, \
+    {    927, 7}, {    479, 6}, {    959, 7}, {    511, 8}, \
+    {    271, 9}, {    147,10}, {     87,11}, {     47,10}, \
+    {     95,12}, {     31,11}, {     63,10}, {    135,11}, \
+    {     79,10}, {    167,11}, {     95,10}, {    191,11}, \
+    {    111,12}, {     63,11}, {    127,10}, {    255,11}, \
+    {    143,10}, {    287, 9}, {    575,10}, {    303,11}, \
+    {    159,12}, {     95,11}, {    191,10}, {    383, 9}, \
+    {    767,10}, {    399,11}, {    207,13}, {     63,12}, \
+    {    127,11}, {    255,10}, {    511,11}, {    271,10}, \
+    {    543,11}, {    287,10}, {    575,12}, {    159,11}, \
+    {    319,10}, {    639,11}, {    335,10}, {    671,11}, \
+    {    351,10}, {    703,12}, {    191,11}, {    383,10}, \
+    {    767,11}, {    415,10}, {    831,11}, {    447,13}, \
+    {    127,12}, {    255,11}, {    511,10}, {   1023,11}, \
+    {    543,12}, {    287,11}, {    575,10}, {   1151,11}, \
+    {    607,10}, {   1215,12}, {    319,11}, {    639,10}, \
+    {   1279,11}, {    671,12}, {    351,11}, {    703,13}, \
+    {    191,12}, {    383,11}, {    767,12}, {    415,11}, \
+    {    831,12}, {    447,14}, {    127,13}, {    255,12}, \
+    {    511,11}, {   1023,12}, {    543,11}, {   1087,12}, \
+    {    575,11}, {   1151,12}, {    607,13}, {    319,12}, \
+    {    639,11}, {   1279,12}, {    671,11}, {   1343,12}, \
+    {    703,11}, {   1407,12}, {    735,13}, {    383,12}, \
+    {    767,11}, {   1535,12}, {    799,11}, {   1599,12}, \
+    {    831,13}, {    447,12}, {    959,14}, {    255,13}, \
+    {    511,12}, {   1087,13}, {    575,12}, {   1215,13}, \
+    {    639,12}, {   1343,13}, {    703,12}, {   1407,14}, \
+    {    383,13}, {    767,12}, {   1599,13}, {    831,12}, \
+    {   1663,13}, {    895,12}, {   1791,13}, {    959,15}, \
+    {    255,14}, {    511,13}, {   1087,12}, {   2175,13}, \
+    {   1215,14}, {    639,13}, {   1471,14}, {    767,13}, \
+    {   1663,14}, {    895,13}, {   1855,15}, {    511,14}, \
+    {   1023,13}, {   2175,14}, {   1151,13}, {   2303,14}, \
+    {   1279,13}, {   2559,14}, {   1407,15}, {    767,14}, \
+    {   1535,13}, {   3071,14}, {   1791,16}, {    511,15}, \
+    {   1023,14}, {   2303,15}, {   1279,14}, {   2687,15}, \
+    {   1535,14}, {   3199,15}, {   1791,16}, {  65536,17}, \
+    { 131072,18}, { 262144,19}, { 524288,20}, {1048576,21}, \
+    {2097152,22}, {4194304,23}, {8388608,24} }
+#define SQR_FFT_TABLE3_SIZE 203
+#define SQR_FFT_THRESHOLD                 5248
+
+#define MULLO_BASECASE_THRESHOLD             9
+#define MULLO_DC_THRESHOLD                  29
+#define MULLO_MUL_N_THRESHOLD            14709
+
+#define DC_DIV_QR_THRESHOLD                 56
+#define DC_DIVAPPR_Q_THRESHOLD             270
+#define DC_BDIV_QR_THRESHOLD                52
+#define DC_BDIV_Q_THRESHOLD                152
+
+#define INV_MULMOD_BNM1_THRESHOLD          174
+#define INV_NEWTON_THRESHOLD               252
+#define INV_APPR_THRESHOLD                 250
+
+#define BINV_NEWTON_THRESHOLD              345
+#define REDC_1_TO_REDC_2_THRESHOLD          50
+#define REDC_2_TO_REDC_N_THRESHOLD          79
+
+#define MU_DIV_QR_THRESHOLD               1787
+#define MU_DIVAPPR_Q_THRESHOLD            1787
+#define MUPI_DIV_QR_THRESHOLD              106
+#define MU_BDIV_QR_THRESHOLD              1620
+#define MU_BDIV_Q_THRESHOLD               1787
+
+#define MATRIX22_STRASSEN_THRESHOLD         17
+#define HGCD_THRESHOLD                     139
+#define GCD_DC_THRESHOLD                   501
+#define GCDEXT_DC_THRESHOLD                474
+#define JACOBI_BASE_METHOD                   1
+
+#define GET_STR_DC_THRESHOLD                17
+#define GET_STR_PRECOMPUTE_THRESHOLD        23
+#define SET_STR_DC_THRESHOLD               266
+#define SET_STR_PRECOMPUTE_THRESHOLD      1648

Reply via email to