head	1.242;
access;
symbols
	netbsd-11-0-RC4:1.242
	netbsd-11-0-RC3:1.242
	netbsd-11-0-RC2:1.242
	netbsd-11-0-RC1:1.242
	perseant-exfatfs-base-20250801:1.242
	netbsd-11:1.242.0.2
	netbsd-11-base:1.242
	netbsd-10-1-RELEASE:1.218.2.4
	perseant-exfatfs-base-20240630:1.238
	perseant-exfatfs:1.238.0.2
	perseant-exfatfs-base:1.238
	netbsd-8-3-RELEASE:1.191.2.3
	netbsd-9-4-RELEASE:1.210.2.1
	netbsd-10-0-RELEASE:1.218.2.4
	netbsd-10-0-RC6:1.218.2.4
	netbsd-10-0-RC5:1.218.2.4
	netbsd-10-0-RC4:1.218.2.4
	netbsd-10-0-RC3:1.218.2.4
	netbsd-10-0-RC2:1.218.2.3
	netbsd-10-0-RC1:1.218.2.2
	netbsd-10:1.218.0.2
	netbsd-10-base:1.218
	netbsd-9-3-RELEASE:1.210
	cjep_sun2x-base1:1.213
	cjep_sun2x:1.213.0.4
	cjep_sun2x-base:1.213
	cjep_staticlib_x-base1:1.213
	netbsd-9-2-RELEASE:1.210
	cjep_staticlib_x:1.213.0.2
	cjep_staticlib_x-base:1.213
	netbsd-9-1-RELEASE:1.210
	phil-wifi-20200421:1.212
	phil-wifi-20200411:1.212
	is-mlppp:1.212.0.2
	is-mlppp-base:1.212
	phil-wifi-20200406:1.212
	netbsd-8-2-RELEASE:1.191.2.3
	netbsd-9-0-RELEASE:1.210
	netbsd-9-0-RC2:1.210
	netbsd-9-0-RC1:1.210
	phil-wifi-20191119:1.212
	netbsd-9:1.210.0.2
	netbsd-9-base:1.210
	phil-wifi-20190609:1.210
	netbsd-8-1-RELEASE:1.191.2.3
	netbsd-8-1-RC1:1.191.2.3
	pgoyette-compat-merge-20190127:1.203.2.2
	pgoyette-compat-20190127:1.205
	pgoyette-compat-20190118:1.205
	pgoyette-compat-1226:1.205
	pgoyette-compat-1126:1.205
	pgoyette-compat-1020:1.204
	pgoyette-compat-0930:1.204
	pgoyette-compat-0906:1.204
	netbsd-7-2-RELEASE:1.164.2.4
	pgoyette-compat-0728:1.204
	netbsd-8-0-RELEASE:1.191.2.3
	phil-wifi:1.204.0.2
	phil-wifi-base:1.204
	pgoyette-compat-0625:1.204
	netbsd-8-0-RC2:1.191.2.3
	pgoyette-compat-0521:1.203
	pgoyette-compat-0502:1.203
	pgoyette-compat-0422:1.203
	netbsd-8-0-RC1:1.191.2.3
	pgoyette-compat-0415:1.203
	pgoyette-compat-0407:1.203
	pgoyette-compat-0330:1.203
	pgoyette-compat-0322:1.203
	pgoyette-compat-0315:1.203
	netbsd-7-1-2-RELEASE:1.164.2.4
	pgoyette-compat:1.203.0.2
	pgoyette-compat-base:1.203
	netbsd-7-1-1-RELEASE:1.164.2.4
	matt-nb8-mediatek:1.191.2.3.0.2
	matt-nb8-mediatek-base:1.191.2.3
	perseant-stdc-iso10646:1.191.0.4
	perseant-stdc-iso10646-base:1.191
	netbsd-8:1.191.0.2
	netbsd-8-base:1.191
	prg-localcount2-base3:1.191
	prg-localcount2-base2:1.191
	prg-localcount2-base1:1.190
	prg-localcount2:1.190.0.2
	prg-localcount2-base:1.190
	pgoyette-localcount-20170426:1.190
	bouyer-socketcan-base1:1.190
	pgoyette-localcount-20170320:1.188
	netbsd-7-1:1.164.2.4.0.2
	netbsd-7-1-RELEASE:1.164.2.4
	netbsd-7-1-RC2:1.164.2.4
	netbsd-7-nhusb-base-20170116:1.164.2.4
	bouyer-socketcan:1.187.0.2
	bouyer-socketcan-base:1.187
	pgoyette-localcount-20170107:1.187
	netbsd-7-1-RC1:1.164.2.4
	pgoyette-localcount-20161104:1.186
	netbsd-7-0-2-RELEASE:1.164.2.2
	localcount-20160914:1.185
	netbsd-7-nhusb:1.164.2.3.0.2
	netbsd-7-nhusb-base:1.164.2.3
	pgoyette-localcount-20160806:1.177
	pgoyette-localcount-20160726:1.177
	pgoyette-localcount:1.177.0.2
	pgoyette-localcount-base:1.177
	netbsd-7-0-1-RELEASE:1.164.2.2
	netbsd-7-0:1.164.2.2.0.2
	netbsd-7-0-RELEASE:1.164.2.2
	netbsd-7-0-RC3:1.164.2.2
	netbsd-7-0-RC2:1.164.2.2
	netbsd-7-0-RC1:1.164.2.2
	netbsd-5-2-3-RELEASE:1.88.4.1
	netbsd-5-1-5-RELEASE:1.88.4.1
	netbsd-6-0-6-RELEASE:1.120.4.1
	netbsd-6-1-5-RELEASE:1.120.4.1
	netbsd-7:1.164.0.2
	netbsd-7-base:1.164
	yamt-pagecache-base9:1.158
	yamt-pagecache-tag8:1.120.2.3
	netbsd-6-1-4-RELEASE:1.120.4.1
	netbsd-6-0-5-RELEASE:1.120.4.1
	tls-earlyentropy:1.156.0.2
	tls-earlyentropy-base:1.160
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.156
	riastradh-drm2-base3:1.155
	netbsd-6-1-3-RELEASE:1.120.4.1
	netbsd-6-0-4-RELEASE:1.120.4.1
	netbsd-5-2-2-RELEASE:1.88.4.1
	netbsd-5-1-4-RELEASE:1.88.4.1
	netbsd-6-1-2-RELEASE:1.120.4.1
	netbsd-6-0-3-RELEASE:1.120.4.1
	netbsd-5-2-1-RELEASE:1.88.4.1
	netbsd-5-1-3-RELEASE:1.88.4.1
	netbsd-6-1-1-RELEASE:1.120.4.1
	riastradh-drm2-base2:1.139
	riastradh-drm2-base1:1.139
	riastradh-drm2:1.139.0.2
	riastradh-drm2-base:1.139
	netbsd-6-1:1.120.4.1.0.6
	netbsd-6-0-2-RELEASE:1.120.4.1
	netbsd-6-1-RELEASE:1.120.4.1
	netbsd-6-1-RC4:1.120.4.1
	netbsd-6-1-RC3:1.120.4.1
	agc-symver:1.133.0.4
	agc-symver-base:1.133
	netbsd-6-1-RC2:1.120.4.1
	netbsd-6-1-RC1:1.120.4.1
	yamt-pagecache-base8:1.125
	netbsd-5-2:1.88.4.1.0.6
	netbsd-6-0-1-RELEASE:1.120.4.1
	yamt-pagecache-base7:1.125
	netbsd-5-2-RELEASE:1.88.4.1
	netbsd-5-2-RC1:1.88.4.1
	matt-nb6-plus-nbase:1.120.4.1
	yamt-pagecache-base6:1.125
	netbsd-6-0:1.120.4.1.0.4
	netbsd-6-0-RELEASE:1.120.4.1
	netbsd-6-0-RC2:1.120.4.1
	tls-maxphys:1.125.0.2
	tls-maxphys-base:1.164
	matt-nb6-plus:1.120.4.1.0.2
	matt-nb6-plus-base:1.120.4.1
	netbsd-6-0-RC1:1.120.4.1
	yamt-pagecache-base5:1.124
	yamt-pagecache-base4:1.123
	netbsd-6:1.120.0.4
	netbsd-6-base:1.120
	netbsd-5-1-2-RELEASE:1.88.4.1
	netbsd-5-1-1-RELEASE:1.88.4.1
	yamt-pagecache-base3:1.120
	yamt-pagecache-base2:1.120
	yamt-pagecache:1.120.0.2
	yamt-pagecache-base:1.120
	cherry-xenmp:1.110.0.2
	cherry-xenmp-base:1.110
	bouyer-quota2-nbase:1.104
	bouyer-quota2:1.101.0.2
	bouyer-quota2-base:1.104
	matt-mips64-premerge-20101231:1.99
	matt-nb5-mips64-premerge-20101231:1.88.8.1
	matt-nb5-pq3:1.88.4.1.0.4
	matt-nb5-pq3-base:1.88.4.1
	netbsd-5-1:1.88.4.1.0.2
	netbsd-5-1-RELEASE:1.88.4.1
	netbsd-1-1:1.27.0.2
	netbsd-5-1-RC4:1.88.4.1
	matt-nb5-mips64-k15:1.88.8.1
	netbsd-5-1-RC3:1.88.4.1
	netbsd-5-1-RC2:1.88.4.1
	netbsd-5-1-RC1:1.88.4.1
	netbsd-5-0-2-RELEASE:1.88
	matt-nb5-mips64-premerge-20091211:1.88
	matt-premerge-20091211:1.91
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.88
	matt-nb4-mips64-k7-u2a-k9b:1.88
	matt-nb5-mips64-u1-k1-k5:1.88
	matt-nb5-mips64:1.88.0.8
	netbsd-5-0-1-RELEASE:1.88
	jym-xensuspend-nbase:1.89
	netbsd-5-0:1.88.0.6
	netbsd-5-0-RELEASE:1.88
	netbsd-5-0-RC4:1.88
	netbsd-5-0-RC3:1.88
	netbsd-5-0-RC2:1.88
	jym-xensuspend:1.89.0.2
	jym-xensuspend-base:1.89
	netbsd-5-0-RC1:1.88
	netbsd-5:1.88.0.4
	netbsd-5-base:1.88
	matt-mips64-base2:1.88
	matt-mips64:1.78.0.4
	netbsd-4-0-1-RELEASE:1.77
	wrstuden-revivesa-base-3:1.88
	wrstuden-revivesa-base-2:1.88
	wrstuden-fixsa-newbase:1.77
	wrstuden-revivesa-base-1:1.86
	yamt-pf42-base4:1.86
	yamt-pf42-base3:1.85
	hpcarm-cleanup-nbase:1.85
	yamt-pf42-baseX:1.82
	yamt-pf42-base2:1.85
	wrstuden-revivesa:1.85.0.2
	wrstuden-revivesa-base:1.86
	yamt-pf42:1.82.0.4
	yamt-pf42-base:1.82
	keiichi-mipv6:1.82.0.2
	keiichi-mipv6-base:1.82
	matt-armv6-nbase:1.82
	matt-armv6-prevmlocking:1.79
	wrstuden-fixsa-base-1:1.77
	netbsd-4-0:1.77.0.8
	netbsd-4-0-RELEASE:1.77
	cube-autoconf:1.79.0.4
	cube-autoconf-base:1.79
	netbsd-4-0-RC5:1.77
	netbsd-4-0-RC4:1.77
	netbsd-4-0-RC3:1.77
	netbsd-4-0-RC2:1.77
	netbsd-4-0-RC1:1.77
	matt-armv6:1.79.0.2
	matt-armv6-base:1.79
	matt-mips64-base:1.78
	hpcarm-cleanup:1.78.0.2
	hpcarm-cleanup-base:1.82
	netbsd-3-1-1-RELEASE:1.65.2.1
	netbsd-3-0-3-RELEASE:1.65
	wrstuden-fixsa:1.77.0.6
	wrstuden-fixsa-base:1.77
	abandoned-netbsd-4-base:1.77
	abandoned-netbsd-4:1.77.0.2
	netbsd-3-1:1.65.2.1.0.2
	netbsd-3-1-RELEASE:1.65.2.1
	netbsd-3-0-2-RELEASE:1.65
	netbsd-3-1-RC4:1.65.2.1
	netbsd-3-1-RC3:1.65.2.1
	netbsd-3-1-RC2:1.65.2.1
	netbsd-3-1-RC1:1.65.2.1
	netbsd-4:1.77.0.4
	netbsd-4-base:1.77
	netbsd-3-0-1-RELEASE:1.65
	netbsd-3-0:1.65.0.4
	netbsd-3-0-RELEASE:1.65
	netbsd-3-0-RC6:1.65
	netbsd-3-0-RC5:1.65
	netbsd-3-0-RC4:1.65
	netbsd-3-0-RC3:1.65
	netbsd-3-0-RC2:1.65
	netbsd-3-0-RC1:1.65
	netbsd-2-0-3-RELEASE:1.59.2.1
	netbsd-2-1:1.59.2.1.0.4
	netbsd-2-1-RELEASE:1.59.2.1
	netbsd-2-1-RC6:1.59.2.1
	netbsd-2-1-RC5:1.59.2.1
	netbsd-2-1-RC4:1.59.2.1
	netbsd-2-1-RC3:1.59.2.1
	netbsd-2-1-RC2:1.59.2.1
	netbsd-2-1-RC1:1.59.2.1
	netbsd-2-0-2-RELEASE:1.59.2.1
	netbsd-3:1.65.0.2
	netbsd-3-base:1.65
	netbsd-2-0-1-RELEASE:1.59.2.1
	netbsd-2:1.59.2.1.0.2
	netbsd-2-base:1.59.2.1
	netbsd-2-0-RELEASE:1.59.2.1
	netbsd-2-0-RC5:1.59.2.1
	netbsd-2-0-RC4:1.59.2.1
	netbsd-2-0-RC3:1.59.2.1
	netbsd-2-0-RC2:1.59.2.1
	netbsd-2-0-RC1:1.59.2.1
	netbsd-2-0:1.59.0.2
	netbsd-2-0-base:1.59
	netbsd-1-6-PATCH002-RELEASE:1.58.2.1
	netbsd-1-6-PATCH002:1.58.2.1
	netbsd-1-6-PATCH002-RC4:1.58.2.1
	netbsd-1-6-PATCH002-RC3:1.58.2.1
	netbsd-1-6-PATCH002-RC2:1.58.2.1
	netbsd-1-6-PATCH002-RC1:1.58.2.1
	netbsd-1-6-PATCH001:1.58.2.1
	netbsd-1-6-PATCH001-RELEASE:1.58.2.1
	netbsd-1-6-PATCH001-RC3:1.58.2.1
	netbsd-1-6-PATCH001-RC2:1.58.2.1
	netbsd-1-6-PATCH001-RC1:1.58.2.1
	fvdl_fs64_base:1.59
	netbsd-1-6-RELEASE:1.58.2.1
	netbsd-1-6-RC3:1.58.2.1
	netbsd-1-6-RC2:1.58.2.1
	netbsd-1-6-RC1:1.58.2.1
	netbsd-1-6:1.58.0.2
	netbsd-1-6-base:1.58
	netbsd-1-5-PATCH003:1.52.4.1
	netbsd-1-5-PATCH002:1.52.4.1
	netbsd-1-5-PATCH001:1.52.4.1
	netbsd-1-5-RELEASE:1.52.4.1
	netbsd-1-5-BETA2:1.52.4.1
	netbsd-1-5-BETA:1.52.4.1
	netbsd-1-4-PATCH003:1.44
	netbsd-1-5-ALPHA2:1.52
	netbsd-1-5:1.52.0.4
	netbsd-1-5-base:1.52
	minoura-xpg4dl:1.52.0.2
	minoura-xpg4dl-base:1.52
	netbsd-1-4-PATCH002:1.44
	wrstuden-devbsize-19991221:1.52
	wrstuden-devbsize:1.51.0.4
	wrstuden-devbsize-base:1.52
	comdex-fall-1999:1.51.0.2
	comdex-fall-1999-base:1.51
	netbsd-1-4-PATCH001:1.44
	netbsd-1-4-RELEASE:1.44
	netbsd-1-4:1.44.0.2
	netbsd-1-4-base:1.44
	netbsd-1-3-PATCH003:1.36.2.1
	netbsd-1-3-PATCH003-CANDIDATE2:1.36.2.1
	netbsd-1-3-PATCH003-CANDIDATE1:1.36.2.1
	netbsd-1-3-PATCH003-CANDIDATE0:1.36.2.1
	netbsd-1-3-PATCH002:1.36.2.1
	netbsd-1-3-PATCH001:1.36.2.1
	netbsd-1-3-RELEASE:1.36.2.1
	netbsd-1-3-BETA:1.36.2.1
	netbsd-1-3:1.36.0.2
	netbsd-1-3-base:1.36
	netbsd-1-2-PATCH001:1.28
	netbsd-1-2-RELEASE:1.28
	netbsd-1-2-BETA:1.28
	netbsd-1-2:1.28.0.4
	netbsd-1-2-base:1.28
	netbsd-1-1-PATCH001:1.27
	netbsd-1-1-RELEASE:1.27
	netbsd-1-1-base:1.26
	netbsd-1-0-PATCH06:1.21
	netbsd-1-0-PATCH05:1.21
	netbsd-1-0-PATCH04:1.21
	netbsd-1-0-PATCH03:1.21
	netbsd-1-0-PATCH02:1.21
	netbsd-1-0-PATCH1:1.21
	netbsd-1-0-PATCH0:1.21
	netbsd-1-0-RELEASE:1.21
	netbsd-1-0:1.21.0.2
	netbsd-1-0-base:1.21
	netbsd-0-9-RELEASE:1.1.1.1
	netbsd-0-9-BETA:1.1.1.1
	netbsd-0-9-ALPHA2:1.1.1.1
	netbsd-0-9-ALPHA:1.1.1.1
	netbsd-0-9:1.1.1.1.0.2
	netbsd-0-9-base:1.1.1.1
	netbsd-0-8:1.1.1.1
	netbsd-alpha-1:1.1.1.1
	patchkit-0-2-2:1.1.1.1
	WFJ-386bsd-01:1.1.1.1
	WFJ-920714:1.1.1;
locks; strict;
comment	@# @;


1.242
date	2025.04.06.23.03.06;	author rillig;	state Exp;
branches;
next	1.241;
commitid	19bgwc0qOk34R2QF;

1.241
date	2025.02.15.09.00.38;	author tsutsui;	state Exp;
branches;
next	1.240;
commitid	Kx2g20EYDfGFNxJF;

1.240
date	2024.10.29.01.34.18;	author nat;	state Exp;
branches;
next	1.239;
commitid	nChWG2WXKgMlQuvF;

1.239
date	2024.07.03.06.26.03;	author mrg;	state Exp;
branches;
next	1.238;
commitid	o3mQziwRYqiufmgF;

1.238
date	2024.06.10.12.49.29;	author riastradh;	state Exp;
branches
	1.238.2.1;
next	1.237;
commitid	fHxofl0TbbE97rdF;

1.237
date	2024.06.10.12.47.40;	author riastradh;	state Exp;
branches;
next	1.236;
commitid	Q9vugZFGdFTw6rdF;

1.236
date	2024.06.09.14.10.05;	author riastradh;	state Exp;
branches;
next	1.235;
commitid	Ew4Inig6fNEMAjdF;

1.235
date	2024.05.14.14.34.35;	author riastradh;	state Exp;
branches;
next	1.234;
commitid	YIM7R0pAAnrZyY9F;

1.234
date	2024.05.09.14.42.09;	author riastradh;	state Exp;
branches;
next	1.233;
commitid	WPBqdjzCxGrzLk9F;

1.233
date	2024.05.09.00.04.23;	author riastradh;	state Exp;
branches;
next	1.232;
commitid	OQhPFxIEqXZqUf9F;

1.232
date	2024.05.08.23.28.07;	author riastradh;	state Exp;
branches;
next	1.231;
commitid	IT7To25RPg6ZHf9F;

1.231
date	2024.05.05.22.52.19;	author riastradh;	state Exp;
branches;
next	1.230;
commitid	HdNVmi1h5POGBR8F;

1.230
date	2024.05.05.14.53.22;	author riastradh;	state Exp;
branches;
next	1.229;
commitid	HIsV8mLxgeNoXO8F;

1.229
date	2024.05.05.11.07.49;	author riastradh;	state Exp;
branches;
next	1.228;
commitid	2MHFI0p1gA01IN8F;

1.228
date	2024.05.05.02.50.11;	author riastradh;	state Exp;
branches;
next	1.227;
commitid	vX8dYfqCiFriXK8F;

1.227
date	2024.03.26.20.12.47;	author rillig;	state Exp;
branches;
next	1.226;
commitid	CNRNYL6mNVLt0I3F;

1.226
date	2024.01.26.22.01.40;	author nros;	state Exp;
branches;
next	1.225;
commitid	A9fYHwFV30ICx0WE;

1.225
date	2024.01.26.19.27.30;	author nros;	state Exp;
branches;
next	1.224;
commitid	GxlYsPT9poSIGZVE;

1.224
date	2024.01.21.18.53.15;	author christos;	state Exp;
branches;
next	1.223;
commitid	2p38f3v3elnRElVE;

1.223
date	2023.12.21.06.32.20;	author jklos;	state Exp;
branches;
next	1.222;
commitid	zuznHOSnk4wWxiRE;

1.222
date	2023.10.08.13.47.51;	author he;	state Exp;
branches;
next	1.221;
commitid	gaQrxn1GACKXkPHE;

1.221
date	2023.08.08.02.09.42;	author rin;	state Exp;
branches;
next	1.220;
commitid	CsWmTwt9nsKprVzE;

1.220
date	2023.07.09.03.57.09;	author rin;	state Exp;
branches;
next	1.219;
commitid	otXSmLlnCb2405wE;

1.219
date	2023.04.10.19.23.02;	author rillig;	state Exp;
branches;
next	1.218;
commitid	GuXBuykPhiQT0BkE;

1.218
date	2022.08.27.09.56.21;	author christos;	state Exp;
branches
	1.218.2.1;
next	1.217;
commitid	PmvNT1WeTlj59vRD;

1.217
date	2022.08.27.08.31.58;	author christos;	state Exp;
branches;
next	1.216;
commitid	EKYSAxKF7WbXFuRD;

1.216
date	2022.06.23.16.42.50;	author martin;	state Exp;
branches;
next	1.215;
commitid	Kf4gQqksaBVPtbJD;

1.215
date	2022.06.23.07.50.14;	author he;	state Exp;
branches;
next	1.214;
commitid	DKcbeFIQK7Esu8JD;

1.214
date	2021.07.21.12.05.02;	author tnn;	state Exp;
branches;
next	1.213;
commitid	g5hbns9axNA5MQ1D;

1.213
date	2021.04.25.23.43.20;	author christos;	state Exp;
branches;
next	1.212;
commitid	AXk2EE2b6o8jrJQC;

1.212
date	2019.11.11.22.45.27;	author joerg;	state Exp;
branches;
next	1.211;
commitid	IMynySmLyNzibuKB;

1.211
date	2019.10.11.18.36.22;	author nros;	state Exp;
branches;
next	1.210;
commitid	wenjGJoJ4h43OtGB;

1.210
date	2019.04.27.23.04.32;	author kamil;	state Exp;
branches
	1.210.2.1;
next	1.209;
commitid	N9EyxvT58k7QD2lB;

1.209
date	2019.04.25.23.17.24;	author maya;	state Exp;
branches;
next	1.208;
commitid	3QkppSZcfnX7NMkB;

1.208
date	2019.04.17.07.45.23;	author mrg;	state Exp;
branches;
next	1.207;
commitid	8kDV8I8xy5wpTFjB;

1.207
date	2019.04.15.18.44.26;	author maya;	state Exp;
branches;
next	1.206;
commitid	VaULzWXESGOvBtjB;

1.206
date	2019.02.22.18.17.22;	author maya;	state Exp;
branches;
next	1.205;
commitid	17pWKlVbASbI6NcB;

1.205
date	2018.11.07.04.00.12;	author riastradh;	state Exp;
branches;
next	1.204;
commitid	s10wAtrFJPV4PXYA;

1.204
date	2018.06.13.08.19.36;	author kamil;	state Exp;
branches
	1.204.2.1;
next	1.203;
commitid	8qRDhP2zPqUzX5GA;

1.203
date	2017.09.26.16.01.59;	author maya;	state Exp;
branches
	1.203.2.1;
next	1.202;
commitid	KzEGzxpTWRSCTI8A;

1.202
date	2017.08.21.17.10.34;	author christos;	state Exp;
branches;
next	1.201;
commitid	y3Y0cFn0HWjVq64A;

1.201
date	2017.08.17.13.58.39;	author he;	state Exp;
branches;
next	1.200;
commitid	qXPfe92GXPZ0vz3A;

1.200
date	2017.08.17.09.06.21;	author he;	state Exp;
branches;
next	1.199;
commitid	BN3eMQm8zNXNRx3A;

1.199
date	2017.08.16.13.34.59;	author nisimura;	state Exp;
branches;
next	1.198;
commitid	6XKktcjZkfk5pr3A;

1.198
date	2017.08.16.09.18.24;	author he;	state Exp;
branches;
next	1.197;
commitid	XzvRxCIDKOXnYp3A;

1.197
date	2017.08.15.10.40.28;	author mlelstv;	state Exp;
branches;
next	1.196;
commitid	1uQmZEBojaa3ti3A;

1.196
date	2017.08.11.20.24.56;	author he;	state Exp;
branches;
next	1.195;
commitid	Yl7ijXEe52wvOP2A;

1.195
date	2017.07.27.10.03.10;	author he;	state Exp;
branches;
next	1.194;
commitid	jBltaWaJgGPbSQ0A;

1.194
date	2017.07.27.07.01.58;	author he;	state Exp;
branches;
next	1.193;
commitid	oFBNSeWbZ9OWRP0A;

1.193
date	2017.07.26.09.53.09;	author he;	state Exp;
branches;
next	1.192;
commitid	gn8rRM6QcZmJOI0A;

1.192
date	2017.07.26.09.42.12;	author he;	state Exp;
branches;
next	1.191;
commitid	js0zs1ekQhFQMI0A;

1.191
date	2017.05.06.18.03.24;	author christos;	state Exp;
branches
	1.191.2.1;
next	1.190;
commitid	h9EBzz0PcPFjamQz;

1.190
date	2017.03.23.18.26.03;	author chs;	state Exp;
branches
	1.190.2.1;
next	1.189;
commitid	3BF1fbHRlWhTHHKz;

1.189
date	2017.03.22.23.11.08;	author chs;	state Exp;
branches;
next	1.188;
commitid	TrNjBZjUFqiCjBKz;

1.188
date	2017.02.23.02.05.30;	author scole;	state Exp;
branches;
next	1.187;
commitid	4LUb6H8AB52kb1Hz;

1.187
date	2016.12.08.18.42.01;	author christos;	state Exp;
branches
	1.187.2.1;
next	1.186;
commitid	qJxoMFFfHXFAadxz;

1.186
date	2016.09.21.14.11.40;	author christos;	state Exp;
branches;
next	1.185;
commitid	fO2lnTUHkQAgbanz;

1.185
date	2016.09.07.14.41.33;	author jakllsch;	state Exp;
branches;
next	1.184;
commitid	oaKjsGbwAkU5Nmlz;

1.184
date	2016.08.27.09.15.44;	author christos;	state Exp;
branches;
next	1.183;
commitid	RJ1cWonpErNzlVjz;

1.183
date	2016.08.26.08.33.48;	author christos;	state Exp;
branches;
next	1.182;
commitid	X2nZGDLj4tYc9Njz;

1.182
date	2016.08.26.08.31.17;	author christos;	state Exp;
branches;
next	1.181;
commitid	0TClhR0AWn2m8Njz;

1.181
date	2016.08.25.12.15.28;	author christos;	state Exp;
branches;
next	1.180;
commitid	zu1AsM1m9ovfpGjz;

1.180
date	2016.08.24.10.03.32;	author christos;	state Exp;
branches;
next	1.179;
commitid	lCmn9hqrQNUYHxjz;

1.179
date	2016.08.24.09.10.57;	author christos;	state Exp;
branches;
next	1.178;
commitid	9DlsOB5k2EqWpxjz;

1.178
date	2016.08.23.10.00.15;	author christos;	state Exp;
branches;
next	1.177;
commitid	EOnQm2fmdAlQIpjz;

1.177
date	2016.03.30.07.44.06;	author martin;	state Exp;
branches
	1.177.2.1;
next	1.176;
commitid	shUhXVwE4l41FD0z;

1.176
date	2016.03.17.18.29.59;	author nros;	state Exp;
branches;
next	1.175;
commitid	9iSQw4Rmp8dxE1Zy;

1.175
date	2016.03.17.00.00.44;	author nros;	state Exp;
branches;
next	1.174;
commitid	JXOetnJRSlSMvVYy;

1.174
date	2015.12.29.16.57.35;	author christos;	state Exp;
branches;
next	1.173;
commitid	5RJuIJmLdZ7jGROy;

1.173
date	2015.12.21.17.02.02;	author christos;	state Exp;
branches;
next	1.172;
commitid	UpHrgvoSQXSLXPNy;

1.172
date	2015.12.20.16.24.25;	author christos;	state Exp;
branches;
next	1.171;
commitid	yR1fuwVqD5WRMHNy;

1.171
date	2015.12.12.19.05.45;	author nros;	state Exp;
branches;
next	1.170;
commitid	pbs4fwHnTOieVGMy;

1.170
date	2015.09.13.10.58.30;	author he;	state Exp;
branches;
next	1.169;
commitid	wxgL4Wif04cW75By;

1.169
date	2015.09.13.09.46.30;	author he;	state Exp;
branches;
next	1.168;
commitid	gLvo4dI7BBbiJ4By;

1.168
date	2014.12.27.16.54.02;	author martin;	state Exp;
branches;
next	1.167;
commitid	P5T5A81rjjxxsH3y;

1.167
date	2014.11.17.16.53.23;	author christos;	state Exp;
branches;
next	1.166;
commitid	l1flzusHPRhWJyYx;

1.166
date	2014.09.19.17.42.44;	author matt;	state Exp;
branches;
next	1.165;
commitid	G7q2f1tAsNstUYQx;

1.165
date	2014.08.26.11.48.20;	author christos;	state Exp;
branches;
next	1.164;
commitid	dLw7jPz3I5B9IRNx;

1.164
date	2014.08.11.08.20.57;	author mrg;	state Exp;
branches
	1.164.2.1;
next	1.163;
commitid	KkZRgJrKzVyX2VLx;

1.163
date	2014.08.10.23.25.50;	author matt;	state Exp;
branches;
next	1.162;
commitid	nUOYsVLDom8Q5SLx;

1.162
date	2014.08.10.20.48.34;	author joerg;	state Exp;
branches;
next	1.161;
commitid	dd7G0JTvyNTLdRLx;

1.161
date	2014.08.10.05.57.31;	author matt;	state Exp;
branches;
next	1.160;
commitid	gGKJLbfxyXHhiMLx;

1.160
date	2014.06.16.12.54.43;	author joerg;	state Exp;
branches;
next	1.159;
commitid	UZoJynagVdcImKEx;

1.159
date	2014.05.18.10.47.03;	author martin;	state Exp;
branches;
next	1.158;
commitid	46h3MoBj9PGZA0Bx;

1.158
date	2014.05.05.18.08.32;	author martin;	state Exp;
branches;
next	1.157;
commitid	bYB9Novywlp4snzx;

1.157
date	2014.04.28.08.47.43;	author martin;	state Exp;
branches;
next	1.156;
commitid	craYnaCsZKJVzqyx;

1.156
date	2014.04.01.19.12.37;	author christos;	state Exp;
branches
	1.156.2.1;
next	1.155;
commitid	SDVidaAXzRS7U0vx;

1.155
date	2014.03.06.11.01.16;	author martin;	state Exp;
branches;
next	1.154;
commitid	FrgCbia8Z0Bm1Drx;

1.154
date	2014.01.29.23.37.18;	author joerg;	state Exp;
branches;
next	1.153;
commitid	XzET6rd2DWYkm4nx;

1.153
date	2014.01.18.17.20.36;	author skrll;	state Exp;
branches;
next	1.152;
commitid	2z4Yr7tIvFHGCClx;

1.152
date	2013.11.22.13.37.24;	author martin;	state Exp;
branches;
next	1.151;
commitid	EYHHPFjcsZhZdhex;

1.151
date	2013.11.21.11.21.54;	author martin;	state Exp;
branches;
next	1.150;
commitid	PTvo5W8r5h6Ev8ex;

1.150
date	2013.11.19.19.24.33;	author joerg;	state Exp;
branches;
next	1.149;
commitid	G2d8c94nqsOdfVdx;

1.149
date	2013.11.13.22.09.55;	author joerg;	state Exp;
branches;
next	1.148;
commitid	XZAccQ6rIpCYladx;

1.148
date	2013.11.13.12.58.11;	author joerg;	state Exp;
branches;
next	1.147;
commitid	qN2ADwvRVu0Ei7dx;

1.147
date	2013.11.12.17.36.14;	author joerg;	state Exp;
branches;
next	1.146;
commitid	zBu5ZiYLED7OR0dx;

1.146
date	2013.11.12.16.48.39;	author joerg;	state Exp;
branches;
next	1.145;
commitid	H21vI9TQzKzDB0dx;

1.145
date	2013.11.12.00.10.29;	author joerg;	state Exp;
branches;
next	1.144;
commitid	M8dZYvrpdt6g5Vcx;

1.144
date	2013.11.11.23.57.34;	author joerg;	state Exp;
branches;
next	1.143;
commitid	zV3un5JSK3GO0Vcx;

1.143
date	2013.10.15.23.59.36;	author joerg;	state Exp;
branches;
next	1.142;
commitid	b8TMAsoCJyJiTr9x;

1.142
date	2013.09.21.22.28.12;	author joerg;	state Exp;
branches;
next	1.141;
commitid	2v1Jst3GvO0A9m6x;

1.141
date	2013.08.22.08.24.30;	author martin;	state Exp;
branches;
next	1.140;
commitid	z9jStOjkZZcSrq2x;

1.140
date	2013.08.21.13.06.00;	author martin;	state Exp;
branches;
next	1.139;
commitid	0Wy1h3qfyhzz2k2x;

1.139
date	2013.06.20.19.49.47;	author christos;	state Exp;
branches;
next	1.138;
commitid	Sf55OZGp8hxQgoUw;

1.138
date	2013.05.24.12.45.40;	author martin;	state Exp;
branches;
next	1.137;
commitid	AnkJgLC8RI3PMSQw;

1.137
date	2013.05.01.04.04.31;	author matt;	state Exp;
branches;
next	1.136;

1.136
date	2013.04.28.14.46.14;	author joerg;	state Exp;
branches;
next	1.135;

1.135
date	2013.04.27.22.58.15;	author joerg;	state Exp;
branches;
next	1.134;

1.134
date	2013.04.06.12.16.49;	author uebayasi;	state Exp;
branches;
next	1.133;

1.133
date	2013.02.12.21.40.18;	author martin;	state Exp;
branches;
next	1.132;

1.132
date	2013.02.11.17.55.01;	author matt;	state Exp;
branches;
next	1.131;

1.131
date	2013.02.11.12.43.04;	author matt;	state Exp;
branches;
next	1.130;

1.130
date	2013.02.11.01.47.04;	author christos;	state Exp;
branches;
next	1.129;

1.129
date	2013.02.11.01.29.58;	author christos;	state Exp;
branches;
next	1.128;

1.128
date	2013.02.09.22.33.13;	author christos;	state Exp;
branches;
next	1.127;

1.127
date	2013.02.09.20.19.13;	author christos;	state Exp;
branches;
next	1.126;

1.126
date	2013.02.03.07.13.07;	author matt;	state Exp;
branches;
next	1.125;

1.125
date	2012.08.04.15.16.16;	author matt;	state Exp;
branches
	1.125.2.1;
next	1.124;

1.124
date	2012.05.05.17.54.13;	author christos;	state Exp;
branches;
next	1.123;

1.123
date	2012.04.04.10.59.46;	author joerg;	state Exp;
branches;
next	1.122;

1.122
date	2012.03.21.05.37.42;	author matt;	state Exp;
branches;
next	1.121;

1.121
date	2012.03.09.08.03.53;	author njoly;	state Exp;
branches;
next	1.120;

1.120
date	2011.09.17.10.51.52;	author jruoho;	state Exp;
branches
	1.120.2.1
	1.120.4.1;
next	1.119;

1.119
date	2011.09.13.05.26.47;	author jruoho;	state Exp;
branches;
next	1.118;

1.118
date	2011.08.06.11.01.12;	author jruoho;	state Exp;
branches;
next	1.117;

1.117
date	2011.08.06.10.51.26;	author jruoho;	state Exp;
branches;
next	1.116;

1.116
date	2011.08.03.14.13.07;	author joerg;	state Exp;
branches;
next	1.115;

1.115
date	2011.07.28.22.32.28;	author joerg;	state Exp;
branches;
next	1.114;

1.114
date	2011.07.28.21.10.29;	author joerg;	state Exp;
branches;
next	1.113;

1.113
date	2011.07.28.20.53.20;	author matt;	state Exp;
branches;
next	1.112;

1.112
date	2011.07.26.16.10.16;	author joerg;	state Exp;
branches;
next	1.111;

1.111
date	2011.06.20.07.43.58;	author mrg;	state Exp;
branches;
next	1.110;

1.110
date	2011.05.20.21.42.48;	author nakayama;	state Exp;
branches
	1.110.2.1;
next	1.109;

1.109
date	2011.05.10.09.07.51;	author jruoho;	state Exp;
branches;
next	1.108;

1.108
date	2011.05.10.06.38.33;	author jruoho;	state Exp;
branches;
next	1.107;

1.107
date	2011.04.16.05.48.50;	author jruoho;	state Exp;
branches;
next	1.106;

1.106
date	2011.04.13.04.57.11;	author jruoho;	state Exp;
branches;
next	1.105;

1.105
date	2011.04.12.07.29.50;	author jruoho;	state Exp;
branches;
next	1.104;

1.104
date	2011.02.06.00.44.09;	author christos;	state Exp;
branches;
next	1.103;

1.103
date	2011.01.31.15.06.01;	author christos;	state Exp;
branches;
next	1.102;

1.102
date	2011.01.31.00.19.33;	author christos;	state Exp;
branches;
next	1.101;

1.101
date	2011.01.12.23.03.56;	author joerg;	state Exp;
branches
	1.101.2.1;
next	1.100;

1.100
date	2011.01.09.02.32.13;	author jakllsch;	state Exp;
branches;
next	1.99;

1.99
date	2010.12.09.22.52.59;	author abs;	state Exp;
branches;
next	1.98;

1.98
date	2010.09.15.16.11.29;	author christos;	state Exp;
branches;
next	1.97;

1.97
date	2010.08.10.17.53.08;	author drochner;	state Exp;
branches;
next	1.96;

1.96
date	2010.08.07.18.12.46;	author wiz;	state Exp;
branches;
next	1.95;

1.95
date	2010.07.31.21.47.53;	author joerg;	state Exp;
branches;
next	1.94;

1.94
date	2010.04.23.19.17.07;	author drochner;	state Exp;
branches;
next	1.93;

1.93
date	2010.03.29.06.59.42;	author mrg;	state Exp;
branches;
next	1.92;

1.92
date	2010.01.11.16.28.39;	author christos;	state Exp;
branches;
next	1.91;

1.91
date	2009.10.23.23.42.52;	author joerg;	state Exp;
branches;
next	1.90;

1.90
date	2009.10.04.22.04.30;	author christos;	state Exp;
branches;
next	1.89;

1.89
date	2009.01.18.20.42.11;	author he;	state Exp;
branches;
next	1.88;

1.88
date	2008.08.29.00.02.22;	author gmcgarry;	state Exp;
branches
	1.88.4.1
	1.88.8.1;
next	1.87;

1.87
date	2008.07.12.12.23.13;	author gmcgarry;	state Exp;
branches;
next	1.86;

1.86
date	2008.06.03.18.47.28;	author ad;	state Exp;
branches;
next	1.85;

1.85
date	2008.04.26.19.49.38;	author christos;	state Exp;
branches
	1.85.2.1;
next	1.84;

1.84
date	2008.04.26.19.19.06;	author christos;	state Exp;
branches;
next	1.83;

1.83
date	2008.04.25.22.21.53;	author christos;	state Exp;
branches;
next	1.82;

1.82
date	2008.02.20.09.55.38;	author drochner;	state Exp;
branches
	1.82.4.1;
next	1.81;

1.81
date	2008.02.09.02.37.21;	author mrg;	state Exp;
branches;
next	1.80;

1.80
date	2008.02.05.02.41.15;	author mrg;	state Exp;
branches;
next	1.79;

1.79
date	2007.08.20.16.01.30;	author drochner;	state Exp;
branches
	1.79.2.1;
next	1.78;

1.78
date	2007.02.22.22.08.20;	author drochner;	state Exp;
branches;
next	1.77;

1.77
date	2006.07.03.16.03.56;	author drochner;	state Exp;
branches;
next	1.76;

1.76
date	2006.07.01.08.57.14;	author mrg;	state Exp;
branches;
next	1.75;

1.75
date	2006.05.11.00.37.53;	author mrg;	state Exp;
branches;
next	1.74;

1.74
date	2006.03.25.16.41.11;	author xtraeme;	state Exp;
branches;
next	1.73;

1.73
date	2006.03.21.18.46.05;	author drochner;	state Exp;
branches;
next	1.72;

1.72
date	2006.03.15.22.07.09;	author kleink;	state Exp;
branches;
next	1.71;

1.71
date	2006.01.17.13.16.08;	author is;	state Exp;
branches;
next	1.70;

1.70
date	2006.01.15.12.39.44;	author is;	state Exp;
branches;
next	1.69;

1.69
date	2005.09.16.15.26.47;	author wiz;	state Exp;
branches;
next	1.68;

1.68
date	2005.07.21.20.58.21;	author rpaulo;	state Exp;
branches;
next	1.67;

1.67
date	2005.07.21.16.58.39;	author christos;	state Exp;
branches;
next	1.66;

1.66
date	2005.07.21.12.55.58;	author christos;	state Exp;
branches;
next	1.65;

1.65
date	2004.11.13.20.29.47;	author jmmv;	state Exp;
branches
	1.65.2.1;
next	1.64;

1.64
date	2004.07.10.13.49.09;	author junyoung;	state Exp;
branches;
next	1.63;

1.63
date	2004.07.01.19.08.21;	author drochner;	state Exp;
branches;
next	1.62;

1.62
date	2004.07.01.17.33.16;	author drochner;	state Exp;
branches;
next	1.61;

1.61
date	2004.07.01.16.09.21;	author drochner;	state Exp;
branches;
next	1.60;

1.60
date	2004.06.30.15.08.30;	author drochner;	state Exp;
branches;
next	1.59;

1.59
date	2002.06.15.00.13.07;	author matt;	state Exp;
branches
	1.59.2.1;
next	1.58;

1.58
date	2002.01.27.23.33.52;	author ross;	state Exp;
branches
	1.58.2.1;
next	1.57;

1.57
date	2002.01.27.21.59.19;	author thorpej;	state Exp;
branches;
next	1.56;

1.56
date	2001.12.28.01.32.39;	author lukem;	state Exp;
branches;
next	1.55;

1.55
date	2001.12.12.00.51.05;	author tv;	state Exp;
branches;
next	1.54;

1.54
date	2001.11.05.15.22.23;	author lukem;	state Exp;
branches;
next	1.53;

1.53
date	2001.06.19.00.25.36;	author fvdl;	state Exp;
branches;
next	1.52;

1.52
date	99.12.13.09.40.27;	author christos;	state Exp;
branches
	1.52.4.1;
next	1.51;

1.51
date	99.08.22.18.28.37;	author is;	state Exp;
branches
	1.51.4.1;
next	1.50;

1.50
date	99.08.19.21.53.03;	author is;	state Exp;
branches;
next	1.49;

1.49
date	99.08.16.23.10.20;	author kleink;	state Exp;
branches;
next	1.48;

1.48
date	99.08.16.12.35.18;	author kleink;	state Exp;
branches;
next	1.47;

1.47
date	99.08.15.22.23.53;	author kleink;	state Exp;
branches;
next	1.46;

1.46
date	99.07.02.15.37.33;	author simonb;	state Exp;
branches;
next	1.45;

1.45
date	99.07.01.20.46.35;	author is;	state Exp;
branches;
next	1.44;

1.44
date	99.02.15.09.33.41;	author he;	state Exp;
branches;
next	1.43;

1.43
date	98.11.11.15.26.14;	author matt;	state Exp;
branches;
next	1.42;

1.42
date	98.10.10.00.08.51;	author matt;	state Exp;
branches;
next	1.41;

1.41
date	98.08.22.12.49.08;	author ragge;	state Exp;
branches;
next	1.40;

1.40
date	98.08.09.23.51.33;	author perry;	state Exp;
branches;
next	1.39;

1.39
date	98.02.19.06.58.07;	author cgd;	state Exp;
branches;
next	1.38;

1.38
date	98.02.19.02.17.07;	author cgd;	state Exp;
branches;
next	1.37;

1.37
date	97.10.23.02.41.28;	author lukem;	state Exp;
branches;
next	1.36;

1.36
date	97.10.18.05.34.11;	author mikel;	state Exp;
branches
	1.36.2.1;
next	1.35;

1.35
date	97.10.09.11.26.55;	author lukem;	state Exp;
branches;
next	1.34;

1.34
date	96.12.19.08.03.40;	author cgd;	state Exp;
branches;
next	1.33;

1.33
date	96.10.12.18.32.38;	author ragge;	state Exp;
branches;
next	1.32;

1.32
date	96.07.05.22.26.51;	author explorer;	state Exp;
branches;
next	1.31;

1.31
date	96.07.03.18.02.43;	author jtc;	state Exp;
branches;
next	1.30;

1.30
date	96.06.26.14.39.49;	author jtc;	state Exp;
branches;
next	1.29;

1.29
date	96.06.26.07.38.42;	author jtc;	state Exp;
branches;
next	1.28;

1.28
date	95.11.20.22.06.19;	author jtc;	state Exp;
branches;
next	1.27;

1.27
date	95.10.10.23.43.31;	author ragge;	state Exp;
branches;
next	1.26;

1.26
date	95.05.03.20.42.23;	author jtc;	state Exp;
branches;
next	1.25;

1.25
date	95.02.18.01.46.41;	author jtc;	state Exp;
branches;
next	1.24;

1.24
date	94.12.22.09.50.37;	author cgd;	state Exp;
branches;
next	1.23;

1.23
date	94.09.25.17.31.51;	author jtc;	state Exp;
branches;
next	1.22;

1.22
date	94.08.10.20.30.00;	author jtc;	state Exp;
branches;
next	1.21;

1.21
date	94.03.12.01.20.02;	author jtc;	state Exp;
branches;
next	1.20;

1.20
date	94.03.11.17.18.54;	author jtc;	state Exp;
branches;
next	1.19;

1.19
date	94.03.11.01.34.18;	author jtc;	state Exp;
branches;
next	1.18;

1.18
date	94.03.10.18.13.32;	author jtc;	state Exp;
branches;
next	1.17;

1.17
date	94.03.08.17.20.51;	author jtc;	state Exp;
branches;
next	1.16;

1.16
date	94.03.01.17.14.34;	author jtc;	state Exp;
branches;
next	1.15;

1.15
date	94.02.25.19.32.18;	author jtc;	state Exp;
branches;
next	1.14;

1.14
date	94.02.15.01.00.46;	author jtc;	state Exp;
branches;
next	1.13;

1.13
date	94.02.14.17.32.56;	author jtc;	state Exp;
branches;
next	1.12;

1.12
date	94.02.14.17.07.07;	author jtc;	state Exp;
branches;
next	1.11;

1.11
date	94.02.11.18.35.35;	author jtc;	state Exp;
branches;
next	1.10;

1.10
date	93.12.06.12.11.42;	author cgd;	state Exp;
branches;
next	1.9;

1.9
date	93.12.05.01.10.14;	author cgd;	state Exp;
branches;
next	1.8;

1.8
date	93.10.21.00.41.56;	author jtc;	state Exp;
branches;
next	1.7;

1.7
date	93.10.11.19.20.24;	author jtc;	state Exp;
branches;
next	1.6;

1.6
date	93.10.05.21.52.07;	author pk;	state Exp;
branches;
next	1.5;

1.5
date	93.10.01.23.56.08;	author cgd;	state Exp;
branches;
next	1.4;

1.4
date	93.08.14.19.20.58;	author mycroft;	state Exp;
branches;
next	1.3;

1.3
date	93.08.14.13.42.09;	author mycroft;	state Exp;
branches;
next	1.2;

1.2
date	93.08.01.05.40.21;	author mycroft;	state Exp;
branches;
next	1.1;

1.1
date	93.03.21.09.45.37;	author cgd;	state Exp;
branches
	1.1.1.1;
next	;

1.238.2.1
date	2025.08.02.05.54.50;	author perseant;	state Exp;
branches;
next	;
commitid	23j6GFaDws3O875G;

1.218.2.1
date	2023.08.11.14.44.19;	author martin;	state Exp;
branches;
next	1.218.2.2;
commitid	sLrh1pbv4TxownAE;

1.218.2.2
date	2023.10.08.18.48.20;	author martin;	state Exp;
branches;
next	1.218.2.3;
commitid	dZLGd1N6dW6w0RHE;

1.218.2.3
date	2023.12.31.12.41.02;	author martin;	state Exp;
branches;
next	1.218.2.4;
commitid	pswyAD5xzF07hCSE;

1.218.2.4
date	2024.01.14.15.43.45;	author martin;	state Exp;
branches;
next	1.218.2.5;
commitid	qgJouzKr6WmTPqUE;

1.218.2.5
date	2025.02.22.13.05.12;	author martin;	state Exp;
branches;
next	;
commitid	RTFio93OjjanWsKF;

1.210.2.1
date	2023.10.08.18.49.54;	author martin;	state Exp;
branches;
next	;
commitid	irnkSIThgOZ31RHE;

1.204.2.1
date	2019.06.10.22.05.24;	author christos;	state Exp;
branches;
next	1.204.2.2;
commitid	jtc8rnCzWiEEHGqB;

1.204.2.2
date	2020.04.13.08.03.13;	author martin;	state Exp;
branches;
next	;
commitid	X01YhRUPVUDaec4C;

1.203.2.1
date	2018.06.25.07.25.35;	author pgoyette;	state Exp;
branches;
next	1.203.2.2;
commitid	8PtAu9af7VvhiDHA;

1.203.2.2
date	2018.11.26.01.52.12;	author pgoyette;	state Exp;
branches;
next	;
commitid	Zj4q5SspGdKXto1B;

1.191.2.1
date	2017.08.29.11.45.18;	author martin;	state Exp;
branches;
next	1.191.2.2;
commitid	twyC43guNnZgn65A;

1.191.2.2
date	2017.08.29.11.58.26;	author martin;	state Exp;
branches;
next	1.191.2.3;
commitid	QzEmziXhRE9Rr65A;

1.191.2.3
date	2017.08.29.14.31.43;	author martin;	state Exp;
branches;
next	;
commitid	8SDvXLbjajcti75A;

1.190.2.1
date	2017.05.11.02.58.33;	author pgoyette;	state Exp;
branches;
next	;
commitid	p6b6NO9zXediZUQz;

1.187.2.1
date	2017.04.21.16.53.10;	author bouyer;	state Exp;
branches;
next	;
commitid	dUG7nkTKALCadqOz;

1.177.2.1
date	2016.11.04.14.48.54;	author pgoyette;	state Exp;
branches;
next	1.177.2.2;
commitid	2m1JRwYmpwPkOOsz;

1.177.2.2
date	2017.01.07.08.56.04;	author pgoyette;	state Exp;
branches;
next	1.177.2.3;
commitid	uEL0C1YuiJrlV0Bz;

1.177.2.3
date	2017.03.20.06.56.59;	author pgoyette;	state Exp;
branches;
next	1.177.2.4;
commitid	jjw7cAwgyKq7RfKz;

1.177.2.4
date	2017.04.26.02.52.55;	author pgoyette;	state Exp;
branches;
next	;
commitid	ojV02aOSdzvBqZOz;

1.164.2.1
date	2014.10.13.19.34.58;	author martin;	state Exp;
branches;
next	1.164.2.2;
commitid	vcf6dFUVfNYEK4Ux;

1.164.2.2
date	2015.01.20.20.57.24;	author snj;	state Exp;
branches;
next	1.164.2.3;
commitid	W4e6WfoR6QfQ1O6y;

1.164.2.3
date	2015.11.08.00.24.25;	author riz;	state Exp;
branches
	1.164.2.3.2.1;
next	1.164.2.4;
commitid	Nn9Cf1jr6NFhPdIy;

1.164.2.4
date	2016.09.25.11.32.33;	author bouyer;	state Exp;
branches;
next	;
commitid	3HTWV8a7w7RLaFnz;

1.164.2.3.2.1
date	2017.01.18.08.46.23;	author skrll;	state Exp;
branches;
next	;
commitid	M6f3RyDtiAR3wqCz;

1.156.2.1
date	2014.08.10.06.52.02;	author tls;	state Exp;
branches;
next	;
commitid	gnpQdQT91AI1BMLx;

1.125.2.1
date	2013.02.25.00.27.56;	author tls;	state Exp;
branches;
next	1.125.2.2;

1.125.2.2
date	2013.06.23.06.21.07;	author tls;	state Exp;
branches;
next	1.125.2.3;
commitid	NYFFXRB0xCbrHHUw;

1.125.2.3
date	2014.08.20.00.02.17;	author tls;	state Exp;
branches;
next	;
commitid	jTnpym9Qu0o4R1Nx;

1.120.2.1
date	2012.04.17.00.05.28;	author yamt;	state Exp;
branches;
next	1.120.2.2;

1.120.2.2
date	2012.05.23.10.07.32;	author yamt;	state Exp;
branches;
next	1.120.2.3;

1.120.2.3
date	2012.10.30.18.59.12;	author yamt;	state Exp;
branches;
next	1.120.2.4;

1.120.2.4
date	2014.05.22.11.36.56;	author yamt;	state Exp;
branches;
next	;
commitid	HJV5p3BoaVY5KwBx;

1.120.4.1
date	2012.05.09.18.22.36;	author riz;	state Exp;
branches;
next	;

1.110.2.1
date	2011.06.23.14.18.39;	author cherry;	state Exp;
branches;
next	;

1.101.2.1
date	2011.02.08.16.19.00;	author bouyer;	state Exp;
branches;
next	;

1.88.4.1
date	2010.03.12.21.58.42;	author riz;	state Exp;
branches;
next	;

1.88.8.1
date	2010.04.21.05.28.10;	author matt;	state Exp;
branches;
next	;

1.85.2.1
date	2008.06.23.04.29.53;	author wrstuden;	state Exp;
branches;
next	1.85.2.2;

1.85.2.2
date	2008.09.18.04.39.23;	author wrstuden;	state Exp;
branches;
next	;

1.82.4.1
date	2008.05.18.12.30.38;	author yamt;	state Exp;
branches;
next	1.82.4.2;

1.82.4.2
date	2008.06.17.09.13.39;	author yamt;	state Exp;
branches;
next	;

1.79.2.1
date	2008.03.23.00.40.27;	author matt;	state Exp;
branches;
next	;

1.65.2.1
date	2006.03.24.22.28.38;	author riz;	state Exp;
branches;
next	;

1.59.2.1
date	2004.07.15.20.58.27;	author he;	state Exp;
branches;
next	;

1.58.2.1
date	2002.06.18.13.30.14;	author lukem;	state Exp;
branches;
next	;

1.52.4.1
date	2000.08.14.21.24.15;	author ragge;	state Exp;
branches;
next	;

1.51.4.1
date	99.12.27.18.29.59;	author wrstuden;	state Exp;
branches;
next	;

1.36.2.1
date	97.11.09.01.00.32;	author lukem;	state Exp;
branches;
next	;

1.1.1.1
date	93.03.21.09.45.37;	author cgd;	state Exp;
branches;
next	;


desc
@@


1.242
log
@all: remove 'constant in conditional context' from LINTFLAGS

Lint no longer emits this message, as it produced too many false
positives.
@
text
@#  $NetBSD: Makefile,v 1.241 2025/02/15 09:00:38 tsutsui Exp $
#
#  @@(#)Makefile 5.1beta 93/09/24
#
#  ====================================================
#  Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
#
#  Developed at SunPro, a Sun Microsystems, Inc. business.
#  Permission to use, copy, modify, and distribute this
#  software is freely granted, provided that this notice
#  is preserved.
#  ====================================================
#
#

NOSANITIZER=		# defined

#
# There are two options in making libm at fdlibm compile time:
# 	_IEEE_LIBM 	--- IEEE libm; smaller, and somewhat faster
#	_MULTI_LIBM	--- Support multi-standard at runtime by
#			    imposing wrapper functions defined in
#			    fdlibm.h:
#				_IEEE_MODE 	-- IEEE
#				_XOPEN_MODE 	-- X/OPEN
#				_POSIX_MODE 	-- POSIX/ANSI
#				_SVID3_MODE 	-- SVID
#
# Here is how to set up CPPFLAGS to create the desired libm at
# compile time:
#
# 	CPPFLAGS = -D_IEEE_LIBM		... IEEE libm (recommended)
#	CPPFLAGS = -D_SVID3_MODE	... Multi-standard supported
#					    libm with SVID as the
#					    default standard
#	CPPFLAGS = -D_XOPEN_MODE	... Multi-standard supported
#					    libm with XOPEN as the
#					    default standard
#	CPPFLAGS = -D_POSIX_MODE	... Multi-standard supported
#					    libm with POSIX as the
#					    default standard
#	CPPFLAGS = 			... Multi-standard supported
#					    libm with IEEE as the
#					    default standard
#

USE_SHLIBDIR=	yes

# require this for the value of I387_LIBM from mk.conf, if set.
.include <bsd.own.mk>

LIBC_MACHINE_ARCH?=	${MACHINE_ARCH}
LIBC_MACHINE_CPU?=	${MACHINE_CPU}

LINTFLAGS+=	-g		# compiler_rt uses typeof() and __extension__
LINTFLAGS+=	-X 117		# GCC sign-extends '>>' on signed int
LINTFLAGS.s_logl.c+=	-X 193	# unreachable statement (due to constant condition)
LINTFLAGS.s_logl.c+=	-X 177	# non-constant initializer

EXPSYM_SRCS=	m.common.expsym
EXPSYM_SRCS+=	m.ieee754.expsym
EXPSYM_SRCS+=	m.fenv.expsym
EXPSYM_SRCS+=	${EXPSYM_SRC_MD:U}

.if exists(${.CURDIR}/m.${LIBC_MACHINE_ARCH}.expsym)
EXPSYM_SRC_MD=	m.${LIBC_MACHINE_ARCH}.expsym
.elif exists(${.CURDIR}/m.${LIBC_MACHINE_CPU}.expsym)
EXPSYM_SRC_MD=	m.${LIBC_MACHINE_CPU}.expsym
.endif

# We will build m.expsym with a rule below, by merging all the files
# listed in EXPSYM_SRCS, which individual architectures can override.
# (The rule has to be written below after EXPSYM_SRCS has been
# determined.)
LIB_EXPSYM=	m.expsym

COPTS+=	${${ACTIVE_CC} == "gcc":? -frounding-math :}

.if (${LIBC_MACHINE_CPU} == "aarch64")
.PATH: ${.CURDIR}/arch/aarch64
ARCH_SRCS = e_sqrt.S e_sqrtf.S s_fabsf.S
ARCH_SRCS+= s_fma.S s_fmaf.S s_fmax.S s_fmaxf.S s_fmin.S s_fminf.S
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS+= fenv.c
.endif
COMMON_SRCS+= s_nexttoward.c s_rintl.c
COMMON_SRCS+= e_sqrtl.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

.elif (${LIBC_MACHINE_ARCH} == "alpha")
.PATH: ${.CURDIR}/arch/alpha
ARCH_SRCS = s_copysign.S s_copysignf.S lrint.S
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
COPTS+=	-mfloat-ieee -mieee-with-inexact -mfp-trap-mode=sui -mtrap-precision=i

# alpha doesn't have symbols for:
#
#	feclearexcept
#	fegetexceptflag
#	fegetround
#	feraiseexcept
#	fesetexceptflag
#	fesetround
#	fetestexcept
#
# Instead, they are static inlines in fenv.h.  So we won't use
# m.fenv.expsym.
#
EXPSYM_SRCS=	m.common.expsym m.ieee754.expsym m.alpha.expsym

.elif (${LIBC_MACHINE_CPU} == "arm")
.PATH.c: ${.CURDIR}/arch/arm
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS+= fenv.c
EXPSYM_SRC_MD=	m.armhf.expsym
.endif
.for f in fenv.c lrint.S lrintf.S s_fabsf.S s_fma.S s_fmaf.S
COPTS.$f +=	-mfpu=vfp
.endfor
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
.if (${MKSOFTFLOAT} == "no")
.PATH.S: ${.CURDIR}/arch/arm
ARCH_SRCS = e_sqrt.S e_sqrtf.S lrint.S lrintf.S s_fabsf.S s_fma.S s_fmaf.S
.endif

.elif (${LIBC_MACHINE_ARCH} == "ia64")
.PATH: ${.CURDIR}/arch/ia64
COMMON_SRCS += fenv.c

.elif (${LIBC_MACHINE_ARCH} == "hppa")
.PATH.c: ${.CURDIR}/arch/hppa
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

.elif (${LIBC_MACHINE_ARCH} == "sparc")
.PATH: ${.CURDIR}/arch/sparc
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

.elif (${LIBC_MACHINE_ARCH} == "sparc64")
.PATH: ${.CURDIR}/arch/sparc64
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_rintl.c
.ifndef _COMPAT_M32_MK_
COMMON_SRCS+= s_nexttoward.c
.endif
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

.elif ((${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "x86_64"))

# XXX consider making this LIBC_MACHINE_ARCH?
.if (${MACHINE_ARCH} == "x86_64")
.PATH: ${.CURDIR}/arch/x86_64
.endif
.PATH:	${.CURDIR}/arch/i387

COMMON_SRCS+= fenv.c s_nexttoward.c s_rintl.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_expf.S e_fmod.S e_log.S \
	    e_logf.S e_log10.S e_log10f.S e_log2.S e_log2f.S e_remainder.S \
	    e_remainderf.S e_scalb.S e_scalbf.S e_sqrt.S e_sqrtf.S s_atan.S \
	    s_atanf.S s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S \
	    s_finite.S s_finitef.S s_floor.S s_floorf.S \
	    s_log1p.S s_log1pf.S s_logb.S s_logbf.S s_logbl.S \
	    s_rint.S s_rintf.S s_rintl.S \
	    s_scalbn.S s_scalbnf.S \
	    s_significand.S s_significandf.S \
	    lrint.S
# do not pick up the i387 asm version for the following functions;
# it is incorrect
.for f in cos cosf modf ilogb ilogbl ilogbf sin sinf tan tanf
s_${f}.o s_${f}.pico s_${f}.po s_${f}.go s_${f}.d: s_${f}.c
.endfor

.if (${MACHINE_ARCH} == "i386")
SUBDIR=arch/i387
.endif

.elif (${LIBC_MACHINE_ARCH} == "m68k")
.if defined(M68060)
.PATH:	${.CURDIR}/arch/m68060
.include "${.CURDIR}/arch/m68060/Makefile.list"
COPTS+= -m68060
.PATH:	${.CURDIR}/arch/m68k
ARCH_SRCS += s_ceil.S s_copysign.S s_finite.S s_floor.S s_rint.S
.elif defined(M68040)
.PATH: ${.CURDIR}/arch/m68k
COPTS+= -m68040
ARCH_SRCS = s_copysign.S s_finite.S
.endif
.if (${MKSOFTFLOAT} == "no")
.PATH:	${.CURDIR}/arch/mc68881 ${.CURDIR}/arch/m68k
ARCH_SRCS = e_acos.S e_asin.S e_atanh.S e_cosh.S e_exp.S e_fmod.S e_log.S \
	    e_log10.S e_remainder.S e_scalb.S e_sinh.S e_sqrt.S s_atan.S \
	    s_ceil.S s_copysign.S s_cos.S s_expm1.S s_finite.S s_floor.S \
	    s_log1p.S s_logb.S s_rint.S s_scalbn.S s_sin.S s_tan.S s_tanh.S
COMMON_SRCS += fenv.c
.endif
COMMON_SRCS += s_nexttoward.c s_rintl.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
# end of m68k

.elif (${LIBC_MACHINE_ARCH} == "vax")
.PATH:	${.CURDIR}/arch/vax

#NOIEEE_ARCH+= s_fmax.c s_fmaxf.c s_fmaxl.c
#NOIEEE_ARCH+= n_infnan.S n_argred.S n_sqrt.S
#ARCH_SRCS = n_atan2.S n_cabs.S n_cbrt.S n_support.S n_sincos.S n_tan.S
# XXX - ripped out due to lack of the insn polyd in the Mariah chip,
# and emulation code isn't written yet.
ARCH_SRCS = n_scalbn.S
WARNS?=5

# No IEEE 754 stuff.  Not all of it is actually specific to IEEE 754,
# but it's missing anyway: PR port-vax/57881.
EXPSYM_SRCS=	m.common.expsym m.vax.expsym

.elif (${LIBC_MACHINE_CPU} == "riscv")
.PATH:	${.CURDIR}/arch/riscv

COMMON_SRCS+= s_nexttoward.c s_rintl.c

.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS += fenv.c
ARCH_SRCS = e_sqrt.S e_sqrtf.S
ARCH_SRCS += s_copysign.S s_copysignf.S
ARCH_SRCS += s_fabs.S s_fabsf.S
ARCH_SRCS += s_fma.S s_fmaf.S
ARCH_SRCS += s_fmax.S s_fmaxf.S
ARCH_SRCS += s_fmin.S s_fminf.S
.endif

.elif (${LIBC_MACHINE_CPU} == "powerpc")
.PATH:	${.CURDIR}/arch/powerpc
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS += fenv.c
.endif
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
ARCH_SRCS += s_fma.S s_fmaf.S

.elif (${LIBC_MACHINE_CPU} == "mips")
.PATH:	${.CURDIR}/arch/mips
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS += fenv.c
.endif
.if ${MACHINE_MIPS64} && (!defined(CPUFLAGS) || empty(CPUFLAGS:M-mabi=32))
COMMON_SRCS+= s_nexttoward.c
COMMON_SRCS+= s_rintl.c
.endif
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

.  if ${MKSOFTFLOAT} == "no"
.    if ${MACHINE_MIPS64} && (!defined(CPUFLAGS) || empty(CPUFLAGS:M-mabi=32))
EXPSYM_SRC_MD=	m.mips64hf.expsym
.    else
EXPSYM_SRC_MD=	m.mipshf.expsym
.    endif
.  else
.    if ${MACHINE_MIPS64} && (!defined(CPUFLAGS) || empty(CPUFLAGS:M-mabi=32))
EXPSYM_SRC_MD=	m.mips64.expsym
.    else
EXPSYM_SRC_MD=	m.mips.expsym
.    endif
.  endif

.elif (${LIBC_MACHINE_CPU} == "sh3")
.PATH:	${.CURDIR}/arch/sh3
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS += fenv.c
.endif
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
.endif
# End of list of CPU tests

WARNS?=5

.PATH:	${.CURDIR}/man
.PATH:	${.CURDIR}/src
.PATH:	${.CURDIR}/noieee_src

m.expsym: ${EXPSYM_SRCS}
	${_MKTARGET_CREATE}
	LC_ALL=C sort -m ${.ALLSRC} >${.TARGET}.tmp && \
	${MV} ${.TARGET}.tmp ${.TARGET}
CLEANFILES+=	m.expsym m.expsym.tmp

.if (${LIBC_MACHINE_ARCH} == "alpha")
COPTS+= -mfp-rounding-mode=d
.endif

.if (${LIBC_MACHINE_ARCH} != "vax")
CPPFLAGS+= -D_MULTI_LIBM -D_POSIX_MODE
# XXX noieee libm is gross
COPTS+=	-fno-strict-aliasing
.endif
CPPFLAGS+=-DLIBM_SCCS

.if (${MKSOFTFLOAT} != "no" || ${MACHINE_ARCH} == "m68000")
.PATH:	${.CURDIR}/softfloat
.include "${.CURDIR}/../libc/libcincludes.mk"
CPPFLAGS+=	-I${ARCHDIR}/softfloat
COMMON_SRCS += \
	feclearexcept.c \
	fedisableexcept.c \
	feenableexcept.c \
	fegetenv.c \
	fegetexcept.c \
	fegetexceptflag.c \
	fegetround.c \
	feholdexcept.c \
	feraiseexcept.c \
	fesetenv.c \
	fesetexceptflag.c \
	fesetround.c \
	fetestexcept.c \
	feupdateenv.c
.endif

LIB=	m
COMMON_SRCS+= b_exp.c b_log.c \
	b_tgamma.c b_tgammal.c \
	e_acos.c e_acosf.c e_acosl.c \
	e_acosh.c e_acoshf.c e_acoshl.c \
	e_asin.c e_asinf.c e_asinl.c \
	e_atan2.c e_atan2f.c e_atan2l.c \
	e_atanh.c e_atanhf.c e_atanhl.c \
	e_cosh.c e_coshf.c e_coshl.c \
	e_exp.c  e_expf.c \
	e_fmod.c e_fmodf.c e_fmodl.c \
	e_hypot.c e_hypotf.c e_hypotl.c \
	e_j0.c e_j0f.c \
	e_j1.c e_j1f.c \
	e_jn.c e_jnf.c \
	e_lgammal.c \
	e_lgamma_r.c e_lgammaf_r.c e_lgammal_r.c e_log.c \
	e_log2.c e_log10.c e_log10f.c e_log2f.c e_logf.c \
	e_pow.c e_powf.c e_powl.c \
	e_rem_pio2.c e_rem_pio2f.c \
	e_remainder.c e_remainderf.c e_remainderl.c \
	e_scalb.c e_scalbf.c \
	e_sinh.c e_sinhf.c e_sinhl.c \
	e_sqrt.c e_sqrtf.c e_sqrtl.c \
	invtrig.c \
	k_cos.c k_cosf.c \
	k_rem_pio2.c k_rem_pio2f.c \
	k_sin.c k_sinf.c \
	k_standard.c k_tan.c k_tanf.c \
	s_asinh.c s_asinhf.c s_asinhl.c \
	s_atan.c s_atanf.c s_atanl.c \
	s_cbrt.c s_cbrtf.c s_cbrtl.c \
	s_ceil.c s_ceilf.c s_ceill.c s_copysign.c s_copysignf.c s_copysignl.c \
	s_cos.c s_cosf.c s_cosl.c \
	s_cospi.c s_cospif.c s_cospil.c \
	s_erf.c s_erff.c s_erfl.c \
	s_exp2.c s_exp2f.c s_expl.c s_exp2l.c s_expm1.c s_expm1f.c \
	s_fabsf.c s_fabsl.c \
	s_finite.c s_finitef.c \
	s_floor.c s_floorf.c s_floorl.c s_frexpf.c \
	s_ilogb.c s_ilogbf.c s_ilogbl.c \
	s_isinff.c s_isnanf.c s_lib_version.c s_log1p.c \
	s_llrint.c s_llrintf.c s_llrintl.c \
	s_llround.c s_llroundf.c s_llroundl.c \
	s_lrint.c s_lrintf.c s_lrintl.c \
	s_lround.c s_lroundf.c s_lroundl.c \
	s_log1pf.c s_logb.c s_logbf.c s_logbl.c s_logl.c \
	s_matherr.c s_modff.c s_modfl.c \
	s_nearbyint.c s_nextafter.c s_nextafterl.c \
	s_nextafterf.c s_nexttowardf.c \
	s_remquo.c s_remquof.c s_remquol.c \
	s_rint.c s_rintf.c \
	s_round.c s_roundf.c s_roundl.c s_scalbn.c \
	s_scalbnf.c s_scalbnl.c s_signgam.c s_significand.c s_significandf.c \
	s_sincos.c s_sincosf.c s_sincosl.c s_sin.c \
	s_sinf.c s_sinl.c \
	s_sinpi.c s_sinpif.c s_sinpil.c \
	s_tan.c s_tanf.c s_tanl.c \
	s_tanh.c s_tanhf.c s_tanhl.c \
	s_tanpi.c s_tanpif.c s_tanpil.c \
	s_tgammaf.c \
	s_trunc.c s_truncf.c s_truncl.c \
	w_acos.c w_acosf.c w_acosh.c w_acoshf.c w_asin.c w_asinf.c w_atan2.c \
	w_atan2f.c w_atanh.c w_atanhf.c w_cosh.c w_coshf.c \
	w_drem.c w_dremf.c w_exp.c w_expf.c w_fmod.c w_fmodf.c w_fmodl.c \
	w_gamma.c w_gamma_r.c w_gammaf.c w_gammaf_r.c w_hypot.c w_hypotf.c \
	w_j0.c \
	w_j0f.c w_j1.c w_j1f.c w_jn.c w_jnf.c w_lgamma.c w_lgamma_r.c \
	w_lgammaf.c w_lgammaf_r.c w_log.c w_log10.c w_log10f.c w_log2.c \
	w_log2f.c w_logf.c \
	w_pow.c w_powf.c w_remainder.c w_remainderf.c w_scalb.c w_scalbf.c \
	w_sinh.c w_sinhf.c w_sqrt.c w_sqrtf.c w_sqrtl.c \
	s_frexp.c s_frexpl.c s_modf.c \
	s_fmax.c s_fmaxf.c s_fmaxl.c \
	s_fmin.c s_fminf.c s_fminl.c s_fdim.c

.PATH:	${.CURDIR}/compat
COMMON_SRCS+= compat_cabs.c compat_cabsf.c
# XXX our compatibility cabs() is different!
COPTS.compat_cabs.c=	${${ACTIVE_CC} == "gcc":? -fno-builtin-cabs :}
COPTS.compat_cabsf.c=	${${ACTIVE_CC} == "gcc":? -fno-builtin-cabsf :}

# math routines for non-IEEE architectures.
NOIEEE_SRCS = n_asincos.c n_acosh.c n_asinh.c n_atan.c n_atanh.c n_atanhf.c \
	n_cosh.c \
	n_erf.c n_exp.c n_exp2.c n_exp2f.c n_exp__E.c n_expm1.c \
	n_floor.c n_fmod.c n_frexpf.c n_frexpl.c \
	n_gamma.c n_ilogb.c \
	n_lgamma.c n_j0.c n_j1.c n_jn.c n_log.c n_log10.c n_log1p.c \
	n_log2.c n_log__L.c n_pow.c n_sinh.c n_tanh.c \
	n_sincos.c n_sincos1.c n_tan.c \
	n_round.c n_roundf.c n_lround.c n_lroundf.c \
	n_fmax.c n_fmaxf.c n_fmin.c n_fminf.c
#	n_sqrt.c n_argred.c n_infnan.c n_atan2.c n_cabs.c n_cbrt.c n_support.c


# NetBSD's C library supplies these functions:
#COMMON_SRCS+=	s_fabs.c s_frexp.c s_isinf.c s_isnan.c s_ldexp.c s_modf.c

.if (${LIBC_MACHINE_ARCH} == "vax")
SRCS=	${NOIEEE_SRCS} ${NOIEEE_ARCH}
.else
SRCS=	${COMMON_SRCS}
.endif

.ifdef ARCH_ADDS
SRCS+= ${ARCH_ADDS}
.endif

# Substitute common sources with any arch specific sources
.for i in ${ARCH_SRCS} ${NOIEEE_ARCH}
    SRCS:=${SRCS:S/^${i:S/.S/.c/}/$i/}
.endfor

.if (${LIBC_MACHINE_ARCH} == "vax") # XXX until POLYD is written.
.PATH:	${.CURDIR}/arch/vax
SRCS:=${SRCS} n_sqrt.S n_argred.S n_infnan.S n_atan2.S n_cabs.S n_cbrt.S \
	n_support.S n_scalbn.S
.endif

.if (${LIBC_MACHINE_ARCH} == "i386")
# XXX this gets miscompiled. There should be a better fix.
COPTS.s_tanh.c+= -O0
.endif

MAN+=	acos.3 acosh.3 asin.3 asinh.3 atan.3 atan2.3 atanh.3 \
	ceil.3 copysign.3 cos.3 cosh.3 \
	erf.3 exp.3 \
	fabs.3 finite.3 fma.3 fmod.3 frexp.3 hypot.3 \
	ieee_test.3 ilogb.3 isinff.3 j0.3 ldexp.3 lgamma.3 log.3 lrint.3 \
	math.3 modf.3 nextafter.3 pow.3 \
	remainder.3 rint.3 round.3 \
	scalbn.3 sincos.3 sin.3 sinh.3 sqrt.3 \
	tan.3 tanh.3 trunc.3 fmax.3 fdim.3

# fenv.h interface
MAN+=	feclearexcept.3 feenableexcept.3 fegetenv.3 fegetround.3 fenv.3
MLINKS+=feclearexcept.3 fegetexceptflag.3	\
	feclearexcept.3 feraiseexcept.3		\
	feclearexcept.3 fesetexceptflag.3	\
	feclearexcept.3 fetestexcept.3
MLINKS+=feenableexcept.3 fedisableexcept.3	\
	feenableexcept.3 fegetexcept.3
MLINKS+=fegetenv.3 feholdexcept.3		\
	fegetenv.3 fesetenv.3			\
	fegetenv.3 feupdateenv.3
MLINKS+=fegetround.3 fesetround.3

MLINKS+=acos.3 acosf.3
MLINKS+=acosh.3 acoshf.3
MLINKS+=asin.3 asinf.3
MLINKS+=asinh.3 asinhf.3
MLINKS+=atan.3 atanf.3
MLINKS+=atan2.3 atan2f.3
MLINKS+=atanh.3 atanhf.3
MLINKS+=ceil.3 ceilf.3 \
	ceil.3 ceill.3 \
	ceil.3 floor.3 \
	ceil.3 floorf.3 \
	ceil.3 floorl.3
MLINKS+=copysign.3 copysignf.3 \
	copysign.3 copysignl.3
MLINKS+=cos.3 cosf.3
MLINKS+=cos.3 cosl.3
MLINKS+=cosh.3 coshf.3
MLINKS+=cosh.3 coshl.3
MLINKS+=erf.3 erff.3 \
	erf.3 erfl.3 \
	erf.3 erfc.3 \
	erf.3 erfcf.3 \
	erf.3 erfcl.3
MLINKS+=exp.3 expf.3 exp.3 expm1.3 exp.3 expm1f.3 			\
	exp.3 exp2.3 exp.3 exp2f.3 exp.3 expl.3				\
	exp.3 expm1l.3 exp.3 exp2l.3
MLINKS+=log.3 logf.3 \
	log.3 logl.3 \
	log.3 log10.3 \
	log.3 log10f.3 \
	log.3 log10l.3 \
	log.3 log1p.3 \
	log.3 log1pf.3 \
	log.3 log1pl.3 \
	log.3 log2.3 \
	log.3 log2f.3 \
	log.3 log2l.3
MLINKS+=pow.3 powf.3
MLINKS+=pow.3 powl.3
MLINKS+=fabs.3 fabsf.3 \
	fabs.3 fabsl.3
MLINKS+=finite.3 finitef.3
MLINKS+=fmod.3 fmodf.3 \
	fmod.3 fmodl.3
MLINKS+=hypot.3 hypotf.3 \
	hypot.3 hypotl.3
MLINKS+=ieee_test.3 logb.3 ieee_test.3 logbf.3 ieee_test.3 logbl.3
MLINKS+=ieee_test.3 scalb.3 ieee_test.3 scalbf.3
MLINKS+=ieee_test.3 significand.3 ieee_test.3 significandf.3
MLINKS+=ilogb.3 ilogbf.3 ilogb.3 ilogbl.3
MLINKS+=isinff.3 isnanf.3
MLINKS+=j0.3 j0f.3 j0.3 j1.3 j0.3 j1f.3 j0.3 jn.3 j0.3 jnf.3 \
	j0.3 y0.3 j0.3 y0f.3 j0.3 y1.3 j0.3 y1f.3 j0.3 yn.3 j0.3 ynf.3
MLINKS+=ldexp.3 ldexpf.3 \
	ldexp.3 ldexpl.3
MLINKS+=lgamma.3 lgammaf.3 lgamma.3 lgamma_r.3 lgamma.3 lgammaf_r.3 \
	lgamma.3 gamma.3 lgamma.3 gammaf.3 lgamma.3 gamma_r.3 \
	lgamma.3 gammaf_r.3 lgamma.3 tgamma.3 lgamma.3 tgammaf.3 \
	lgamma.3 lgammal.3 lgamma.3 lgammal_r.3 lgamma.3 tgammal.3
MLINKS+=modf.3 modff.3 \
	modf.3 modfl.3
MLINKS+=nextafter.3 nextafterf.3 \
	nextafter.3 nextafterl.3 \
	nextafter.3 nexttoward.3 \
	nextafter.3 nexttowardf.3 \
	nextafter.3 nexttowardl.3
MLINKS+=lrint.3 lrintf.3 lrint.3 lrintl.3 lrint.3 llrint.3 lrint.3 llrintf.3 lrint.3 llrintl.3
MLINKS+=remainder.3 remainderf.3 \
	remainder.3 remainderl.3 \
	remainder.3 remquo.3 \
	remainder.3 remquof.3 \
	remainder.3 remquol.3
MLINKS+=rint.3 rintf.3 \
	rint.3 rintl.3 \
	rint.3 nearbyint.3 \
	rint.3 nearbyintf.3 \
	rint.3 nearbyintl.3
MLINKS+=scalbn.3 scalbnf.3 \
	scalbn.3 scalbnl.3
MLINKS+=sin.3 sinf.3 \
	sin.3 sinl.3
MLINKS+=sinh.3 sinhf.3
MLINKS+=sinh.3 sinhl.3
MLINKS+=sqrt.3 sqrtf.3 sqrt.3 sqrtl.3 \
	sqrt.3 cbrt.3 sqrt.3 cbrtf.3 sqrt.3 cbrtl.3
MLINKS+=tan.3 tanf.3 \
	tan.3 tanl.3
MLINKS+=tanh.3 tanhf.3 \
	tanh.3 tanhl.3
MLINKS+=round.3 roundf.3 \
	round.3 roundl.3
MLINKS+=trunc.3 truncf.3 \
	trunc.3 truncl.3
MLINKS+=fmax.3 fmaxl.3
MLINKS+=fmax.3 fmaxf.3
MLINKS+=fmax.3 fmin.3
MLINKS+=fmax.3 fminl.3
MLINKS+=fmax.3 fminf.3
MLINKS+=fdim.3 fdiml.3
MLINKS+=fdim.3 fdimf.3
MLINKS+=fma.3 fmaf.3 \
	fma.3 fmal.3
MLINKS+=frexp.3 frexpf.3 \
	frexp.3 frexpl.3

.if (${MKCOMPLEX} != "no")
.include "${.CURDIR}/complex/Makefile.inc"
.endif

COPTS.compat_cabs.c+=	${${ACTIVE_CC} == "clang":? -Wno-incompatible-library-redeclaration :}
COPTS.compat_cabsf.c+=	${${ACTIVE_CC} == "clang":? -Wno-incompatible-library-redeclaration :}
CWARNFLAGS.clang+=		-Wno-error=implicit-int-float-conversion

.include "${.CURDIR}/compiler_rt/Makefile.inc"
.include "${.CURDIR}/gen/Makefile.inc"

.include <bsd.lib.mk>
.include <bsd.subdir.mk>
@


1.241
log
@libm: Add missing fma(3) and variants for hppa.

Fixes a build error on pkgsrc/lang/python312. Ok'ed by skrll@@.
Should be pulled up to netbsd-10.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.240 2024/10/29 01:34:18 nat Exp $
d57 1
a57 2
LINTFLAGS.s_logl.c+=	-X 161	# constant in conditional context
LINTFLAGS.s_logl.c+=	-X 193	# unreachable statement (due to 161)
@


1.240
log
@Pull in missing functions for MKSOFTFLOAT.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.239 2024/07/03 06:26:03 mrg Exp $
d135 1
@


1.239
log
@move a COPTS setting after bsd.own.mk.

the riscv64 compat build trips on this saying:
   bsd.rv32.mk" line 25: while evaluating variable "COPTS": while evaluating condition " == "gcc"": Bad condition
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.238 2024/06/10 12:49:29 riastradh Exp $
d199 1
a199 1
COMMON_SRCS += fenv.c s_nexttoward.c s_rintl.c
d201 1
@


1.238
log
@libm: Fix arm expected symbol list harder.

LIB is not defined by the time we need it in the m.expsym rule, so
just say m here like in the other lines.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.237 2024/06/10 12:47:40 riastradh Exp $
a16 1
COPTS+=			${${ACTIVE_CC} == "gcc":? -frounding-math :}
d78 2
@


1.238.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.242 2025/04/06 23:03:06 rillig Exp $
d17 1
d58 2
a59 1
LINTFLAGS.s_logl.c+=	-X 193	# unreachable statement (due to constant condition)
a78 2
COPTS+=	${${ACTIVE_CC} == "gcc":? -frounding-math :}

a133 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
d198 1
a198 1
COMMON_SRCS += fenv.c
a199 1
COMMON_SRCS += s_nexttoward.c s_rintl.c
@


1.237
log
@libm: Fix mips and arm expected symbol lists.

Had forgotten that they were overriding LIB_EXPSYM.  Use a new
intermediate variable EXPSYM_SRC_MD for that.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.236 2024/06/09 14:10:05 riastradh Exp $
d116 1
a116 1
EXPSYM_SRC_MD=	${LIB}.armhf.expsym
@


1.236
log
@libm: Factor out common expected symbol list.

Should substantially reduce the maintenance burden.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.235 2024/05/14 14:34:35 riastradh Exp $
d65 2
d68 1
a68 1
EXPSYM_SRCS+=	m.${LIBC_MACHINE_ARCH}.expsym
d70 1
a70 1
EXPSYM_SRCS+=	m.${LIBC_MACHINE_CPU}.expsym
d116 1
a116 1
LIB_EXPSYM=	${LIB}.armhf.expsym
d254 1
a254 1
LIB_EXPSYM=	m.mips64hf.expsym
d256 1
a256 1
LIB_EXPSYM=	m.mipshf.expsym
d260 1
a260 1
LIB_EXPSYM=	m.mips64.expsym
d262 1
a262 1
LIB_EXPSYM=	m.mips.expsym
@


1.235
log
@libm: Fix powerpc64 build.

- Include fenv.c and fma(3) symbols (which just use the FMADD
  instruction).
- Note the .FN symbols in libm for the asm functions.  The FN symbols
  point at the function _descriptors_; the .FN symbols point at the
  first instruction of the function.

XXX Unclear why we have the .FN symbols for asm functions but not for
C functions.  I'm not sure we should be exporting them.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.234 2024/05/09 14:42:09 riastradh Exp $
d62 15
d95 15
d212 4
d279 6
@


1.234
log
@libm: Add frexpf and frexpl on VAX.

These are trivial subroutines, not symbol aliases, for separate
reasons:

- frexpf has a different ABI from frexp (float vs double argument)

- frexp is defined in libc, not libm, so although long double is the
  same as double, frexpl can't be an alias in libm of a symbol
  defined in libc
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.233 2024/05/09 00:04:23 riastradh Exp $
d197 1
a197 1
.elif (${LIBC_MACHINE_ARCH} == "powerpc")
@


1.233
log
@libm: Split expected symbols in mips further by 32-bit vs 64-bit.

32-bit has binary64 long double, same as double; 64-bit has binary128
long double, which is implemented with a few more symbols in libm
(which should maybe be hidden internal symbols, but let's get this
diagnostic measure in the build working before we think about
possibly deleting private symbols).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.232 2024/05/08 23:28:07 riastradh Exp $
d362 3
a364 2
	n_erf.c n_exp.c n_exp2.c n_exp2f.c n_exp__E.c n_expm1.c n_floor.c \
	n_fmod.c n_gamma.c n_ilogb.c \
@


1.232
log
@libm: Split expected symbols on arm and mips by hard/soft float.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.231 2024/05/05 22:52:19 riastradh Exp $
a208 1
LIB_EXPSYM=	${LIB}.mipshf.expsym
d216 14
@


1.231
log
@libm: long double is just double on hppa, so don't use s_rintl.c.

PR misc/58054
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.230 2024/05/05 14:53:22 riastradh Exp $
d84 1
d209 1
@


1.230
log
@libm: No s_rintl.c on mips32.

This is only for machines where long double is not double.

Not 100% sure this is the right criterion, but there's a good chance
it is.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.229 2024/05/05 11:07:49 riastradh Exp $
d100 1
a100 1
COMMON_SRCS+= fenv.c s_rintl.c
@


1.229
log
@libm: long double is just double on arm, so don't use s_rintl.c.

PR misc/58054
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.228 2024/05/05 02:50:11 riastradh Exp $
a208 1
COMMON_SRCS+= s_rintl.c
d211 1
@


1.228
log
@libm: New s_rintl.S for x86.

Prompted by PR lib/58054.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.227 2024/03/26 20:12:47 rillig Exp $
a84 1
COMMON_SRCS+= s_rintl.c
@


1.227
log
@libm/s_logl: suppress lint warnings

Seen on sparc64.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.226 2024/01/26 22:01:40 nros Exp $
d134 4
a137 2
	    s_rint.S s_rintf.S s_scalbn.S s_scalbnf.S s_significand.S \
	    s_significandf.S lrint.S
@


1.226
log
@sinhf is in the same manual page as sinh not sin
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.225 2024/01/26 19:27:30 nros Exp $
d58 3
@


1.225
log
@Add the long double math functions recently added from FreeBSD to their related man pages
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.224 2024/01/21 18:53:15 christos Exp $
d486 1
a486 1
MLINKS+=sin.3 sinhf.3
@


1.224
log
@Bring in more long double functions from FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.223 2023/12/21 06:32:20 jklos Exp $
d422 1
d429 2
a430 1
	exp.3 exp2.3 exp.3 exp2f.3
d432 1
d435 1
d438 1
d440 2
a441 1
	log.3 log2f.3
d443 1
d462 2
a463 1
	lgamma.3 gammaf_r.3 lgamma.3 tgamma.3 lgamma.3 tgammaf.3
d471 1
a471 1
MLINKS+=lrint.3 lrintf.3 lrint.3 llrint.3 lrint.3 llrintf.3
d473 1
d475 2
a476 1
	remainder.3 remquof.3
d484 2
a485 1
MLINKS+=sin.3 sinf.3
d487 1
d490 4
a493 2
MLINKS+=tan.3 tanf.3
MLINKS+=tanh.3 tanhf.3
@


1.223
log
@

Fix building with M68040 and M68060 options.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.222 2023/10/08 13:47:51 he Exp $
d259 11
a269 4
COMMON_SRCS+= b_exp.c b_log.c b_tgamma.c \
	e_acos.c e_acosf.c e_acosh.c e_acoshf.c e_asin.c e_asinf.c \
	e_atan2.c e_atan2f.c e_atanh.c e_atanhf.c e_cosh.c e_coshf.c e_exp.c \
	e_expf.c e_fmod.c e_fmodf.c e_fmodl.c e_hypot.c e_hypotf.c \
d271 15
a285 5
	e_j1.c e_j1f.c e_jn.c e_jnf.c e_lgamma_r.c e_lgammaf_r.c e_log.c \
	e_log2.c e_log10.c e_log10f.c e_log2f.c e_logf.c e_pow.c e_powf.c \
	e_rem_pio2.c e_rem_pio2f.c e_remainder.c e_remainderf.c e_scalb.c \
	e_scalbf.c e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c e_sqrtl.c \
	k_cos.c k_cosf.c k_rem_pio2.c k_rem_pio2f.c k_sin.c k_sinf.c \
d287 3
a289 2
	ldbl_dummy.c \
	s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_cbrt.c s_cbrtf.c s_cbrtl.c \
d291 5
a295 2
	s_cos.c s_cosf.c s_erf.c \
	s_erff.c s_exp2.c s_exp2f.c s_expm1.c s_expm1f.c s_fabsf.c s_fabsl.c \
d304 6
a309 3
	s_log1pf.c s_logb.c s_logbf.c s_logbl.c \
	s_matherr.c s_modff.c s_modfl.c s_nearbyint.c s_nextafter.c s_nextafterl.c \
	s_nextafterf.c s_nexttowardf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c \
d313 6
a318 1
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_tgammaf.c \
@


1.222
log
@libm Makefile: add fma() functions for mips.

This pushed the ramdisk size, so that needed to be bumped as well.
Otherwise, there were no build issues for either 32 or 64 bit mips.
Sort-of OK'ed by simonb@@.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.221 2023/08/08 02:09:42 rin Exp $
d147 1
a147 1
COPTS+=-m68060
d152 1
a152 1
COPTS+=-m68040
d154 1
a154 1
.else
a162 1
.endif
@


1.221
log
@libm: Add fma(3) and friends to m68k
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.220 2023/07/09 03:57:09 rin Exp $
d210 1
@


1.220
log
@libm: Add missing fma(3) and friends for sh3.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.219 2023/04/10 19:23:02 rillig Exp $
d164 1
@


1.219
log
@libm: suppress lint warning about '>>' on signed integer

GCC has implementation-defined behavior for that case.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.218 2022/08/27 09:56:21 christos Exp $
d215 1
@


1.218
log
@Fix vax build.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.217 2022/08/27 08:31:58 christos Exp $
d56 2
a57 2
# compiler_rt uses typeof() and __extension__
LINTFLAGS += -g
@


1.218.2.1
log
@Pull up following revision(s) (requested by riastradh in ticket #320):

	lib/libm/src/ldbl_dummy.c: revision 1.3
	distrib/sets/lists/debug/shl.mi: revision 1.303
	lib/libm/src/ldbl_dummy.c: revision 1.4
	lib/libm/src/namespace.h: revision 1.17
	lib/libm/src/s_llrintl.c: revision 1.3
	lib/libm/Makefile: revision 1.220
	lib/libm/src/s_lrintl.c: revision 1.3
	lib/libm/man/sincos.3: revision 1.2
	lib/libm/man/math.3: revision 1.29
	distrib/sets/lists/base/shl.mi: revision 1.946
	lib/libm/shlib_version: revision 1.18

libm: Fill in more dummy long double transcendental functions.
This should cover everything from C99.

libm: Need <math.h> for __HAVE_LONG_DOUBLE.
Fixes missing definitions of lrintl, llrintl on various platforms.

Add (newly added): expm1l log1pl log2l lgammal tgammal
so that the library gets the correct symbols defined in it.

libm: Bump minor for new long double transcendental functions.
XXX Still missing: remquol, remainderl.

fix cross references (from Anon Ymous)

Correct history (Brad Smith)

libm: Add missing fma(3) and friends for sh3.

libm: Add dummy remainderl and remquol.
These are pretty bad -- these aren't transcendental functions; not
rocket science to make them correctly rounded -- but let's just make
sure they're available in libm for netbsd-10.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.218 2022/08/27 09:56:21 christos Exp $
a214 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.218.2.2
log
@Pull up following revision(s) (requested by he in ticket #397):

	lib/libm/Makefile: revision 1.222
	distrib/evbmips/instkernel/ramdisk/Makefile: revision 1.19

libm Makefile: add fma() functions for mips.

This pushed the ramdisk size, so that needed to be bumped as well.
Otherwise, there were no build issues for either 32 or 64 bit mips.
Sort-of OK'ed by simonb@@.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.218.2.1 2023/08/11 14:44:19 martin Exp $
a208 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.218.2.3
log
@Pull up following revision(s) (requested by jklos in ticket #529):

	lib/libm/Makefile: revision 1.223

Fix building with M68040 and M68060 options.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.218.2.2 2023/10/08 18:48:20 martin Exp $
d147 1
a147 1
COPTS+= -m68060
d152 1
a152 1
COPTS+= -m68040
d154 1
a154 1
.endif
d163 1
@


1.218.2.4
log
@Pull up following revision(s) (requested by riastradh in ticket #547):

	lib/libm/Makefile: revision 1.221 (patch)

libm: Add fma(3) and friends to m68k
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.218.2.3 2023/12/31 12:41:02 martin Exp $
a162 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.218.2.5
log
@Pull up following revision(s) (requested by tsutsui in ticket #1061):

	lib/libm/Makefile: revision 1.241

libm: Add missing fma(3) and variants for hppa.

Fixes a build error on pkgsrc/lang/python312. Ok'ed by skrll@@.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.218.2.4 2024/01/14 15:43:45 martin Exp $
d98 1
a98 3
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_rintl.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.217
log
@Add sincos{,f,l} from FreeBSD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.216 2022/06/23 16:42:50 martin Exp $
d316 1
a316 1
	n_sincos.c n_tan.c \
@


1.216
log
@Use "fmadd" to implement fma(3) on ppc.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.215 2022/06/23 07:50:14 he Exp $
d285 2
a286 1
	s_scalbnf.c s_scalbnl.c s_signgam.c s_significand.c s_significandf.c s_sin.c \
d358 1
a358 1
	scalbn.3 sin.3 sinh.3 sqrt.3 \
@


1.215
log
@libm: build fma(3), fmaf(3), fmal(3) on powerpc.

For now this builds the C version, for completeness, so
that e.g. lang/ocaml can be configured & built.  However,
googling reveals that powerpc does have a "fused multiply add"
instruction, ref.
https://www.ibm.com/docs/en/aix/7.1?topic=set-fmadd-fma-floating-multiply-add-instruction
so this could probably be taken advantage of for a more
optimized version.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.214 2021/07/21 12:05:02 tnn Exp $
d198 1
@


1.214
log
@libm: build fma(3), fmaf(3), fmal(3) on alpha

Alpha has no hardware-assisted fused multiply-add, so the fallback
C implementation must be used. A basic smoke test shows the
implementation works for
"x * x - 1.0f" vs "fmaf(x, x, -1.0f)" with "volatile float x = 1.0008f;"
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.213 2021/04/25 23:43:20 christos Exp $
d197 1
@


1.213
log
@Use ${MACHINE_MIPS64}
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.212 2019/11/11 22:45:27 joerg Exp $
d74 1
@


1.212
log
@Update LLVM to 10.0.0git (01f3a59fb3e2542fce74c768718f594d0debd0da)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.211 2019/10/11 18:36:22 nros Exp $
d203 1
a203 2
.if (${MACHINE_ARCH} == "mips64eb" || ${MACHINE_ARCH} == "mips64el") \
    && (!defined(CPUFLAGS) || empty(CPUFLAGS:M-mabi=32))
@


1.211
log
@Add manpage links for frexpf and frexpl.

Manpage links were missing for frexpf and frexpl even thogh they were
mentioned in the manpage for frexp.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.210 2019/04/27 23:04:32 kamil Exp $
d468 1
@


1.210
log
@Add a C99 symbol to libm: nexttowardl

It's an alias for an already existing symbol nextafterl.

Patch obtained from <mgorny>

Detected by the LLVM buildbot breakage in tests.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.209 2019/04/25 23:17:24 maya Exp $
d459 2
@


1.210.2.1
log
@Pull up following revision(s) (requested by he in ticket #1747):

	lib/libm/Makefile: revision 1.222
	distrib/evbmips/instkernel/ramdisk/Makefile: revision 1.19

libm Makefile: add fma() functions for mips.

This pushed the ramdisk size, so that needed to be bumped as well.
Otherwise, there were no build issues for either 32 or 64 bit mips.
Sort-of OK'ed by simonb@@.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.210 2019/04/27 23:04:32 kamil Exp $
a206 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.209
log
@document cosl with MLINKS and in the man page
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.208 2019/04/17 07:45:23 mrg Exp $
d427 2
a428 1
	nextafter.3 nexttowardf.3
@


1.208
log
@also want s_nexttoward.c on riscv.  now tests/lib/libm links.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.207 2019/04/15 18:44:26 maya Exp $
d386 1
@


1.207
log
@we need rintl (long double) to link binaries
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.206 2019/02/22 18:17:22 maya Exp $
d179 1
a179 1
COMMON_SRCS+= s_rintl.c
@


1.206
log
@Default our libm to -frounding-math, if built with GCC.

The long-standing GCC default is to not respect rounding mode.
it looks like GCC 7 optimizes rint to a builtin, causing our few
rounding mode tests to fail.

Fixes PR port-amd64/54000: FP tests failing on amd64 since gcc7 import
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.205 2018/11/07 04:00:12 riastradh Exp $
d179 2
@


1.205
log
@Disable x87 implementations of sin, cos, tan.

The x87 hardware uses a bad approximation to pi for argument
reduction, and consequently yields bad answers for inputs near pi or
pi/2.

Tweak one tanf test whose doubly rounded output is a little too far
from the correct answer on the doubly rounded input.
@
text
@d1 1
a1 1
#  $NetBSD$
d17 1
@


1.204
log
@Disable sanitizers for libm and librt

The sanitizers are designed to use pristine OS versions of these libraries,
install interceptors for public symbols in them and link with them in every
sanitized executable.

Having unmodified base libraries (c, m, rt, pthread) also makes the system
usable with programs linking with them and without sanitization, as there
are no fatal issues during the resolving of missing symbols.

The remaining libraries like libutil, libintl etc are prebuilt with
sanitization and all their users in the MKSANITIZER=yes distribution are
required to use the same sanitizer.

libc and libpthread are already marked with the NOSANITIZER flag.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.203 2017/09/26 16:01:59 maya Exp $
d126 2
a127 2
	    s_atanf.S s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S s_cos.S \
	    s_cosf.S s_finite.S s_finitef.S s_floor.S s_floorf.S \
d130 1
a130 1
	    s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S lrint.S 
d133 1
a133 1
.for f in modf ilogb ilogbl ilogbf
@


1.204.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.210 2019/04/27 23:04:32 kamil Exp $
a16 1
COPTS+=			${${ACTIVE_CC} == "gcc":? -frounding-math :}
d126 2
a127 2
	    s_atanf.S s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S \
	    s_finite.S s_finitef.S s_floor.S s_floorf.S \
d130 1
a130 1
	    s_significandf.S lrint.S
d133 1
a133 1
.for f in cos cosf modf ilogb ilogbl ilogbf sin sinf tan tanf
a177 2
COMMON_SRCS+= s_nexttoward.c s_rintl.c

a382 1
MLINKS+=cos.3 cosl.3
d423 1
a423 2
	nextafter.3 nexttowardf.3 \
	nextafter.3 nexttowardl.3
@


1.204.2.2
log
@Mostly merge changes from HEAD upto 20200411
@
text
@d1 1
a1 1
#  $NetBSD$
a458 2
MLINKS+=frexp.3 frexpf.3 \
	frexp.3 frexpl.3
a465 1
CWARNFLAGS.clang+=		-Wno-error=implicit-int-float-conversion
@


1.203
log
@Add man page link for hypotl.3
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.202 2017/08/21 17:10:34 christos Exp $
d16 2
@


1.203.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.204 2018/06/13 08:19:36 kamil Exp $
a15 2
NOSANITIZER=		# defined

@


1.203.2.2
log
@Sync with HEAD, resolve a couple of conflicts
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.205 2018/11/07 04:00:12 riastradh Exp $
d126 2
a127 2
	    s_atanf.S s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S \
	    s_finite.S s_finitef.S s_floor.S s_floorf.S \
d130 1
a130 1
	    s_significandf.S lrint.S
d133 1
a133 1
.for f in cos cosf modf ilogb ilogbl ilogbf sin sinf tan tanf
@


1.202
log
@add nexttoward for mips64 and aarch64
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.201 2017/08/17 13:58:39 he Exp $
d402 2
a403 1
MLINKS+=hypot.3 hypotf.3
@


1.201
log
@Actually... s_nexttowardf.c appears to be usable on soft-float as well;
it was for arm earlier and briefly for all mips, so just move it into
COMMON_SRCS.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.200 2017/08/17 09:06:21 he Exp $
d63 1
a63 1
COMMON_SRCS+= s_rintl.c
d198 4
@


1.200
log
@Move the inclusion of s_nexttowardf.c into a common test for
MKSOFTFLOAT=="no".  This brings us nexttowardf() for sparc, at least.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.199 2017/08/16 13:34:59 nisimura Exp $
a244 4
.if (${MKSOFTFLOAT} == "no")
COMMON_SRCS+= s_nexttowardf.c
.endif

d272 1
a272 1
	s_nextafterf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c \
@


1.199
log
@add s_rintl.c for aarch64. ok by ryo@@.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.198 2017/08/16 09:18:24 he Exp $
d78 1
a78 1
COMMON_SRCS+= s_nexttowardf.c s_rintl.c
d94 1
a94 1
COMMON_SRCS+= fenv.c s_nexttowardf.c s_rintl.c
d104 1
a104 1
COMMON_SRCS+= s_nexttowardf.c s_rintl.c
d118 1
a118 1
COMMON_SRCS+= fenv.c s_nexttoward.c s_nexttowardf.c s_rintl.c
d157 1
a157 1
COMMON_SRCS += fenv.c s_nexttoward.c s_nexttowardf.c s_rintl.c
d197 1
a197 1
COMMON_SRCS+= s_nexttowardf.c s_rintl.c
d245 4
@


1.198
log
@In the non-softfloat m68k part, add s_nexttoward.c and s_nexttowardf.c,
so that we get nexttoward() and nexttowardf() implemented here as well.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.197 2017/08/15 10:40:28 mlelstv Exp $
d63 1
@


1.197
log
@rintl is required for archs that support long double.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.196 2017/08/11 20:24:56 he Exp $
d156 1
a156 1
COMMON_SRCS += fenv.c s_rintl.c
@


1.196
log
@Move s_nearbyint.c out of the cpu ifdefs and into COMMON_SRCS,
which is used everywhere except on vax.  This is to simplify and
to ensure the function is included in the build, allowing us to
re-add the nearbyint() test.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.193 2017/07/26 09:53:09 he Exp $
d196 1
@


1.195
log
@The sparc port needs s_nearbyint.c as well.
@
text
@d69 1
a69 1
COMMON_SRCS+= fenv.c s_nearbyint.c
d77 1
a77 1
COMMON_SRCS+= s_nexttowardf.c s_nearbyint.c s_rintl.c
d89 1
a89 1
COMMON_SRCS += fenv.c s_nearbyint.c
d93 1
a93 1
COMMON_SRCS+= fenv.c s_nexttowardf.c s_nearbyint.c s_rintl.c
d97 1
a97 1
COMMON_SRCS+= fenv.c s_nearbyint.c
d103 1
a103 1
COMMON_SRCS+= s_nexttowardf.c s_nearbyint.c s_rintl.c
d117 1
a117 2
COMMON_SRCS+= fenv.c s_nexttoward.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
d156 1
a156 1
COMMON_SRCS += fenv.c s_nearbyint.c s_rintl.c
d176 1
a176 1
COMMON_SRCS += fenv.c s_nearbyint.c
d188 1
a188 1
COMMON_SRCS += fenv.c s_nearbyint.c
d194 1
a194 1
COMMON_SRCS += fenv.c s_nearbyint.c
d200 1
a200 1
COMMON_SRCS += fenv.c s_nearbyint.c
d269 1
a269 1
	s_matherr.c s_modff.c s_modfl.c s_nextafter.c s_nextafterl.c \
@


1.194
log
@Non-softfloat m68k needs s_rintl.c.
@
text
@d97 1
a97 1
COMMON_SRCS+= fenv.c
@


1.193
log
@Add s_nearbyint.c to alpha, ia64, riscv, mips, powerpc, and sh3 ports.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.191 2017/05/06 18:03:24 christos Exp $
d157 1
a157 1
COMMON_SRCS += fenv.c s_nearbyint.c
@


1.192
log
@Add some blank lines to separate the different CPU archs,
for a minimal readability improvement.
@
text
@d65 1
a66 1

d69 1
a69 1
COMMON_SRCS+= fenv.c
d85 1
a86 1
.endif
d89 1
a89 1
COMMON_SRCS += fenv.c
d157 1
a157 1
COMMON_SRCS += fenv.c
d177 1
a177 1
COMMON_SRCS += fenv.c
d189 1
a189 1
COMMON_SRCS += fenv.c
d195 1
a195 1
COMMON_SRCS += fenv.c
d201 1
a201 1
COMMON_SRCS += fenv.c
d204 1
a204 1
# End of long list of CPU tests
@


1.191
log
@Replace our rounding functions with the ones from FreeBSD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.190 2017/03/23 18:26:03 chs Exp $
d66 1
d71 1
d85 1
d90 1
d94 1
d99 1
d108 1
d138 1
d161 1
d172 1
d185 1
d191 1
d197 1
d204 1
@


1.191.2.1
log
@Pull up the following, requested by he in ticket #212:

	lib/libm/Makefile               1.192-1.196
	tests/lib/libm/t_fe_round.c     1.3-1.6

Ensure that nearbyint() is included in all targets except for vax,
and add a test case for nearbyint(), stubbed out for non-IEEE (vax).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.191 2017/05/06 18:03:24 christos Exp $
a64 1

a69 1

d75 1
a75 1
COMMON_SRCS+= s_nexttowardf.c s_rintl.c
a83 1

a86 1

d89 1
a89 2
COMMON_SRCS+= fenv.c s_nexttowardf.c s_rintl.c

a93 1

d97 1
a97 1
COMMON_SRCS+= s_nexttowardf.c s_rintl.c
a101 1

d110 2
a111 1
COMMON_SRCS+= fenv.c s_nexttoward.c s_nexttowardf.c s_rintl.c
a130 1

d149 1
a149 1
COMMON_SRCS += fenv.c s_rintl.c
a152 1

a162 1

a174 1

a179 1

a184 1

a190 1
# End of list of CPU tests
d256 1
a256 1
	s_matherr.c s_modff.c s_modfl.c s_nearbyint.c s_nextafter.c s_nextafterl.c \
@


1.191.2.2
log
@Pull up the following, requested by he in ticket #217:

	lib/libm/Makefile               1.197-1.201
	tests/lib/libm/t_fe_round.c     1.7

Ensure nexttowardf() is included on all IEEE targets.
Add rintl() for aarch64 and mips, and nexttoward() for m68k.
Add a test which verifies that nextafter() and nexttoward() are
present in the implementation.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.191.2.1 2017/08/29 11:45:18 martin Exp $
a62 1
COMMON_SRCS+= s_rintl.c
d77 1
a77 1
COMMON_SRCS+= s_rintl.c
d93 1
a93 1
COMMON_SRCS+= fenv.c s_rintl.c
d103 1
a103 1
COMMON_SRCS+= s_rintl.c
d117 1
a117 1
COMMON_SRCS+= fenv.c s_nexttoward.c s_rintl.c
d156 1
a156 1
COMMON_SRCS += fenv.c s_nexttoward.c s_rintl.c
a195 1
COMMON_SRCS+= s_rintl.c
d270 1
a270 1
	s_nextafterf.c s_nexttowardf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c \
@


1.191.2.3
log
@Actually apply revision 1.201 (as the previous pullup claimed to do already).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.191.2.2 2017/08/29 11:58:26 martin Exp $
d63 1
a63 1
COMMON_SRCS+= s_nexttoward.c s_rintl.c
a197 4
.if (${MACHINE_ARCH} == "mips64eb" || ${MACHINE_ARCH} == "mips64el") \
    && (!defined(CPUFLAGS) || empty(CPUFLAGS:M-mabi=32))
COMMON_SRCS+= s_nexttoward.c
.endif
@


1.190
log
@sun2 just has to be different, of course.
it doesn't use the libc softfloat and thus doesn't set MKSOFTFLOAT=yes.
enable the fenv functions here explicitly for now.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.189 2017/03/22 23:11:08 chs Exp $
d251 4
d272 1
a272 2
	lrint.c lrintf.c llrint.c llrintf.c lround.c lroundf.c llround.c \
	llroundf.c s_frexp.c s_frexpl.c s_modf.c \
@


1.190.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.191 2017/05/06 18:03:24 christos Exp $
a250 4
	s_llrint.c s_llrintf.c s_llrintl.c \
	s_llround.c s_llroundf.c s_llroundl.c \
	s_lrint.c s_lrintf.c s_lrintl.c \
	s_lround.c s_lroundf.c s_lroundl.c \
d268 2
a269 1
	s_frexp.c s_frexpl.c s_modf.c \
@


1.189
log
@provide a common softfloat fenv implemenation and use it for softfloat builds.
restore ABI compatibility with previous releases for ieeefp.h on sh3.
add namespace.h protection for all the fenv interfaces.
use MKSOFTFLOAT on sh3 instead of assuming softfloat.
standardize on comparing MKSOFTFLOAT with "no".
remove the arm-specific softfloat fenv code (which also had several bugs).
fix logic errors in the arm hardfloat feraiseexcept() and feupdateenv().
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.188 2017/02/23 02:05:30 scole Exp $
d209 1
a209 1
.if ${MKSOFTFLOAT} != "no"
@


1.188
log
@Add fenv for ia64, imported from FreeBSD, compile tested only.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.187 2016/12/08 18:42:01 christos Exp $
d60 1
d62 1
d72 4
a75 2
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
d89 1
a89 2
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
d96 2
a97 2
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
d143 1
a143 1
.if (${MKSOFTFLOAT} != "yes")
d166 1
a167 2

.if ${MKSOFTFLOAT} == "no"
d177 1
d179 1
d182 1
d184 1
d187 1
d190 1
d209 21
@


1.187
log
@more stuff needs -mfpu=vfp
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.186 2016/09/21 14:11:40 christos Exp $
d80 3
@


1.187.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.190 2017/03/23 18:26:03 chs Exp $
a59 1
.if ${MKSOFTFLOAT} == "no"
a60 1
.endif
d70 2
a71 4
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS+= fenv.c
.endif
COMMON_SRCS+= s_nexttowardf.c s_nearbyint.c s_rintl.c
a79 3
.elif (${LIBC_MACHINE_ARCH} == "ia64")
.PATH: ${.CURDIR}/arch/ia64
COMMON_SRCS += fenv.c
d82 2
a83 1
COMMON_SRCS+= fenv.c s_nexttowardf.c s_nearbyint.c s_rintl.c
d90 2
a91 2
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_nexttowardf.c s_nearbyint.c s_rintl.c
d137 1
a137 1
.if (${MKSOFTFLOAT} == "no")
d160 2
a162 1
COMMON_SRCS += fenv.c
a171 1
.if ${MKSOFTFLOAT} == "no"
a172 1
.endif
a174 1
.if ${MKSOFTFLOAT} == "no"
a175 1
.endif
a177 1
.if ${MKSOFTFLOAT} == "no"
a179 1
.endif
a197 21
.if (${MKSOFTFLOAT} != "no" || ${MACHINE_ARCH} == "m68000")
.PATH:	${.CURDIR}/softfloat
.include "${.CURDIR}/../libc/libcincludes.mk"
CPPFLAGS+=	-I${ARCHDIR}/softfloat
COMMON_SRCS += \
	feclearexcept.c \
	fedisableexcept.c \
	feenableexcept.c \
	fegetenv.c \
	fegetexcept.c \
	fegetexceptflag.c \
	fegetround.c \
	feholdexcept.c \
	feraiseexcept.c \
	fesetenv.c \
	fesetexceptflag.c \
	fesetround.c \
	fetestexcept.c \
	feupdateenv.c
.endif

@


1.186
log
@deal with namespace issues and missing atanhf for vax.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.185 2016/09/07 14:41:33 jakllsch Exp $
d72 3
a74 1
COPTS.fenv.c+=	-mfpu=vfp
@


1.185
log
@Actually get fma(3) and friends into ARM libm.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.184 2016/08/27 09:15:44 christos Exp $
d246 2
a247 1
NOIEEE_SRCS = n_asincos.c n_acosh.c n_asinh.c n_atan.c n_atanh.c n_cosh.c \
@


1.184
log
@skip buggy assembly for libm_g.a
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.183 2016/08/26 08:33:48 christos Exp $
d73 1
@


1.183
log
@fix double merge.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.182 2016/08/26 08:31:17 christos Exp $
d116 1
a116 1
s_${f}.o s_${f}.pico s_${f}.po s_${f}.d: s_${f}.c
@


1.182
log
@do the FENV test consistently
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.181 2016/08/25 12:15:28 christos Exp $
a172 3
.if (${LIBC_MACHINE_CPU} == "sh3")
.PATH:	${.CURDIR}/arch/sh3
COMMON_SRCS += fenv.c
a174 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
@


1.181
log
@more fenv for sh
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.180 2016/08/24 10:03:32 christos Exp $
a59 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a71 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a80 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a83 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a88 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a103 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a139 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
a168 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
d172 3
a174 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
@


1.180
log
@fix ilogb*
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.179 2016/08/24 09:10:57 christos Exp $
d182 4
@


1.179
log
@add ilogb.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.178 2016/08/23 10:00:15 christos Exp $
d116 1
a116 2
	    s_ilogb.S s_ilogbf.S s_ilogbl.S s_log1p.S s_log1pf.S \
	    s_logb.S s_logbf.S s_logbl.S \
d119 5
a123 2
# do not pick up the i387 asm version, it is incorrect
s_modf.o s_modf.pico s_modf.po s_modf.d: s_modf.c
@


1.178
log
@fenv.h for alpha
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.177 2016/03/30 07:44:06 martin Exp $
d251 1
a251 1
	n_fmod.c n_gamma.c \
@


1.177
log
@No fenv for m68k with SOFTFLOAT for now - so at least it builds.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.176 2016/03/17 18:29:59 nros Exp $
d67 1
@


1.177.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.186 2016/09/21 14:11:40 christos Exp $
d248 1
a248 2
NOIEEE_SRCS = n_asincos.c n_acosh.c n_asinh.c n_atan.c n_atanh.c n_atanhf.c \
	n_cosh.c \
@


1.177.2.2
log
@Sync with HEAD.  (Note that most of these changes are simply $NetBSD$
tag issues.)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.187 2016/12/08 18:42:01 christos Exp $
d72 2
a73 4
.for f in fenv.c lrint.S lrintf.S s_fabsf.S s_fma.S s_fmaf.S
COPTS.$f +=	-mfpu=vfp
.endfor
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.177.2.3
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.188 2017/02/23 02:05:30 scole Exp $
a79 3
.elif (${LIBC_MACHINE_ARCH} == "ia64")
.PATH: ${.CURDIR}/arch/ia64
COMMON_SRCS += fenv.c
@


1.177.2.4
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.190 2017/03/23 18:26:03 chs Exp $
d60 1
a60 1
.if ${MKSOFTFLOAT} == "no"
a61 1
.endif
d70 2
a71 4
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS+= fenv.c
.endif
COMMON_SRCS+= s_nexttowardf.c s_nearbyint.c s_rintl.c
d85 3
a87 1
COMMON_SRCS+= fenv.c s_nexttowardf.c s_nearbyint.c s_rintl.c
d95 3
a97 2
COMMON_SRCS+= fenv.c
COMMON_SRCS+= s_nexttowardf.c s_nearbyint.c s_rintl.c
d142 1
a142 1
.if (${MKSOFTFLOAT} == "no")
d166 2
a168 1
COMMON_SRCS += fenv.c
d178 1
a178 1
.if ${MKSOFTFLOAT} == "no"
a179 1
.endif
d182 1
a182 1
.if ${MKSOFTFLOAT} == "no"
a184 6
.elif (${LIBC_MACHINE_CPU} == "sh3")
.PATH:	${.CURDIR}/arch/sh3
.if ${MKSOFTFLOAT} == "no"
COMMON_SRCS += fenv.c
.endif
.endif
a202 21
.if (${MKSOFTFLOAT} != "no" || ${MACHINE_ARCH} == "m68000")
.PATH:	${.CURDIR}/softfloat
.include "${.CURDIR}/../libc/libcincludes.mk"
CPPFLAGS+=	-I${ARCHDIR}/softfloat
COMMON_SRCS += \
	feclearexcept.c \
	fedisableexcept.c \
	feenableexcept.c \
	fegetenv.c \
	fegetexcept.c \
	fegetexceptflag.c \
	fegetround.c \
	feholdexcept.c \
	feraiseexcept.c \
	fesetenv.c \
	fesetexceptflag.c \
	fesetround.c \
	fetestexcept.c \
	feupdateenv.c
.endif

@


1.176
log
@Added ldexpl to ldexp manpage since it is missing.
Also added ldexpf manpage link since it is missing.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.175 2016/03/17 00:00:44 nros Exp $
a142 1
.endif
d146 1
@


1.175
log
@Add fabsl to the manpage describing the fabs functions.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.174 2015/12/29 16:57:35 christos Exp $
d355 2
@


1.174
log
@Add sqrtl
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.173 2015/12/21 17:02:02 christos Exp $
d342 2
a343 1
MLINKS+=fabs.3 fabsf.3
@


1.173
log
@Add mips fenv.c (From FreeBSD)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.172 2015/12/20 16:24:25 christos Exp $
d144 2
@


1.172
log
@Powerpc fenv.c from FreeBSD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.171 2015/12/12 19:05:45 nros Exp $
d171 5
a175 1

a176 1

@


1.171
log
@Add manpage to the fma function in libm.
The manpage is taken from the FreeBSD project since the fma implementation is
based on the one in FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.170 2015/09/13 10:58:30 he Exp $
d169 5
@


1.170
log
@Add entry for nexttowardf(3) and a link for the function name.
Bump manual page date.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.169 2015/09/13 09:46:30 he Exp $
d281 1
a281 1
	fabs.3 finite.3 fmod.3 frexp.3 hypot.3 \
d381 2
@


1.169
log
@Add entries for rintl(3) and the nearbyint functions, and
make manual page links to the new functions.
Bump manual page date.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.168 2014/12/27 16:54:02 martin Exp $
d351 2
a352 1
	nextafter.3 nexttoward.3
@


1.168
log
@fenv(3) support for hppa
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.167 2014/11/17 16:53:23 christos Exp $
d149 2
a150 1
#NOIEEE_ARCH= n_infnan.S n_argred.S n_sqrt.S
d356 5
a360 1
MLINKS+=rint.3 rintf.3
@


1.167
log
@PR/49399: Henning Petersen: Add man pages for erfl and erfcl
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.166 2014/09/19 17:42:44 matt Exp $
d78 5
@


1.166
log
@Add RISC-V MD bits.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.165 2014/08/26 11:48:20 christos Exp $
d311 5
a315 1
MLINKS+=erf.3 erff.3 erf.3 erfc.3 erf.3 erfcf.3
@


1.165
log
@Adding extra dependencies does not affect the inference rule search anymore.
XXX[1]: should that be the case?
Simplify the code anyway via selective path search.
XXX[2]: Split arch portions to arch specific files, this is a mess
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.164 2014/08/11 08:20:57 mrg Exp $
d150 13
@


1.164
log
@revert parts of 1.163 that affect the x86 build.

possibly, we want to build the i386 fenv.c for compat build, but they
seem largely compatible and for now, just go back to what we had before
that wasn't breaking the build or generating bug reports.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.163 2014/08/10 23:25:50 matt Exp $
d69 1
a69 1
.PATH: ${.CURDIR}/arch/arm
d75 1
a76 4
.else
.for i in e_sqrt.o e_sqrtf.o lrint.o lrintf.o s_fabsf.o s_fma.o s_fmaf.o
${i} ${i:.o=.po} ${i:.o=.pico} ${i:.o=.go} ${i:.o=.ln}: ${i:.o=.c}
.endfor
@


1.164.2.1
log
@Pullup the following revisions, requested by christos in #138:

src/lib/libm/Makefile			1.165-1.166
src/lib/libm/shlib_version		1.14
src/lib/libm/arch/vax/n_atan2.S		1.9
src/lib/libm/arch/vax/n_cabs.S		1.7
src/lib/libm/arch/vax/n_sincos.S	1.9
src/lib/libm/arch/vax/n_sqrt.S		1.10-1.11
src/lib/libm/complex/Makefile.inc	1.5-1.8
src/lib/libm/complex/cabsl.c		1.1
src/lib/libm/complex/cacoshl.c		1.1
src/lib/libm/complex/cacosl.c		1.1
src/lib/libm/complex/cargl.c		1.1
src/lib/libm/complex/casinhl.c		1.1
src/lib/libm/complex/casinl.c		1.1
src/lib/libm/complex/catanhl.c		1.1
src/lib/libm/complex/catanl.c		1.1
src/lib/libm/complex/ccoshl.c		1.1
src/lib/libm/complex/ccosl.c		1.1
src/lib/libm/complex/cephes_subrl.c	1.1
src/lib/libm/complex/cephes_subrl.h	1.1
src/lib/libm/complex/cexpl.c		1.1
src/lib/libm/complex/clogl.c		1.1
src/lib/libm/complex/cpowl.c		1.1
src/lib/libm/complex/cprojl.c		1.7
src/lib/libm/complex/csinhl.c		1.1
src/lib/libm/complex/csinl.c		1.1
src/lib/libm/complex/csqrtl.c		1.1
src/lib/libm/complex/ctanhl.c		1.1
src/lib/libm/complex/ctanl.c		1.1
src/lib/libm/man/acosh.3		1.17
src/lib/libm/man/asinh.3		1.17
src/lib/libm/man/atanh.3		1.17
src/lib/libm/noieee_src/n_atan2.c	1.7
src/lib/libm/noieee_src/n_cosh.c	1.9
src/lib/libm/noieee_src/n_exp.c		1.9
src/lib/libm/noieee_src/n_log.c		1.8
src/lib/libm/noieee_src/n_pow.c		1.10-1.11
src/lib/libm/noieee_src/n_sincos.c	1.7
src/lib/libm/noieee_src/n_sinh.c	1.8

Import the missing complex support routines from FreeBSD so we can
enable C++ 2011 mode for libstc++.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.166 2014/09/19 17:42:44 matt Exp $
d69 1
a69 1
.PATH.c: ${.CURDIR}/arch/arm
a74 1
.PATH.S: ${.CURDIR}/arch/arm
d76 4
a152 13
.elif (${LIBC_MACHINE_CPU} == "riscv")
.PATH:	${.CURDIR}/arch/riscv

COMMON_SRCS += fenv.c

.if ${MKSOFTFLOAT} == "no"
ARCH_SRCS = e_sqrt.S e_sqrtf.S
ARCH_SRCS += s_copysign.S s_copysignf.S
ARCH_SRCS += s_fabs.S s_fabsf.S
ARCH_SRCS += s_fma.S s_fmaf.S
ARCH_SRCS += s_fmax.S s_fmaxf.S
ARCH_SRCS += s_fmin.S s_fminf.S
.endif
@


1.164.2.2
log
@Pull up following revision(s) (requested by martin in ticket #416):
	distrib/sets/lists/comp/md.hppa: revision 1.3
	include/fenv.h: revision 1.13 via patch
	lib/libm/Makefile: revision 1.168
	lib/libm/arch/hppa/fenv.c: revisions 1.1, 1.2
	sys/arch/hppa/include/Makefile: revision 1.12
	sys/arch/hppa/include/fenv.h: revisions 1.1, 1.2
	sys/arch/hppa/include/ieeefp.h: revisions 1.5-1.7
	tests/lib/libm/Makefile: revision 1.29 via patch
fenv(3) support for hppa
--
use unsigned over uint32_t so that this file works without stdint.h
being included before hand.
fixes mknative-gcc problems, and likely others.
--
Properly separate fenv.h and ieeefp.h by moving all fenv defines
over to the former.
Now that they are decoupled, make rounding modes match the hardware bits.
--
Simplify, now that rounding mode defines match the hardware bits.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.164.2.1 2014/10/13 19:34:58 martin Exp $
a77 5
.elif (${LIBC_MACHINE_ARCH} == "hppa")
.PATH.c: ${.CURDIR}/arch/hppa
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
COPTS.e_sqrtl.c += -DHAVE_FENV_H
@


1.164.2.3
log
@Pull up following revision(s) (requested by dholland in ticket #1009):
	lib/libm/man/erf.3: revision 1.13
	distrib/sets/lists/comp/mi: revision 1.1921
	lib/libm/Makefile: revision 1.167
PR/49399: Henning Petersen: Add man pages for erfl and erfcl
fix sets for new erf{c,}l man pages.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.164.2.2 2015/01/20 20:57:24 snj Exp $
d316 1
a316 5
MLINKS+=erf.3 erff.3 \
	erf.3 erfl.3 \
	erf.3 erfc.3 \
	erf.3 erfcf.3 \
	erf.3 erfcl.3
@


1.164.2.3.2.1
log
@Sync with netbsd-5
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.164.2.4 2016/09/25 11:32:33 bouyer Exp $
a73 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.164.2.4
log
@Pull up following revision(s) (requested by jakllsch in ticket #1253):
	lib/libm/Makefile: revision 1.185 via patch
Actually get fma(3) and friends into ARM libm.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.164.2.3 2015/11/08 00:24:25 riz Exp $
a73 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
@


1.163
log
@MKCOMPAT fixes for when compat MACHINE_CPU != normal MACHINE_CPU
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.162 2014/08/10 20:48:34 joerg Exp $
d95 1
a95 1
.elif ((${LIBC_MACHINE_ARCH} == "i386") || (${LIBC_MACHINE_ARCH} == "x86_64"))
d97 2
a98 1
.if (${LIBC_MACHINE_ARCH} == "x86_64")
d120 1
a120 1
.if (${LIBC_MACHINE_ARCH} == "i386")
@


1.162
log
@Add -mfpu=vfp for fenv.c, since it gets those instructions from
machdep/armreg.h
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.161 2014/08/10 05:57:31 matt Exp $
d50 3
d56 1
a56 1
.if (${MACHINE_CPU} == "aarch64")
d64 1
a64 1
.elif (${MACHINE_ARCH} == "alpha")
d68 1
a68 1
.elif (${MACHINE_CPU} == "arm")
d81 1
a81 1
.elif (${MACHINE_ARCH} == "sparc")
d86 1
a86 1
.elif (${MACHINE_ARCH} == "sparc64")
d95 1
a95 1
.elif ((${MACHINE_ARCH} == "i386") || (${MACHINE_ARCH} == "x86_64"))
d97 1
a97 1
.if (${MACHINE_ARCH} == "x86_64")
d119 1
a119 1
.if (${MACHINE_ARCH} == "i386")
d122 1
a122 1
.elif (${MACHINE_ARCH} == "m68k")
d143 1
a143 1
.elif (${MACHINE_ARCH} == "vax")
d160 1
a160 1
.if (${MACHINE_ARCH} == "alpha")
d164 1
a164 1
.if (${MACHINE_ARCH} != "vax")
d235 1
a235 1
.if (${MACHINE_ARCH} == "vax")
d250 1
a250 1
.if (${MACHINE_ARCH} == "vax") # XXX until POLYD is written.
d256 1
a256 1
.if (${MACHINE_ARCH} == "i386")
@


1.161
log
@Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only.  While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.160 2014/06/16 12:54:43 joerg Exp $
d70 1
@


1.160
log
@Add modfl(3). From FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.159 2014/05/18 10:47:03 martin Exp $
d53 9
a61 1
.if (${MACHINE_ARCH} == "alpha")
@


1.159
log
@Re-enable alpha IEEE compiler options
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.158 2014/05/05 18:08:32 martin Exp $
d181 1
a181 1
	s_matherr.c s_modff.c s_nextafter.c s_nextafterl.c \
d314 2
@


1.158
log
@Comment out the ieee fp flags for alpha for now - something (tm) is not
working right, see PR port-alpha/48782.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.157 2014/04/28 08:47:43 martin Exp $
d56 1
a56 1
# COPTS+=	-mfloat-ieee -mieee-with-inexact -mfp-trap-mode=sui -mtrap-precision=i
@


1.157
log
@Tune COPTS for alpha
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.156 2014/04/01 19:12:37 christos Exp $
d56 1
a56 1
COPTS+=	-mfloat-ieee -mieee-with-inexact -mfp-trap-mode=sui -mtrap-precision=i
@


1.156
log
@add -g to LINTFLAGS
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.155 2014/03/06 11:01:16 martin Exp $
d56 1
@


1.156.2.1
log
@Rebase.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.160 2014/06/16 12:54:43 joerg Exp $
a55 1
COPTS+=	-mfloat-ieee -mieee-with-inexact -mfp-trap-mode=sui -mtrap-precision=i
d180 1
a180 1
	s_matherr.c s_modff.c s_modfl.c s_nextafter.c s_nextafterl.c \
a312 2
MLINKS+=modf.3 modff.3 \
	modf.3 modfl.3
@


1.155
log
@Include new/missing files for vax
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.154 2014/01/29 23:37:18 joerg Exp $
d50 3
@


1.154
log
@Include compiler-rt in libc, libm and libkern.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.153 2014/01/18 17:20:36 skrll Exp $
d206 2
a207 1
	n_erf.c n_exp.c n_exp__E.c n_expm1.c n_floor.c n_fmod.c n_gamma.c \
d209 1
a209 1
	n_log__L.c n_pow.c n_sinh.c n_tanh.c \
@


1.153
log
@Add various functions which need fenv support to arm.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.152 2013/11/22 13:37:24 martin Exp $
d344 1
a346 4
.if ${HAVE_LIBGCC} == "no"
.include "${.CURDIR}/compiler_rt/Makefile.inc"
.endif

@


1.152
log
@Try to fix the build (again): move e_sqrtl.c to common soure, but
move the include of fenv.h into the #ifdef __HAVE_LONG_DOUBLE block
and also provide a -DHAVE_FENV_H from the makefile for archs that have
it - leaving out exception settings on architectures that do not provide
it.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.150 2013/11/19 19:24:33 joerg Exp $
d55 2
a56 1
COMMON_SRCS+= fenv.c
@


1.151
log
@e_sqrtl.c requires fenv.h, so only build it on platfomrs supporting that
@
text
@d56 1
d67 1
d72 2
a73 1
	s_nearbyint.c s_rintl.c e_sqrtl.c
d86 1
a86 1
	s_nearbyint.c s_rintl.c e_sqrtl.c
d88 1
d163 1
a163 1
	e_scalbf.c e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c \
@


1.150
log
@Add cbrtl(3) and sqrtl(3), from FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.149 2013/11/13 22:09:55 joerg Exp $
d70 1
a70 1
	s_nearbyint.c s_rintl.c
d83 1
a83 1
	s_nearbyint.c s_rintl.c
d159 1
a159 1
	e_scalbf.c e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c e_sqrtl.c \
@


1.149
log
@truncl(3)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.148 2013/11/13 12:58:11 joerg Exp $
d159 1
a159 1
	e_scalbf.c e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c \
d163 1
a163 1
	s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_cbrt.c s_cbrtf.c \
d187 1
a187 1
	w_sinh.c w_sinhf.c w_sqrt.c w_sqrtf.c \
d316 2
a317 1
MLINKS+=sqrt.3 sqrtf.3 sqrt.3 cbrt.3 sqrt.3 cbrtf.3
@


1.148
log
@Add FreeBSD's truncl and minimal testing.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.147 2013/11/12 17:36:14 joerg Exp $
d321 2
a322 1
MLINKS+=trunc.3 truncf.3
@


1.147
log
@Add some fake long double -> double wrappers for various transcendental
functions. They are expected to be implement properly at a later time.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.146 2013/11/12 16:48:39 joerg Exp $
d176 2
a177 1
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_tgammaf.c s_trunc.c s_truncf.c \
@


1.146
log
@Initial version of fmodl from FreeBSD.
Basic test case for the fmod family.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.145 2013/11/12 00:10:29 joerg Exp $
d162 1
@


1.145
log
@Man page entries for ceill, floorl and roundl.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.144 2013/11/11 23:57:34 joerg Exp $
d154 2
a155 1
	e_expf.c e_fmod.c e_fmodf.c e_hypot.c e_hypotf.c e_j0.c e_j0f.c \
d178 3
a180 2
	w_drem.c w_dremf.c w_exp.c w_expf.c w_fmod.c w_fmodf.c w_gamma.c \
	w_gamma_r.c w_gammaf.c w_gammaf_r.c w_hypot.c w_hypotf.c w_j0.c \
d289 2
a290 1
MLINKS+=fmod.3 fmodf.3
@


1.144
log
@Add initial version of ceill, floorl and roundl from FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.143 2013/10/15 23:59:36 joerg Exp $
d266 1
d268 2
a269 1
	ceil.3 floorf.3
d314 2
a315 1
MLINKS+=round.3 roundf.3
@


1.143
log
@Hook complex operation support into libm when not using libgcc.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.142 2013/09/21 22:28:12 joerg Exp $
d161 3
a163 2
	s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_cbrt.c s_cbrtf.c s_ceil.c \
	s_ceilf.c s_copysign.c s_copysignf.c s_copysignl.c s_cos.c s_cosf.c s_erf.c \
d166 2
a167 1
	s_floor.c s_floorf.c s_frexpf.c s_ilogb.c s_ilogbf.c s_ilogbl.c \
d171 2
a172 1
	s_nextafterf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c s_round.c s_roundf.c s_scalbn.c \
@


1.142
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.141 2013/08/22 08:24:30 martin Exp $
d327 5
@


1.141
log
@s_nexttoward.c does not make sense compiling for 32 bit sparc (double ==
long double), so ifdef it out in the sparc64 compat library build. I hope
the nextafter alias is set up correctly (where?) - and someone please
suggest a better way for this if clause.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.140 2013/08/21 13:06:00 martin Exp $
d323 3
@


1.140
log
@Add nexttoward, nearbyint and rintl for sparc64
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.139 2013/06/20 19:49:47 christos Exp $
d69 1
a69 1
COMMON_SRCS+= fenv.c s_nexttoward.c s_nexttowardf.c \
d71 3
@


1.139
log
@Add missing .go and fix lint rule.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.138 2013/05/24 12:45:40 martin Exp $
d69 2
a70 1
COMMON_SRCS+= fenv.c
@


1.138
log
@Fix POLYD/Mariah fallout and include the scalbn sources (which do not
use polyd).
Fix global names and weak aliases.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.137 2013/05/01 04:04:31 matt Exp $
d60 1
a60 1
${i} ${i:.o=.po} ${i:.o=.pico} ${i.o=.ln}: ${i:.o=.c}
@


1.137
log
@Use MKSOFTFLOAT = no for including arm hardfloat files.
When arm and MKSOFTFLOAT = yes, make explicit dependency to .c files
so .S won't be used.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.136 2013/04/28 14:46:14 joerg Exp $
d125 1
a125 1
ARCHS_SRCS = n_scalbn.S
d220 1
a220 1
	n_support.S
@


1.136
log
@Drop s_scalbnl.c (and s_scalbln.S as side effect) and provide scalbnl in
s_scalbln.c.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.135 2013/04/27 22:58:15 joerg Exp $
d53 1
a53 1
.elif (${MACHINE_ARCH} == "earmhf" || ${MACHINE_ARCH} == "earmhfeb")
d55 2
d58 5
@


1.135
log
@Retire ldexp sources. scalbn has the aliases.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.134 2013/04/06 12:16:49 uebayasi Exp $
d72 1
a72 2
	s_nearbyint.c s_rintl.c \
	s_scalbln.c # s_nan.c
@


1.134
log
@Pass a real file as MLINKS target; fix unnecessary (re)install.
@
text
@d1 1
a1 1
#  $NetBSD$
d156 1
a156 1
	s_isinff.c s_isnanf.c s_ldexpf.c s_lib_version.c s_log1p.c \
d172 1
a172 1
	llroundf.c s_frexp.c s_frexpl.c s_ldexp.c s_modf.c \
@


1.133
log
@Use __HAVE_LONG_DOUBLE instead of EXT_EXPBITS and include s_nextafterl.c
as well as s_frexpl.c in the global list of "common" sources - as we
seem to have no arch redefining the standard double variant, it seems
unlikely we will have on redefining the long double version in assembler.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.132 2013/02/11 17:55:01 matt Exp $
d295 1
a295 1
MLINKS+=sinf.3 sinhf.3
@


1.132
log
@any arch that has fenv.[ch] can have fma as well (since fma uses fenv).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.131 2013/02/11 12:43:04 matt Exp $
d71 1
a71 1
COMMON_SRCS+= fenv.c s_nextafterl.c s_nexttoward.c s_nexttowardf.c \
d73 1
a73 1
	s_scalbln.c s_frexpl.c # s_nan.c
d158 1
a158 1
	s_matherr.c s_modff.c s_nextafter.c \
d172 1
a172 1
	llroundf.c s_frexp.c s_ldexp.c s_modf.c \
@


1.131
log
@Add VFP versions of lrint/lrintf/lrintl for earmhf*
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.130 2013/02/11 01:47:04 christos Exp $
d55 1
a55 1
ARCH_SRCS = e_sqrt.S e_sqrtf.S s_fabsf.S lrint.S lrintf.S
d59 1
d63 1
d72 1
a72 1
	s_nearbyint.c s_rintl.c s_fma.c s_fmaf.c s_fmal.c \
d74 1
d173 2
a174 1
	s_fmax.c s_fmaxf.c s_fmaxl.c s_fmin.c s_fminf.c s_fminl.c s_fdim.c
@


1.130
log
@add more functions required by fma
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.129 2013/02/11 01:29:58 christos Exp $
d55 1
a55 1
ARCH_SRCS = e_sqrt.S e_sqrtf.S s_fabsf.S
@


1.129
log
@hook fma to the build
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.128 2013/02/09 22:33:13 christos Exp $
d70 3
a72 1
	s_nearbyint.c s_rintl.c s_fma.c s_fmaf.c s_fmal.c # s_nan.c
@


1.128
log
@Hook to the build.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.127 2013/02/09 20:19:13 christos Exp $
d70 1
a70 1
	s_nearbyint.c s_rintl.c # s_nan.c
@


1.127
log
@Make this work for NetBSD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.126 2013/02/03 07:13:07 matt Exp $
d70 1
a70 1
	s_nearbyint.c # s_nan.c
@


1.126
log
@Add support for the ARM hardfloat instructions vsqrt and vabs.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.125 2012/08/04 15:16:16 matt Exp $
d69 2
a70 1
COMMON_SRCS+= fenv.c s_nextafterl.c s_nexttoward.c
d79 1
a79 1
	    s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S lrint.S
@


1.125
log
@Use COPTS instead of CFLAGS
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.124 2012/05/05 17:54:13 christos Exp $
d53 3
@


1.125.2.1
log
@resync with head
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.125 2012/08/04 15:16:16 matt Exp $
a52 3
.elif (${MACHINE_ARCH} == "earmhf" || ${MACHINE_ARCH} == "earmhfeb")
.PATH: ${.CURDIR}/arch/arm
ARCH_SRCS = e_sqrt.S e_sqrtf.S lrint.S lrintf.S s_fabsf.S s_fma.S s_fmaf.S
a55 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
a58 1
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
d66 1
a66 5
COMMON_SRCS+= fenv.c s_nexttoward.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c \
	s_scalbln.c # s_nan.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c

d75 1
a75 1
	    s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S lrint.S 
d149 1
a149 1
	s_matherr.c s_modff.c s_nextafter.c s_nextafterl.c \
d163 2
a164 3
	llroundf.c s_frexp.c s_frexpl.c s_ldexp.c s_modf.c \
	s_fmax.c s_fmaxf.c s_fmaxl.c \
	s_fmin.c s_fminf.c s_fminl.c s_fdim.c
@


1.125.2.2
log
@resync from head
@
text
@d1 1
a1 1
#  $NetBSD$
d53 1
a53 1
.elif (${MACHINE_CPU} == "arm")
a54 2
COMMON_SRCS+= fenv.c
.if (${MKSOFTFLOAT} == "no")
a55 5
.else
.for i in e_sqrt.o e_sqrtf.o lrint.o lrintf.o s_fabsf.o s_fma.o s_fmaf.o
${i} ${i:.o=.po} ${i:.o=.pico} ${i:.o=.go} ${i:.o=.ln}: ${i:.o=.c}
.endfor
.endif
d72 2
a73 1
	s_nearbyint.c s_rintl.c
d119 1
a119 1
ARCH_SRCS = n_scalbn.S
d156 1
a156 1
	s_isinff.c s_isnanf.c s_lib_version.c s_log1p.c \
d172 1
a172 1
	llroundf.c s_frexp.c s_frexpl.c s_modf.c \
d214 1
a214 1
	n_support.S n_scalbn.S
d295 1
a295 1
MLINKS+=sin.3 sinhf.3
@


1.125.2.3
log
@Rebase to HEAD as of a few days ago.
@
text
@d50 1
a50 15
LIBC_MACHINE_ARCH?=	${MACHINE_ARCH}
LIBC_MACHINE_CPU?=	${MACHINE_CPU}

# compiler_rt uses typeof() and __extension__
LINTFLAGS += -g

.if (${LIBC_MACHINE_CPU} == "aarch64")
.PATH: ${.CURDIR}/arch/aarch64
ARCH_SRCS = e_sqrt.S e_sqrtf.S s_fabsf.S
ARCH_SRCS+= s_fma.S s_fmaf.S s_fmax.S s_fmaxf.S s_fmin.S s_fminf.S
COPTS.e_sqrtl.c += -DHAVE_FENV_H
COMMON_SRCS+= fenv.c
COMMON_SRCS+= e_sqrtl.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
.elif (${LIBC_MACHINE_ARCH} == "alpha")
d53 1
a53 2
COPTS+=	-mfloat-ieee -mieee-with-inexact -mfp-trap-mode=sui -mtrap-precision=i
.elif (${LIBC_MACHINE_CPU} == "arm")
d55 1
a55 4
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
COPTS.e_sqrtl.c += -DHAVE_FENV_H
COPTS.fenv.c+=	-mfpu=vfp
d63 1
a63 1
.elif (${LIBC_MACHINE_ARCH} == "sparc")
a65 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
d67 1
a67 1
.elif (${LIBC_MACHINE_ARCH} == "sparc64")
d69 1
a69 6
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
COPTS.e_sqrtl.c += -DHAVE_FENV_H
.ifndef _COMPAT_M32_MK_
COMMON_SRCS+= s_nexttoward.c
.endif
a72 1
# XXX consider making this LIBC_MACHINE_ARCH?
a80 1
COPTS.e_sqrtl.c += -DHAVE_FENV_H
d97 1
a97 1
.elif (${LIBC_MACHINE_ARCH} == "m68k")
d118 1
a118 1
.elif (${LIBC_MACHINE_ARCH} == "vax")
d135 1
a135 1
.if (${LIBC_MACHINE_ARCH} == "alpha")
d139 1
a139 1
.if (${LIBC_MACHINE_ARCH} != "vax")
d150 1
a150 2
	e_expf.c e_fmod.c e_fmodf.c e_fmodl.c e_hypot.c e_hypotf.c \
	e_j0.c e_j0f.c \
d154 1
a154 1
	e_scalbf.c e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c e_sqrtl.c \
d157 2
a158 4
	ldbl_dummy.c \
	s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_cbrt.c s_cbrtf.c s_cbrtl.c \
	s_ceil.c s_ceilf.c s_ceill.c s_copysign.c s_copysignf.c s_copysignl.c \
	s_cos.c s_cosf.c s_erf.c \
d161 1
a161 2
	s_floor.c s_floorf.c s_floorl.c s_frexpf.c \
	s_ilogb.c s_ilogbf.c s_ilogbl.c \
d164 2
a165 3
	s_matherr.c s_modff.c s_modfl.c s_nextafter.c s_nextafterl.c \
	s_nextafterf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c \
	s_round.c s_roundf.c s_roundl.c s_scalbn.c \
d167 1
a167 2
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_tgammaf.c \
	s_trunc.c s_truncf.c s_truncl.c \
d170 2
a171 3
	w_drem.c w_dremf.c w_exp.c w_expf.c w_fmod.c w_fmodf.c w_fmodl.c \
	w_gamma.c w_gamma_r.c w_gammaf.c w_gammaf_r.c w_hypot.c w_hypotf.c \
	w_j0.c \
d176 1
a176 1
	w_sinh.c w_sinhf.c w_sqrt.c w_sqrtf.c w_sqrtl.c \
d190 1
a190 2
	n_erf.c n_exp.c n_exp2.c n_exp2f.c n_exp__E.c n_expm1.c n_floor.c \
	n_fmod.c n_gamma.c \
d192 1
a192 1
	n_log2.c n_log__L.c n_pow.c n_sinh.c n_tanh.c \
d202 1
a202 1
.if (${LIBC_MACHINE_ARCH} == "vax")
d217 1
a217 1
.if (${LIBC_MACHINE_ARCH} == "vax") # XXX until POLYD is written.
d223 1
a223 1
.if (${LIBC_MACHINE_ARCH} == "i386")
a258 1
	ceil.3 ceill.3 \
d260 1
a260 2
	ceil.3 floorf.3 \
	ceil.3 floorl.3
d278 1
a278 2
MLINKS+=fmod.3 fmodf.3 \
	fmod.3 fmodl.3
a289 2
MLINKS+=modf.3 modff.3 \
	modf.3 modfl.3
d302 1
a302 2
MLINKS+=sqrt.3 sqrtf.3 sqrt.3 sqrtl.3 \
	sqrt.3 cbrt.3 sqrt.3 cbrtf.3 sqrt.3 cbrtl.3
d305 2
a306 4
MLINKS+=round.3 roundf.3 \
	round.3 roundl.3
MLINKS+=trunc.3 truncf.3 \
	trunc.3 truncl.3
a318 4
COPTS.compat_cabs.c+=	${${ACTIVE_CC} == "clang":? -Wno-incompatible-library-redeclaration :}
COPTS.compat_cabsf.c+=	${${ACTIVE_CC} == "clang":? -Wno-incompatible-library-redeclaration :}

.include "${.CURDIR}/compiler_rt/Makefile.inc"
a319 1

@


1.124
log
@Add tgamma{,f} from FreeBSD via  rudolf, netbsd at eq dot cz
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.123 2012/04/04 10:59:46 joerg Exp $
d121 1
a121 1
CFLAGS+= -mfp-rounding-mode=d
@


1.123
log
@Disable new -Wstring-plus-int warning where needed for now.
Adjust various places that add GCC-only options to check for the active
compiler first.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.122 2012/03/21 05:37:42 matt Exp $
d132 2
a133 1
COMMON_SRCS+= e_acos.c e_acosf.c e_acosh.c e_acoshf.c e_asin.c e_asinf.c \
d152 1
a152 1
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_trunc.c s_truncf.c \
d273 1
a273 1
	lgamma.3 gammaf_r.3
@


1.122
log
@These directories default to WARNS?=5
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.121 2012/03/09 08:03:53 njoly Exp $
d168 2
a169 4
.if defined(HAVE_GCC)
COPTS.compat_cabs.c=	-fno-builtin-cabs
COPTS.compat_cabsf.c=	-fno-builtin-cabsf
.endif
@


1.121
log
@On alpha compile the math library with dynamic rounding mode instead
of fixed normal IEEE rounding mode. This makes function that depends on
the current rounding mode, such as rint(3), just work.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.120 2011/09/17 10:51:52 jruoho Exp $
d111 1
a111 1
WARNS?=4
d114 1
a114 1
WARNS?=4
@


1.120
log
@Split out pow(3) from exp(3).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.119 2011/09/13 05:26:47 jruoho Exp $
d120 4
@


1.120.4.1
log
@Pull up following revision(s) (requested by christos in ticket #232):
	distrib/sets/lists/comp/mi: revision 1.1756
	lib/libm/Makefile: revision 1.124
	lib/libm/src/math_private.h: revision 1.17
	lib/libm/src/b_tgamma.c: revision 1.1
	lib/libm/man/lgamma.3: revision 1.22
	lib/libm/src/b_log.c: revision 1.1
	lib/libm/src/b_exp.c: revision 1.1
	include/math.h: revision 1.58
	lib/libm/src/s_tgammaf.c: revision 1.1
add tgamma{,f}
Add tgamma{,f} from FreeBSD via  rudolf, netbsd at eq dot cz
oops, forgot to commit: add tgamma and tgammaf
@
text
@d1 1
a1 1
#  $NetBSD$
d128 1
a128 2
COMMON_SRCS+= b_exp.c b_log.c b_tgamma.c \
	e_acos.c e_acosf.c e_acosh.c e_acoshf.c e_asin.c e_asinf.c \
d147 1
a147 1
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_tgammaf.c s_trunc.c s_truncf.c \
d270 1
a270 1
	lgamma.3 gammaf_r.3 lgamma.3 tgamma.3 lgamma.3 tgammaf.3
@


1.120.2.1
log
@sync with head
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.120 2011/09/17 10:51:52 jruoho Exp $
d111 1
a111 1
WARNS?=5
d114 1
a114 1
WARNS?=5
a119 4
.if (${MACHINE_ARCH} == "alpha")
CFLAGS+= -mfp-rounding-mode=d
.endif

d164 4
a167 2
COPTS.compat_cabs.c=	${${ACTIVE_CC} == "gcc":? -fno-builtin-cabs :}
COPTS.compat_cabsf.c=	${${ACTIVE_CC} == "gcc":? -fno-builtin-cabsf :}
@


1.120.2.2
log
@sync with head.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.120.2.1 2012/04/17 00:05:28 yamt Exp $
d132 1
a132 2
COMMON_SRCS+= b_exp.c b_log.c b_tgamma.c \
	e_acos.c e_acosf.c e_acosh.c e_acoshf.c e_asin.c e_asinf.c \
d151 1
a151 1
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_tgammaf.c s_trunc.c s_truncf.c \
d272 1
a272 1
	lgamma.3 gammaf_r.3 lgamma.3 tgamma.3 lgamma.3 tgammaf.3
@


1.120.2.3
log
@sync with head
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.120.2.2 2012/05/23 10:07:32 yamt Exp $
d121 1
a121 1
COPTS+= -mfp-rounding-mode=d
@


1.120.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.120.2.3 2012/10/30 18:59:12 yamt Exp $
a49 3
# compiler_rt uses typeof() and __extension__
LINTFLAGS += -g

a52 13
# COPTS+=	-mfloat-ieee -mieee-with-inexact -mfp-trap-mode=sui -mtrap-precision=i
.elif (${MACHINE_CPU} == "arm")
.PATH: ${.CURDIR}/arch/arm
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
COPTS.e_sqrtl.c += -DHAVE_FENV_H
.if (${MKSOFTFLOAT} == "no")
ARCH_SRCS = e_sqrt.S e_sqrtf.S lrint.S lrintf.S s_fabsf.S s_fma.S s_fmaf.S
.else
.for i in e_sqrt.o e_sqrtf.o lrint.o lrintf.o s_fabsf.o s_fma.o s_fmaf.o
${i} ${i:.o=.po} ${i:.o=.pico} ${i:.o=.go} ${i:.o=.ln}: ${i:.o=.c}
.endfor
.endif
a55 2
COPTS.e_sqrtl.c += -DHAVE_FENV_H
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
d58 1
a58 7
COMMON_SRCS+= fenv.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
COPTS.e_sqrtl.c += -DHAVE_FENV_H
.ifndef _COMPAT_M32_MK_
COMMON_SRCS+= s_nexttoward.c
.endif
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
d66 1
a66 5
COMMON_SRCS+= fenv.c s_nexttoward.c s_nexttowardf.c \
	s_nearbyint.c s_rintl.c
COMMON_SRCS+= s_fma.c s_fmaf.c s_fmal.c
COPTS.e_sqrtl.c += -DHAVE_FENV_H

d75 1
a75 1
	    s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S lrint.S 
d110 1
a110 1
ARCH_SRCS = n_scalbn.S
d135 1
a135 2
	e_expf.c e_fmod.c e_fmodf.c e_fmodl.c e_hypot.c e_hypotf.c \
	e_j0.c e_j0f.c \
d139 1
a139 1
	e_scalbf.c e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c e_sqrtl.c \
d142 2
a143 4
	ldbl_dummy.c \
	s_asinh.c s_asinhf.c s_atan.c s_atanf.c s_cbrt.c s_cbrtf.c s_cbrtl.c \
	s_ceil.c s_ceilf.c s_ceill.c s_copysign.c s_copysignf.c s_copysignl.c \
	s_cos.c s_cosf.c s_erf.c \
d146 2
a147 3
	s_floor.c s_floorf.c s_floorl.c s_frexpf.c \
	s_ilogb.c s_ilogbf.c s_ilogbl.c \
	s_isinff.c s_isnanf.c s_lib_version.c s_log1p.c \
d149 2
a150 3
	s_matherr.c s_modff.c s_nextafter.c s_nextafterl.c \
	s_nextafterf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c \
	s_round.c s_roundf.c s_roundl.c s_scalbn.c \
d152 1
a152 2
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c s_tgammaf.c \
	s_trunc.c s_truncf.c s_truncl.c \
d155 2
a156 3
	w_drem.c w_dremf.c w_exp.c w_expf.c w_fmod.c w_fmodf.c w_fmodl.c \
	w_gamma.c w_gamma_r.c w_gammaf.c w_gammaf_r.c w_hypot.c w_hypotf.c \
	w_j0.c \
d161 1
a161 1
	w_sinh.c w_sinhf.c w_sqrt.c w_sqrtf.c w_sqrtl.c \
d163 2
a164 3
	llroundf.c s_frexp.c s_frexpl.c s_modf.c \
	s_fmax.c s_fmaxf.c s_fmaxl.c \
	s_fmin.c s_fminf.c s_fminl.c s_fdim.c
d174 1
a174 2
	n_erf.c n_exp.c n_exp2.c n_exp2f.c n_exp__E.c n_expm1.c n_floor.c \
	n_fmod.c n_gamma.c \
d176 1
a176 1
	n_log2.c n_log__L.c n_pow.c n_sinh.c n_tanh.c \
d204 1
a204 1
	n_support.S n_scalbn.S
a242 1
	ceil.3 ceill.3 \
d244 1
a244 2
	ceil.3 floorf.3 \
	ceil.3 floorl.3
d262 1
a262 2
MLINKS+=fmod.3 fmodf.3 \
	fmod.3 fmodl.3
d285 2
a286 3
MLINKS+=sin.3 sinhf.3
MLINKS+=sqrt.3 sqrtf.3 sqrt.3 sqrtl.3 \
	sqrt.3 cbrt.3 sqrt.3 cbrtf.3 sqrt.3 cbrtl.3
d289 2
a290 4
MLINKS+=round.3 roundf.3 \
	round.3 roundl.3
MLINKS+=trunc.3 truncf.3 \
	trunc.3 truncl.3
a302 4
COPTS.compat_cabs.c+=	${${ACTIVE_CC} == "clang":? -Wno-incompatible-library-redeclaration :}
COPTS.compat_cabsf.c+=	${${ACTIVE_CC} == "clang":? -Wno-incompatible-library-redeclaration :}

.include "${.CURDIR}/compiler_rt/Makefile.inc"
a303 1

@


1.119
log
@Split out the logarithm functions from the perplex exp(3). Also remove some
useless notes in the latter (namely, no one cares that financial calculations
were done on Hewlett-Packard HP-71B, or that there is a LN1() in Pascal).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.118 2011/08/06 11:01:12 jruoho Exp $
d214 1
a214 1
	math.3 modf.3 nextafter.3 \
d248 1
a248 2
	exp.3 exp2.3 exp.3 exp2f.3 					\
	exp.3 pow.3 exp.3 powf.3
d256 1
@


1.118
log
@Deprecate ieee(3).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.117 2011/08/06 10:51:26 jruoho Exp $
d213 1
a213 1
	ieee_test.3 ilogb.3 isinff.3 j0.3 ldexp.3 lgamma.3 lrint.3 \
d249 8
a256 5
	exp.3 log.3 exp.3 logf.3 					\
	exp.3 log10.3 exp.3 log10f.3 					\
	exp.3 log1p.3 exp.3 log1pf.3 					\
	exp.3 pow.3 exp.3 powf.3 					\
	exp.3 log2.3 exp.3 log2f.3
@


1.117
log
@Split out the scalbn(3) family out from ieee(3) and properly document it.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.116 2011/08/03 14:13:07 joerg Exp $
d212 1
a212 1
	fabs.3 fmod.3 frexp.3 hypot.3 ieee.3 \
d255 1
a257 1
MLINKS+=ieee.3 finite.3 ieee.3 finitef.3
@


1.116
log
@Add logbl(3).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.115 2011/07/28 22:32:28 joerg Exp $
d216 1
a216 1
	sin.3 sinh.3 sqrt.3 \
d257 1
a257 2
MLINKS+=ieee.3 finite.3 ieee.3 finitef.3 				\
	ieee.3 scalbn.3 ieee.3 scalbnf.3 ieee.3 scalbnl.3
d276 2
@


1.115
log
@Add ilogbl(3).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.114 2011/07/28 21:10:29 joerg Exp $
d71 3
a73 2
	    s_cosf.S s_finite.S s_finitef.S s_floor.S s_floorf.S s_ilogb.S \
	    s_ilogbf.S s_ilogbl.S s_log1p.S s_log1pf.S s_logb.S s_logbf.S \
d143 2
a144 1
	s_log1pf.c s_logb.c s_logbf.c s_matherr.c s_modff.c s_nextafter.c \
d259 1
a259 1
MLINKS+=ieee_test.3 logb.3 ieee_test.3 logbf.3
@


1.114
log
@Add scalbnl(3) mlinks.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.113 2011/07/28 20:53:20 matt Exp $
d72 2
a73 2
	    s_ilogbf.S s_log1p.S s_log1pf.S s_logb.S s_logbf.S s_rint.S \
	    s_rintf.S s_scalbn.S s_scalbnf.S s_significand.S \
d140 1
a140 1
	s_floor.c s_floorf.c s_frexpf.c s_ilogb.c s_ilogbf.c \
d260 1
a260 1
MLINKS+=ilogb.3 ilogbf.3
@


1.113
log
@Add scalbn{,f,l} for VAX.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.112 2011/07/26 16:10:16 joerg Exp $
d256 1
a256 1
	ieee.3 scalbn.3 ieee.3 scalbnf.3
@


1.112
log
@Add scalbnl to libm.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.111 2011/06/20 07:43:58 mrg Exp $
d103 1
a103 1
#.PATH:	${.CURDIR}/arch/vax
d109 1
@


1.111
log
@remove most of the remaining HAVE_GCC tests that are always true in
the modern world.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.110 2011/05/20 21:42:48 nakayama Exp $
d143 1
a143 1
	s_scalbnf.c s_signgam.c s_significand.c s_significandf.c s_sin.c \
@


1.110
log
@Add fenv support for sparc.  Mostly copied from sparc64 and share with it.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.109 2011/05/10 09:07:51 jruoho Exp $
d161 1
a161 1
.if defined(HAVE_GCC) && ${HAVE_GCC} == 4
@


1.110.2.1
log
@Catchup with rmind-uvmplock merge.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.111 2011/06/20 07:43:58 mrg Exp $
d161 1
a161 1
.if defined(HAVE_GCC)
@


1.109
log
@Remove trailing '\'.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.108 2011/05/10 06:38:33 jruoho Exp $
d53 3
@


1.108
log
@Split out the ilogb(3) family out of ieee(3) and properly document it.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.107 2011/04/16 05:48:50 jruoho Exp $
d256 1
a256 1
MLINKS+=ilogb.3 ilogbf.3					\
@


1.107
log
@Merge floor(3) to ceil(3).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.106 2011/04/13 04:57:11 jruoho Exp $
d207 1
a207 1
	ieee_test.3 isinff.3 j0.3 ldexp.3 lgamma.3 lrint.3 \
a251 1
	ieee.3 ilogb.3 ieee.3 ilogbf.3					\
d256 1
@


1.106
log
@Split out from ieee(3) also the remainder(3) and copysign(3) families.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.105 2011/04/12 07:29:50 jruoho Exp $
d206 1
a206 1
	fabs.3 floor.3 fmod.3 frexp.3 hypot.3 ieee.3 \
d233 3
a235 1
MLINKS+=ceil.3 ceilf.3
a248 1
MLINKS+=floor.3 floorf.3
@


1.105
log
@Split the nextafter(3) family of functions to their own page and properly
document these.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.104 2011/02/06 00:44:09 christos Exp $
d203 4
a206 2
MAN+=	acos.3 acosh.3 asin.3 asinh.3 atan.3 atan2.3 atanh.3 ceil.3 \
	cos.3 cosh.3 erf.3 exp.3 fabs.3 floor.3 fmod.3 frexp.3 hypot.3 ieee.3 \
d208 4
a211 2
	math.3 modf.3 nextafter.3 rint.3 round.3 sin.3 sinh.3 \
	sqrt.3 tan.3 tanh.3 trunc.3 fmax.3 fdim.3
d234 2
d250 1
a250 2
MLINKS+=ieee.3 copysign.3 ieee.3 copysignf.3 ieee.3 copysignl.3 	\
	ieee.3 finite.3 ieee.3 finitef.3 				\
a251 2
	ieee.3 remainder.3 ieee.3 remainderf.3 				\
	ieee.3 remquo.3 ieee.3 remquof.3				\
d266 3
@


1.104
log
@remquo{,f} from FreeBSD via Stathis Kamperis
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.103 2011/01/31 15:06:01 christos Exp $
d206 1
a206 1
	math.3 modf.3 rint.3 round.3 sin.3 sinh.3 \
a246 2
	ieee.3 nextafter.3 ieee.3 nextafterf.3 ieee.3 nextafterl.3	\
	ieee.3 nexttoward.3						\
d259 3
@


1.103
log
@not everyone has fenv.c, pointed by Havard Eidnes
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.102 2011/01/31 00:19:33 christos Exp $
d139 1
a139 1
	s_nextafterf.c s_rint.c s_rintf.c s_round.c s_roundf.c s_scalbn.c \
d250 1
@


1.102
log
@fenv support for sparc64 from Stathis Kamperis
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.101 2011/01/12 23:03:56 joerg Exp $
d55 1
d180 1
a180 1
SRCS=	${COMMON_SRCS} fenv.c
@


1.101
log
@Remove NOMANDOC, the documents are at least parsed somewhat sensible.
@
text
@d1 1
a1 1
#  $NetBSD: src/lib/libm/Makefile,v 1.100 2011-01-09 02:32:13 jakllsch Exp $
d53 2
d179 1
a179 1
SRCS=	${COMMON_SRCS}
@


1.101.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.104 2011/02/06 00:44:09 christos Exp $
a52 3
.elif (${MACHINE_ARCH} == "sparc64")
.PATH: ${.CURDIR}/arch/sparc64
COMMON_SRCS+= fenv.c
d136 1
a136 1
	s_nextafterf.c s_remquo.c s_remquof.c s_rint.c s_rintf.c s_round.c s_roundf.c s_scalbn.c \
a246 1
	ieee.3 remquo.3 ieee.3 remquof.3				\
@


1.100
log
@Imlementations of fmax, fmaxf, fmin and fminf libm functions for VAX.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.99 2010/12/09 22:52:59 abs Exp $
a273 2
NOMANDOC=	yes

@


1.99
log
@Add noieee versions for lround(), lroundf(), lrint(), lrintf(),
llrint() and llrintf().  Code copied from round(), roundf() and
rint() and modified for return values.  Its possible this may not
do the right things in edge cases, but if so its likely to have
the same issues as the existing round(), roundf() and rint().

All this used by vax (only), and should allow xnest to complete
build.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.98 2010/09/15 16:11:29 christos Exp $
d166 2
a167 1
	n_round.c n_roundf.c n_lround.c n_lroundf.c
@


1.98
log
@Commit SoC long double support from Stathis Kamperis
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.97 2010/08/10 17:53:08 drochner Exp $
d166 1
a166 1
	n_round.c n_roundf.c
@


1.97
log
@two disgusting hacks:
-mk/bsd.lib.mk picks up a .S asm file behind our back (did it do so
 always?). s_modf.S is incorrect; I'm undecided whether it makes sense
 to fix it, so add a stupid rule to enforce the .c file to be used.
-on i386, s_tanh.c gets miscompiled. It works with -O0, so add
 COPTS for exactly that file.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.96 2010/08/07 18:12:46 wiz Exp $
d60 1
a60 1
COMMON_SRCS+= fenv.c
d130 2
a131 2
	s_ceilf.c s_copysign.c s_copysignf.c s_cos.c s_cosf.c s_erf.c \
	s_erff.c s_exp2.c s_exp2f.c s_expm1.c s_expm1f.c s_fabsf.c \
d229 7
a235 3
MLINKS+=exp.3 expf.3 exp.3 expm1.3 exp.3 expm1f.3 exp.3 log.3 exp.3 logf.3 \
	exp.3 log10.3 exp.3 log10f.3 exp.3 log1p.3 exp.3 log1pf.3 \
	exp.3 pow.3 exp.3 powf.3 exp.3 log2.3 exp.3 log2f.3
d240 7
a246 3
MLINKS+=ieee.3 copysign.3 ieee.3 copysignf.3 ieee.3 finite.3 ieee.3 finitef.3 \
	ieee.3 ilogb.3 ieee.3 ilogbf.3 ieee.3 nextafter.3 ieee.3 nextafterf.3 \
	ieee.3 remainder.3 ieee.3 remainderf.3 ieee.3 scalbn.3 ieee.3 scalbnf.3
@


1.96
log
@Fix typo in MLINKS, from Stathis Kamperis. Adapt set lists, and run
them through sort while there.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.95 2010/07/31 21:47:53 joerg Exp $
d69 2
d194 5
@


1.95
log
@Add support for fenv.h interface for i386 and amd64.

Submitted by Stathis Kamperis as part of GSoC 2010 and ported from
FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.94 2010/04/23 19:17:07 drochner Exp $
d202 1
a202 1
	feclearexcept.3 feseteexcpetflag.3	\
@


1.94
log
@-build ldexp/frexp/modf locally again rather than relying on libc
 reaching over, to get things into a sane state,
-do the usual namespace protection game with scalbn(f) because it
 is used internally
(more symbol renamings are necessary)

The weak_alias change for mc68881 is untested.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.93 2010/03/29 06:59:42 mrg Exp $
d54 4
d59 2
d69 1
d118 1
a118 1
COMMON_SRCS = e_acos.c e_acosf.c e_acosh.c e_acoshf.c e_asin.c e_asinf.c \
d198 13
@


1.93
log
@build s_frexp.c, s_ldexp.c and s_modf.c here for new platforms, since they
don't exist as compat functions in libc.

current list of new platforms: powerpc64.

from dennis.c.ferguson@@gmail.com in PR#43042.  idea to not put compat
functions into new platforms from drochner@@netbsd.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.92 2010/01/11 16:28:39 christos Exp $
d140 1
a140 1
	llroundf.c \
a142 8
#
# Add these for machines which don't have compatibility functions in libc,
# since they appeared later than they became libc compatibility.
#
.if (${MACHINE_ARCH} == "powerpc64")
COMMON_SRCS += s_frexp.c s_ldexp.c s_modf.c
.endif

@


1.92
log
@Add exp2 and exp2m
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.91 2009/10/23 23:42:52 joerg Exp $
d143 7
a149 2
# Also in libc.
#COMMON_SRCS += s_frexp.c s_ldexp.c s_modf.c
@


1.91
log
@Disable the use of mandoc for now until support for conditional
expression exists.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.90 2009/10/04 22:04:30 christos Exp $
d122 2
a123 1
	s_erff.c s_expm1.c s_expm1f.c s_fabsf.c s_finite.c s_finitef.c \
@


1.90
log
@add f{min,max,dim}{,l,f} from FreeBSD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.89 2009/01/18 20:42:11 he Exp $
d240 2
@


1.89
log
@Change the use of formally undocumented features, which have now been
made to fail.  Specifically, change
.ifdef(SYMBOL) -> .ifdef SYMBOL or .if defined(SYMBOL),
and corresponding for .ifndef.

Also correct one error in lib/libm/Makefile (.ifdef (${MKCOMPLEX} != "no")?!?).
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.88 2008/08/29 00:02:22 gmcgarry Exp $
d139 3
a141 1
	llroundf.c
d191 1
a191 1
	sqrt.3 tan.3 tanh.3 trunc.3
d232 7
@


1.88
log
@Wrap compiler-specific flags with HAVE_GCC and HAVE_PCC as necessary. Add a few flags for PCC.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.87 2008/07/12 12:23:13 gmcgarry Exp $
d231 1
a231 1
.ifdef (${MKCOMPLEX} != "no")
@


1.88.8.1
log
@sync to netbsd-5
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.88.4.1 2010/03/12 21:58:42 riz Exp $
d139 1
a139 3
	llroundf.c \
	s_fmax.c s_fmaxf.c s_fmaxl.c s_fmin.c s_fminf.c s_fminl.c s_fdim.c

d189 1
a189 1
	sqrt.3 tan.3 tanh.3 trunc.3 fmax.3 fdim.3
a229 7
MLINKS+=fmax.3 fmaxl.3
MLINKS+=fmax.3 fmaxf.3
MLINKS+=fmax.3 fmin.3
MLINKS+=fmax.3 fminl.3
MLINKS+=fmax.3 fminf.3
MLINKS+=fdim.3 fdiml.3
MLINKS+=fdim.3 fdimf.3
@


1.88.4.1
log
@Pull up following revision(s) (requested by snj in ticket #1330):
	lib/libm/man/fmax.3: revision 1.1-1.2
	lib/libm/src/s_fmin.c: revision 1.1-1.2
	lib/libm/src/s_fdim.c: revision 1.1
	lib/libm/src/s_fmaxl.c: revision 1.1
	lib/libm/Makefile: revision 1.90
	include/math.h: revision 1.49
	lib/libm/src/s_fmaxf.c: revision 1.1
	lib/libm/src/s_fmax.c: revision 1.1
	lib/libm/shlib_version: revision 1.10
	distrib/sets/lists/base/md.sparc64: revision 1.63 (via patch)
	distrib/sets/lists/base/shl.mi: revision 1.495 (via patch)
	lib/libm/src/s_fminl.c: revision 1.1
	distrib/sets/lists/comp/mi: revision 1.1317
	lib/libm/man/fdim.3: revision 1.1-1.3
	lib/libm/src/s_fminf.c: revision 1.1
	distrib/sets/lists/base/md.amd64: revision 1.70 (via patch)
add f{min,max,dim}{,l,f} from FreeBSD
These functions are going to first appear in 5.1, not 6.0.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.88 2008/08/29 00:02:22 gmcgarry Exp $
d139 1
a139 3
	llroundf.c \
	s_fmax.c s_fmaxf.c s_fmaxl.c s_fmin.c s_fminf.c s_fminl.c s_fdim.c

d189 1
a189 1
	sqrt.3 tan.3 tanh.3 trunc.3 fmax.3 fdim.3
a229 7
MLINKS+=fmax.3 fmaxl.3
MLINKS+=fmax.3 fmaxf.3
MLINKS+=fmax.3 fmin.3
MLINKS+=fmax.3 fminl.3
MLINKS+=fmax.3 fminf.3
MLINKS+=fdim.3 fdiml.3
MLINKS+=fdim.3 fdimf.3
@


1.87
log
@Check MKCOMPLEX variable to build complex support into libm.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.86 2008/06/03 18:47:28 ad Exp $
d146 1
a146 1
.if ${HAVE_GCC} == 4
@


1.86
log
@- Fold libm387 into libm.
- Leave libm387 as an empty shell.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.85 2008/04/26 19:49:38 christos Exp $
d231 1
d233 2
@


1.85
log
@Remove 3 functions that exist in libc. This does not break binary compatibility
since we always link with libc.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.84 2008/04/26 19:19:06 christos Exp $
a53 1
.if (defined(I387_LIBM) || (${MACHINE_ARCH} == "x86_64"))
d63 1
a63 1
.else
@


1.85.2.1
log
@Sync w/ -current. 34 merge conflicts to follow.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.85 2008/04/26 19:49:38 christos Exp $
d54 1
d64 1
a64 1
.if (${MACHINE_ARCH} == "i386")
@


1.85.2.2
log
@Sync with wrstuden-revivesa-base-2.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.85.2.1 2008/06/23 04:29:53 wrstuden Exp $
d146 1
a146 1
.if defined(HAVE_GCC) && ${HAVE_GCC} == 4
a230 1
.ifdef (${MKCOMPLEX} != "no")
a231 2
.endif

@


1.84
log
@Put back USE_SHLIBDIR and remove the confusing lint comment that made me
comment it out in the first place.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.83 2008/04/25 22:21:53 christos Exp $
d140 3
a142 1
	llroundf.c s_frexp.c s_ldexp.c s_modf.c
@


1.83
log
@avoid shadow variables, and enable lint.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.82 2008/02/20 09:55:38 drochner Exp $
d45 1
a45 2
# XXX lint buts on some archs and needs stubs
#USE_SHLIBDIR=	yes
@


1.82
log
@Add manpages for the complex math functions, originally from SUSv3,
roff source from the Linux documentation project.
Modifications before import:
-added NetBSD RCS ID
-removed Linux PROLOG and declarations with "long double"
-ran the "deshallify" script as required by The Open Group
Split out complex related things into an own Makefile fragment.
Thanks to hubertf for directions.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.81 2008/02/09 02:37:21 mrg Exp $
d46 1
a46 2
NOLINT=		# defined
USE_SHLIBDIR=	yes
d96 1
a96 1
WARNS?=2
d99 1
a99 1
WARNS?=		1
@


1.82.4.1
log
@sync with head.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.82 2008/02/20 09:55:38 drochner Exp $
d45 2
d97 1
a97 1
WARNS?=4
d100 1
a100 1
WARNS?=4
d142 1
a142 3
	llroundf.c
# Also in libc.
#COMMON_SRCS += s_frexp.c s_ldexp.c s_modf.c
@


1.82.4.2
log
@sync with head.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.82.4.1 2008/05/18 12:30:38 yamt Exp $
d54 1
d64 1
a64 1
.if (${MACHINE_ARCH} == "i386")
@


1.81
log
@make all sun2 use -O0 and move most of the hacks out into just 3 files.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.80 2008/02/05 02:41:15 mrg Exp $
a143 10
.PATH: ${.CURDIR}/complex
COMMON_SRCS+= cabs.c cabsf.c carg.c cargf.c
COMMON_SRCS+= creal.c crealf.c cimag.c cimagf.c conj.c conjf.c
COMMON_SRCS+= csqrt.c cexp.c clog.c cpow.c
COMMON_SRCS+= cephes_subr.c csin.c ccos.c ctan.c csinh.c ccosh.c ctanh.c
COMMON_SRCS+= casin.c cacos.c catan.c casinh.c cacosh.c catanh.c
COMMON_SRCS+= csqrtf.c cexpf.c clogf.c cpowf.c
COMMON_SRCS+= cephes_subrf.c csinf.c ccosf.c ctanf.c csinhf.c ccoshf.c ctanhf.c
COMMON_SRCS+= casinf.c cacosf.c catanf.c casinhf.c cacoshf.c catanhf.c

d232 1
@


1.80
log
@make sun2 build again with liberal use of -O0.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.79 2007/08/20 16:01:30 drochner Exp $
a244 16

# XXX Workaround 
.if ${MACHINE_ARCH} == "m68000"
.for f in \
	e_asin e_asinf e_atanh e_atanhf e_hypot e_hypotf \
	e_j0 e_j0f e_j1 e_j1f e_jn e_jnf e_lgammaf_r e_lgamma_r \
	e_pow e_powf e_rem_pio2 e_rem_pio2f e_scalb e_scalbf \
	k_rem_pio2 k_rem_pio2f k_tan k_tanf \
	s_asinh s_asinhf s_atan s_atanf s_cos s_cosf s_erf s_erff \
	s_sin s_sinf s_tanh s_tanhf s_round s_roundf k_standard \
	cacos cacosf cacoshf cacosh casin casinf casinhf casinh \
	catanh catanhf ccos ccosf conj conjf conjf cpow cpowf \
	csqrt csqrtf
COPTS.${f}.c=	-O0
.endfor
.endif
@


1.79
log
@Add C99 complex support, for double and float.
Most complex function implementations are from the "c9x-complex" library,
originating from the "cephes" math library, see
http://www.netlib.org/cephes/, from Stephen L. Moshier, incorporated and
redistributed with the NetBSD license by permission of the author.

Error behaviour and other boundary conditions (branch cuts)
need to be looked at.

For namespace sanity, I've done the rename/weak alias procedure to
most of the exported functions which are also used internally.
Didn't do so for sin/cos(f) yet because assembler implementations use
them directly, and renaming functions shared between the main libm
and the machine specific "overlay" might raise binary compatibility
issues.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.78 2007/02/22 22:08:20 drochner Exp $
d245 16
@


1.79.2.1
log
@sync with HEAD
@
text
@d1 1
a1 1
#  Makefile,v 1.79 2007/08/20 16:01:30 drochner Exp
d144 10
a241 1
.include "${.CURDIR}/complex/Makefile.inc"
@


1.78
log
@-get cabs() and cabsf() out of public view - these are historical and
 conflict with C99 functions which are builtins in newer gcc
 (actually, the old cabs() is ABI compatible with the new _complex one
  on i386, but this is purely accidental)
 remove public prototypes and manpages, move the code into a compat
 subdirectory as libc does so that binary compatibility is kept
-add a manpage for the isgreater() etc macros, borrowed from FreeBSD
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.77 2006/07/03 16:03:56 drochner Exp $
d144 10
@


1.77
log
@move manpages for frexp/ldexp/modf to libm -- the (most) implementation is
already there
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.76 2006/07/01 08:57:14 mrg Exp $
a51 6
# XXX our cabs() is different!
.if ${HAVE_GCC} == 4
COPTS.w_cabs.c=  -fno-builtin-cabs
COPTS.w_cabsf.c= -fno-builtin-cabsf
.endif

d133 1
a133 1
	w_atan2f.c w_atanh.c w_atanhf.c w_cabs.c w_cabsf.c w_cosh.c w_coshf.c \
d144 8
d209 1
a209 1
MLINKS+=hypot.3 hypotf.3 hypot.3 cabs.3 hypot.3 cabsf.3
@


1.76
log
@noieee src is not strict-aliasing compliant.  apply -fno-strict-aliasing.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.75 2006/05/11 00:37:53 mrg Exp $
d185 3
a187 3
	cos.3 cosh.3 erf.3 exp.3 fabs.3 floor.3 fmod.3 hypot.3 ieee.3 \
	ieee_test.3 isinff.3 j0.3 lgamma.3 lrint.3 \
	math.3 rint.3 round.3 sin.3 sinh.3 \
@


1.75
log
@build w_cabs.c/w_cabsf.c with -fno-builtin-cabs[f]

XXX: our cabs()/cabsf() are different to others.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.74 2006/03/25 16:41:11 xtraeme Exp $
d114 2
@


1.74
log
@Add trunc() and truncf() C99 functions, from FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.73 2006/03/21 18:46:05 drochner Exp $
d52 6
@


1.73
log
@Build the sun versions of frexp(), ldexp() and modf().
While the versions in libc/gen are prettier to look at, having single
precision versions in libm and double precision versions in libc causes
a lot of confusion, and to favor libm gets us coprocessor support.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.72 2006/03/15 22:07:09 kleink Exp $
d129 1
a129 1
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c \
d180 1
a180 1
	sqrt.3 tan.3 tanh.3
d220 1
@


1.72
log
@Add nan(3), nanf(3), and nanl(3); welcome libm.so.0.4.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.71 2006/01/17 13:16:08 is Exp $
d140 1
a140 1
	llroundf.c
@


1.71
log
@C versions of non-IEEE round() / roundf(). Alas, using the VAX
cvtrdl; cvtld doesn't work for big numbers.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.70 2006/01/15 12:39:44 is Exp $
d221 1
@


1.70
log
@Implement round(3), so that jot(1) can link again.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.69 2005/09/16 15:26:47 wiz Exp $
d92 1
a92 1
NOIEEE_ARCH= n_round.S
d147 2
a148 1
	n_sincos.c n_tan.c
@


1.69
log
@Add man page for l{,l}rint{,f}(3), very loosely based on the FreeBSD one.
Requested by martin@@
Reviewed by drochner@@
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.68 2005/07/21 20:58:21 rpaulo Exp $
d92 1
@


1.68
log
@Add i387 FPU routines for log2(3) and log2f(3).

ok christos@@
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.67 2005/07/21 16:58:39 christos Exp $
d176 2
a177 1
	ieee_test.3 isinff.3 j0.3 lgamma.3 math.3 rint.3 round.3 sin.3 sinh.3 \
d210 1
@


1.67
log
@Add wrappers for the newly added functions. Thanks Klaus!
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.66 2005/07/21 12:55:58 christos Exp $
d59 7
a65 7
	    e_logf.S e_log10.S e_log10f.S e_remainder.S e_remainderf.S \
	    e_scalb.S e_scalbf.S e_sqrt.S e_sqrtf.S s_atan.S s_atanf.S \
	    s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S s_cos.S s_cosf.S \
	    s_finite.S s_finitef.S s_floor.S s_floorf.S s_ilogb.S s_ilogbf.S \
	    s_log1p.S s_log1pf.S s_logb.S s_logbf.S s_rint.S s_rintf.S \
	    s_scalbn.S s_scalbnf.S s_significand.S s_significandf.S s_sin.S \
	    s_sinf.S s_tan.S s_tanf.S lrint.S
@


1.66
log
@Add log2 and log2f from FreeBSD PR 83845
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.65 2004/11/13 20:29:47 jmmv Exp $
d134 2
a135 1
	w_lgammaf.c w_lgammaf_r.c w_log.c w_log10.c w_log10f.c w_logf.c \
@


1.65
log
@Add a conditional for proper m68k softfloat operation.  It looks like I
forgot to commit this file back when this functionality was added.
Noted by Bruce O'Neel (the original author) in port-mac68k@@.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.64 2004/07/10 13:49:09 junyoung Exp $
d115 3
a117 3
	e_log10.c e_log10f.c e_logf.c e_pow.c e_powf.c e_rem_pio2.c \
	e_rem_pio2f.c e_remainder.c e_remainderf.c e_scalb.c e_scalbf.c \
	e_sinh.c e_sinhf.c e_sqrt.c e_sqrtf.c \
d191 1
a191 1
	exp.3 pow.3 exp.3 powf.3
@


1.65.2.1
log
@Pull up following revision(s) (requested by drochner in ticket #1213):
	lib/libm/man/lrint.3: revision 1.1
	distrib/sets/lists/comp/mi: revision 1.815
	lib/libm/Makefile: revision 1.69
Add man page for l{,l}rint{,f}(3), very loosely based on the FreeBSD one.
Requested by martin@@
Reviewed by drochner@@
@
text
@d1 1
a1 1
#  $NetBSD$
d175 1
a175 2
	ieee_test.3 isinff.3 j0.3 lgamma.3 lrint.3 \
	math.3 rint.3 round.3 sin.3 sinh.3 \
a207 1
MLINKS+=lrint.3 lrintf.3 lrint.3 llrint.3 lrint.3 llrintf.3
@


1.64
log
@lib/24252: Add C99 functions round(3) and roundf(3).
libm minor unchanged; ride a recent bump.

From FreeBSD.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.63 2004/07/01 19:08:21 drochner Exp $
d81 1
d88 1
@


1.63
log
@also provide an alpha assembler implemtation of lrint()
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.62 2004/07/01 17:33:16 drochner Exp $
d124 3
a126 3
	s_nextafterf.c s_rint.c s_rintf.c s_scalbn.c s_scalbnf.c \
	s_signgam.c s_significand.c s_significandf.c s_sin.c s_sinf.c s_tan.c \
	s_tanf.c s_tanh.c s_tanhf.c \
d173 2
a174 2
	ieee_test.3 isinff.3 j0.3 lgamma.3 math.3 rint.3 sin.3 sinh.3 sqrt.3 \
	tan.3 tanh.3
d212 1
@


1.62
log
@enable lrint.S for amd64 (which doesn't build libm387),
and tighten the generic->machdep source distribution a bit to avoid
unwanted substitutions
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.61 2004/07/01 16:09:21 drochner Exp $
d54 1
a54 1
ARCH_SRCS = s_copysign.S s_copysignf.S
@


1.61
log
@being here, add the (l)lround(f) functions to libm
(almost the same like lrint)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.60 2004/06/30 15:08:30 drochner Exp $
d65 1
a65 1
	    s_sinf.S s_tan.S s_tanf.S
d162 1
a162 1
    SRCS:=${SRCS:S/${i:S/.S/.c/}/$i/}
@


1.60
log
@Implement (l)lrint(f).
(Could get some optimization for LP64; this would need a change to
the float access macros in math_private.h.)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.59 2002/06/15 00:13:07 matt Exp $
d135 2
a136 1
	lrint.c lrintf.c llrint.c llrintf.c
@


1.59
log
@Compile libm on VAX at WARNS=2;  leave other architectures at WARNS=1
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.58 2002/01/27 23:33:52 ross Exp $
d134 2
a135 1
	w_sinh.c w_sinhf.c w_sqrt.c w_sqrtf.c
@


1.59.2.1
log
@Pull up revision 1.64 (requested by junyoung in ticket #664):
  Add C99 functions round(3) and roundf(3).
  Bump the teeny version number for libm.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.59 2002/06/15 00:13:07 matt Exp $
d124 3
a126 3
	s_nextafterf.c s_rint.c s_rintf.c s_round.c s_roundf.c s_scalbn.c \
	s_scalbnf.c s_signgam.c s_significand.c s_significandf.c s_sin.c \
	s_sinf.c s_tan.c s_tanf.c s_tanh.c s_tanhf.c \
d171 2
a172 2
	ieee_test.3 isinff.3 j0.3 lgamma.3 math.3 rint.3 round.3 sin.3 sinh.3 \
	sqrt.3 tan.3 tanh.3
a209 1
MLINKS+=round.3 roundf.3
@


1.58
log
@Drink ALL the Kool-Aid.

(Move -mieee from lib/ to bsd.*.mk; new var MKIEEEFP defaults to yes.)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.57 2002/01/27 21:59:19 thorpej Exp $
a51 2
WARNS?=		1

d94 1
d96 2
@


1.58.2.1
log
@Pull up revision 1.59 (requested by matt in ticket #285):
Compile libm on VAX at WARNS=2;  leave other architectures at WARNS=1
@
text
@d1 1
a1 1
#  $NetBSD$
d52 2
a95 1
WARNS?=2
a96 2

WARNS?=		1
@


1.57
log
@On Alpha, build libc and libm with -mieee ... A metric crapload
of 3rd party software expects this.

XXX TODO: consider libm-fast for alpha that is not -mieee.  Possibly
determine -mieee or not at run-time based on a bit in the executable
headers.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.56 2001/12/28 01:32:39 lukem Exp $
a54 2
# XXX Build with -mieee for now.
COPTS+=	-mieee
@


1.56
log
@* Add user-controlled mk.conf variables
	- SHLIBDIR	Location to install shared libraries if ${USE_SHLIBDIR}
			is "yes".  Defaults to "/usr/lib".

	- USE_SHLIBDIR	If "yes", install shared libraries in ${SHLIBDIR}
			instead of ${LIBDIR}.  Defaults to "no".
			Sets ${_LIBSODIR} to the appropriate value.
			This may be set by individual Makefiles as well.

	- SHLINKDIR	Location of shared linker.  Defaults to "/usr/libexec".
			If != "/usr/libexec", change the dynamic-linker
			encoded in shared programs

* Set USE_SHLIBDIR for libraries used by /bin and /sbin:
	libc libcrypt libcrypto libedit libipsec libkvm libm libmi387
	libtermcap libutil libz

* If ${_LIBSODIR} != ${LIBDIR}, add symlinks from ${LIBDIR}/${LIB}.so*
  to ${_LIBSODIR}/${LIB}.so* for compatibility.

* Always install /sbin/init statically (for now)


The net effect of these changes depends on how the variables are set:

  1.)	If nothing is set or changed, there is no change from the
	current behaviour:
		- Static /bin, /sbin, and bits of /usr/*
		- Dynamic rest
		- Shared linker is /usr/libexec/ld*so

  2.)	If the following make variables are set:
		LDSTATIC=
		SHLINKDIR=/lib
		SHLIBDIR=/lib
	Then the behaviour becomes:
		- Dynamic tools
		- .so libraries used by /bin and /sbin are installed to /lib,
		  with symlinks from /usr/lib/lib*so to -> /lib/lib*so
		  where appropriate
		- Shared linker is /lib/ld*so

  3.)	As per 2.), but add the following variable:
		USE_SHLIBDIR=yes
	This forces all .so's to be instaleld in /lib (with compat
	symlinks), not just those tagged by their Makefiles to be.
	Again, compat symlinks are installed
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.55 2001/12/12 00:51:05 tv Exp $
d55 2
@


1.55
log
@Readability cleanups; MKfoo=no -> NOfoo.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.54 2001/11/05 15:22:23 lukem Exp $
d47 1
@


1.54
log
@explicitly set to WARNS?=1
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.53 2001/06/19 00:25:36 fvdl Exp $
d45 3
d51 1
a51 1
WARNS?=1
a165 3

# XXX lint buts on some archs and needs stubs
MKLINT=no
@


1.53
log
@Use arch/i387 for x86_64.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.52 1999/12/13 09:40:27 christos Exp $
d47 2
@


1.52
log
@If we are not including i387 support in libm, build a separate libi387.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.51 1999/08/22 18:28:37 is Exp $
d51 2
a52 2
.elif (${MACHINE_ARCH} == "i386")
.if defined(I387_LIBM)
@


1.52.4.1
log
@Apply patch (requested by user, approved by thorpej):

Dynamic linked JSB called global labels don't work, subroutines
must be called with CALLS instead. This patch fixes it for the 1.5 release.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.52 1999/12/13 09:40:27 christos Exp $
d85 5
a89 3
.PATH:	${.CURDIR}/arch/vax
NOIEEE_ARCH= n_infnan.S n_argred.S n_sqrt.S
ARCH_SRCS = n_atan2.S n_cabs.S n_cbrt.S n_support.S n_sincos.S n_tan.S
d134 2
a135 2
	n_sincos.c n_tan.c \
	n_sqrt.c n_argred.c n_infnan.c n_atan2.c n_cabs.c n_cbrt.c n_support.c
d155 6
@


1.51
log
@Use arch/m68k copies of the common functions even for mc68881 hardware.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.50 1999/08/19 21:53:03 is Exp $
d62 2
d208 1
@


1.51.4.1
log
@Pull up to last week's -current.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.52 1999/12/13 09:40:27 christos Exp $
a61 2
.else
SUBDIR=arch/i387
a205 1
.include <bsd.subdir.mk>
@


1.50
log
@Pull in Motorola 68060 floating point library support package based
libm code, .ifdef M68060.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.49 1999/08/16 23:10:20 kleink Exp $
d68 2
d71 3
d75 1
a75 1
.PATH:	${.CURDIR}/arch/mc68881
@


1.49
log
@Document isinff(3) and isnanf(3), cloned from the corresponding double-
precision manual page.  It is kept separately since the latter are part of
libc and thus impose different linkage instructions.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.48 1999/08/16 12:35:18 kleink Exp $
d63 7
a69 1
.elif (${MACHINE_ARCH} == "m68k") && !defined(M68060) && !defined(M68040)
d75 2
d138 4
@


1.48
log
@Document reentrant log gamma interfaces.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.47 1999/08/15 22:23:53 kleink Exp $
d148 1
a148 1
	ieee_test.3 j0.3 lgamma.3 math.3 rint.3 sin.3 sinh.3 sqrt.3 \
d175 1
@


1.47
log
@Add single-precision versions of interfaces to their manual pages' NAME section
and install links as appropriate.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.46 1999/07/02 15:37:33 simonb Exp $
d177 3
a179 1
MLINKS+=lgamma.3 lgammaf.3 lgamma.3 gamma.3 lgamma.3 gammaf.3
@


1.46
log
@More trailing white space.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.45 1999/07/01 20:46:35 is Exp $
d151 33
a183 11
MLINKS+=erf.3 erfc.3
MLINKS+=exp.3 expm1.3 exp.3 log.3 exp.3 log10.3 exp.3 log1p.3 exp.3 pow.3
MLINKS+=hypot.3 cabs.3
MLINKS+=ieee.3 copysign.3 ieee.3 finite.3 ieee.3 ilogb.3 \
	ieee.3 nextafter.3 ieee.3 remainder.3 ieee.3 scalbn.3
MLINKS+=ieee_test.3 logb.3
MLINKS+=ieee_test.3 scalb.3
MLINKS+=ieee_test.3 significand.3
MLINKS+=j0.3 j1.3 j0.3 jn.3 j0.3 y0.3 j0.3 y1.3 j0.3 yn.3
MLINKS+=lgamma.3 gamma.3
MLINKS+=sqrt.3 cbrt.3
@


1.45
log
@Quick and dirty hook to compile a non-6888[12] libm for 68040 and 68060.
This is switched to by the M68040 or M68060 defines.
XXX Eventually, a M060SP based libm should be built for M68060.
@
text
@d1 3
a3 1
#  $NetBSD: Makefile,v 1.44 1999/02/15 09:33:41 he Exp $
a4 2
#  @@(#)Makefile 5.1beta 93/09/24 
# 
d7 1
a7 1
# 
d10 1
a10 1
#  software is freely granted, provided that this notice 
d13 2
a14 2
# 
# 
d19 2
a20 2
#	_MULTI_LIBM	--- Support multi-standard at runtime by 
#			    imposing wrapper functions defined in 
d27 1
a27 1
# Here is how to set up CPPFLAGS to create the desired libm at 
d32 1
a32 1
#					    libm with SVID as the 
d35 1
a35 1
#					    libm with XOPEN as the 
d38 1
a38 1
#					    libm with POSIX as the 
d41 1
a41 1
#					    libm with IEEE as the 
d43 1
a43 1
# 
d119 2
a120 2
	n_sincos.c n_tan.c 
#	n_sqrt.c n_argred.c n_infnan.c n_atan2.c n_cabs.c n_cbrt.c n_support.c 
d132 1
a132 1
# Substitute common sources with any arch specific sources 
d140 1
a140 1
	n_support.S 
@


1.44
log
@NOLINT -> MKLINT=no.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.43 1998/11/11 15:26:14 matt Exp $
d63 1
a63 1
.elif (${MACHINE_ARCH} == "m68k")
@


1.43
log
@Fix PIC code and fix problem with obj dirs.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.42 1998/10/10 00:08:51 matt Exp $
d143 2
a144 1
NOLINT=		nolint (XXX lint bugs on some archs and needs stubs)
@


1.42
log
@Actually build __setjmp.S/__sigsetjmp.S for vax.  PICifiy the setjmp code.
Fix libm Makefile to handle obj directories.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.41 1998/08/22 12:49:08 ragge Exp $
d138 3
a140 5
#.PATH:	${.CURDIR}/arch/vax
SRCS:=${SRCS} ${.CURDIR}/arch/vax/n_sqrt.S ${.CURDIR}/arch/vax/n_argred.S \
	${.CURDIR}/arch/vax/n_infnan.S ${.CURDIR}/arch/vax/n_atan2.S \
	${.CURDIR}/arch/vax/n_cabs.S ${.CURDIR}/arch/vax/n_cbrt.S \
	${.CURDIR}/arch/vax/n_support.S 
@


1.41
log
@The Mariah chip lacks the POLYD instruction, so some assembly coded
calculations must be done in C instead. Fast fix until the POLY{D,F,G,H}
insn's are written.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.40 1998/08/09 23:51:33 perry Exp $
d138 5
a142 3
SRCS:=${SRCS} arch/vax/n_sqrt.S arch/vax/n_argred.S arch/vax/n_infnan.S \
	arch/vax/n_atan2.S arch/vax/n_cabs.S arch/vax/n_cbrt.S \
	arch/vax/n_support.S 
@


1.40
log
@on i386, use FPU instructions in libm if I387_LIBM is set, from dan@@geek.com.au
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.39 1998/02/19 06:58:07 cgd Exp $
d70 5
a74 3
.PATH:	${.CURDIR}/arch/vax
NOIEEE_ARCH=n_infnan.S n_argred.S n_sqrt.S
ARCH_SRCS = n_atan2.S n_cabs.S n_cbrt.S n_sincos.S n_tan.S n_support.S 
d118 3
a120 2
	n_log__L.c n_pow.c n_sinh.c n_tanh.c n_atan2.c n_cabs.c n_cbrt.c \
	n_sqrt.c n_sincos.c n_tan.c n_argred.c n_support.c n_infnan.c
d137 5
@


1.39
log
@move NOLINT definition
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.38 1998/02/19 02:17:07 cgd Exp $
d45 3
d52 11
a62 10
# Uncomment the following lines if you have a i387 (or i486 or Pentium)
#.PATH:	${.CURDIR}/arch/i387
#ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_expf.S e_fmod.S e_log.S \
#	    e_logf.S e_log10.S e_log10f.S e_remainder.S e_remainderf.S \
#	    e_scalb.S e_scalbf.S e_sqrt.S e_sqrtf.S s_atan.S s_atanf.S \
#	    s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S s_cos.S s_cosf.S \
#	    s_finite.S s_finitef.S s_floor.S s_floorf.S s_ilogb.S s_ilogbf.S \
#	    s_log1p.S s_log1pf.S s_logb.S s_logbf.S s_rint.S s_rintf.S \
#	    s_scalbn.S s_scalbnf.S s_significand.S s_significandf.S s_sin.S \
#	    s_sinf.S s_tan.S s_tanf.S
@


1.38
log
@Make sure the reason that NOLINT is set is documented.  Additionally
in places where it should be set (or has to be set right now), do so.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.37 1997/10/23 02:41:28 lukem Exp $
a47 3
# XXX LINT SIGFPEs in e_exp.c's strtod().  FP underflow/denorm software
# handling is broken (doesn't exist!) on the Alpha port.
NOLINT=		nolint (XXX lint bugs and needs stubs)
d130 2
@


1.37
log
@use CPPFLAGS instead of CFLAGS
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.36 1997/10/18 05:34:11 mikel Exp $
d50 1
a50 1
NOLINT=
@


1.36
log
@kill tab on line by itself, keep contents within 80 columns
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.35 1997/10/09 11:26:55 lukem Exp $
d27 1
a27 1
# Here is how to set up CFLAGS to create the desired libm at 
d30 2
a31 2
# 	CFLAGS = -D_IEEE_LIBM		... IEEE libm (recommended)
#	CFLAGS = -D_SVID3_MODE	... Multi-standard supported
d34 1
a34 1
#	CFLAGS = -D_XOPEN_MODE	... Multi-standard supported
d37 1
a37 1
#	CFLAGS = -D_POSIX_MODE	... Multi-standard supported
d40 1
a40 1
#	CFLAGS = 			... Multi-standard supported
d79 1
a79 1
CFLAGS+= -D_MULTI_LIBM -D_POSIX_MODE
d81 1
a81 1
CFLAGS+=-DLIBM_SCCS
@


1.36.2.1
log
@sync with trunk (approved by thorpej)
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.37 1997/10/23 02:41:28 lukem Exp $
d27 1
a27 1
# Here is how to set up CPPFLAGS to create the desired libm at 
d30 2
a31 2
# 	CPPFLAGS = -D_IEEE_LIBM		... IEEE libm (recommended)
#	CPPFLAGS = -D_SVID3_MODE	... Multi-standard supported
d34 1
a34 1
#	CPPFLAGS = -D_XOPEN_MODE	... Multi-standard supported
d37 1
a37 1
#	CPPFLAGS = -D_POSIX_MODE	... Multi-standard supported
d40 1
a40 1
#	CPPFLAGS = 			... Multi-standard supported
d79 1
a79 1
CPPFLAGS+= -D_MULTI_LIBM -D_POSIX_MODE
d81 1
a81 1
CPPFLAGS+=-DLIBM_SCCS
@


1.35
log
@rcsid facism, WARNSify
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.34 1996/12/19 08:03:40 cgd Exp $
d94 2
a95 2
	s_ceilf.c s_copysign.c s_copysignf.c s_cos.c s_cosf.c s_erf.c s_erff.c \
	s_expm1.c s_expm1f.c s_fabsf.c s_finite.c s_finitef.c \
d98 2
a99 2
	s_log1pf.c s_logb.c s_logbf.c s_matherr.c s_modff.c \
	s_nextafter.c s_nextafterf.c s_rint.c s_rintf.c s_scalbn.c s_scalbnf.c \
d117 1
a117 1
        
@


1.34
log
@force NOLINT on the Alpha, at least until we fix FP underflow/denorm handling
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.33 1996/10/12 18:32:38 ragge Exp $
d81 1
@


1.33
log
@Non-IEEE assembler files wasn't handled correctly. Trouble pointed out by
Robin Birch, fix by Mats O Jansson/Christos Zoulas.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.32 1996/07/05 22:26:51 explorer Exp $
d48 3
@


1.32
log
@Add a continuation slash in the commented-out i387 section
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.31 1996/07/03 18:02:43 jtc Exp $
d125 1
a125 1
.for i in ${ARCH_SRCS}
@


1.31
log
@Add new i387 math functions to ARCH_SRCS
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.30 1996/06/26 14:39:49 jtc Exp $
d55 1
a55 1
#	    s_finite.S s_finitef.S s_floor.S s_floorf.S s_ilogb.S s_ilogbf.S 
@


1.30
log
@Enable mc68881 version of fmod
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.29 1996/06/26 07:38:42 jtc Exp $
d51 8
a58 7
#ARCH_SRCS = e_acos.S e_asin.S e_atan2.S e_exp.S e_fmod.S e_log.S e_log10.S \
#	    e_remainder.S e_remainderf.S e_scalb.S e_sqrt.S e_sqrtf.S \
#	    s_atan.S s_atanf.S s_ceil.S s_ceilf.S s_copysign.S s_copysignf.S \
#	    s_cos.S s_cosf.S s_finite.S s_finitef.S s_floor.S s_floorf.S \
#	    s_ilogb.S s_ilogbf.S s_log1p.S s_log1pf.S s_logb.S s_logbf.S \
#	    s_rint.S s_rintf.S s_scalbn.S s_scalbnf.S s_significand.S \
#	    s_significandf.S s_sin.S s_sinf.S s_tan.S s_tanf.S
@


1.29
log
@enable alpha-specific libm files
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.28 1995/11/20 22:06:19 jtc Exp $
d60 4
a63 4
ARCH_SRCS = e_acos.S e_asin.S e_atanh.S e_cosh.S e_exp.S e_log.S e_log10.S \
	    e_remainder.S e_scalb.S e_sinh.S e_sqrt.S s_atan.S s_ceil.S \
	    s_copysign.S s_cos.S s_expm1.S s_finite.S s_floor.S s_log1p.S \
	    s_logb.S s_rint.S s_scalbn.S s_sin.S s_tan.S s_tanh.S
@


1.28
log
@Changed w_gamma.c, w_gamma_r.c, w_gammaf.c, w_gammaf_r.c to call
__ieee754_lgamma_r or __ieee754_lgammaf_r.
Removed e_gamma.c, e_gamma_r.c, e_gammaf.c, e_gammaf_r.c, e_lgamma.c,
e_lgamma_f.c.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.27 1995/10/10 23:43:31 ragge Exp $
d45 4
a48 1
.if (${MACHINE_ARCH} == "i386")
@


1.27
log
@Got Makefile to understand to use non-IEEE files on vax systems.
@
text
@d1 1
a1 1
#  $NetBSD: Makefile,v 1.26 1995/05/03 20:42:23 jtc Exp $
d78 3
a80 4
	e_expf.c e_fmod.c e_fmodf.c e_gamma.c e_gamma_r.c e_gammaf.c \
	e_gammaf_r.c e_hypot.c e_hypotf.c e_j0.c e_j0f.c e_j1.c e_j1f.c \
	e_jn.c e_jnf.c e_lgamma.c e_lgamma_r.c e_lgammaf.c e_lgammaf_r.c \
	e_log.c e_log10.c e_log10f.c e_logf.c e_pow.c e_powf.c e_rem_pio2.c \
@


1.26
log
@Add i387 "float" functions to the makefile
@
text
@d1 2
a3 1
#  $Id: Makefile,v 1.25 1995/02/18 01:46:41 jtc Exp $
d61 4
d69 1
d71 1
a71 1

d73 1
d104 8
d115 5
a119 2

SRCS=${COMMON_SRCS}
@


1.25
log
@Enable mc68881 versions of remainder() and scalb().
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.24 1994/12/22 09:50:37 cgd Exp $
d48 6
a53 3
#	    e_remainder.S e_scalb.S e_sqrt.S s_atan.S s_ceil.S s_copysign.S \
#	    s_cos.S s_finite.S s_floor.S s_ilogb.S s_log1p.S s_logb.S \
#	    s_rint.S s_scalbn.S s_significand.S s_sin.S s_tan.S
@


1.24
log
@specify man pages the new way.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.23 1994/09/25 17:31:51 jtc Exp $
d54 3
a56 3
	    e_sinh.S e_sqrt.S s_atan.S s_ceil.S s_copysign.S s_cos.S \
	    s_expm1.S s_finite.S s_floor.S s_log1p.S s_logb.S s_rint.S \
	    s_scalbn.S s_sin.S s_tan.S s_tanh.S
@


1.23
log
@Added s_isinff.c
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.22 1994/08/10 20:30:00 jtc Exp $
d106 4
a109 4
MAN3+=	acos.0 acosh.0 asin.0 asinh.0 atan.0 atan2.0 atanh.0 ceil.0 \
	cos.0 cosh.0 erf.0 exp.0 fabs.0 floor.0 fmod.0 hypot.0 ieee.0 \
	ieee_test.0 j0.0 lgamma.0 math.0 rint.0 sin.0 sinh.0 sqrt.0 \
	tan.0 tanh.0
@


1.22
log
@Float versions of math functions.  From Ian Taylor (ian@@cygnus.com), with
minor changes by me.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.21 1994/03/12 01:20:02 jtc Exp $
d80 1
a80 1
	s_isnanf.c s_ldexpf.c s_lib_version.c s_log1p.c \
d95 1
a95 1
#COMMON_SRCS+=	s_fabs.c s_frexp.c s_isnan.c s_ldexp.c s_modf.c
@


1.21
log
@Update for mc68881 ceil(), floor(), & rint(), and s_sqrt.S -> e_sqrt.S
naming mistake.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.20 1994/03/11 17:18:54 jtc Exp $
d66 27
a92 18
COMMON_SRCS = k_standard.c k_rem_pio2.c k_cos.c k_sin.c k_tan.c \
	e_acos.c e_acosh.c e_asin.c e_atan2.c e_atanh.c e_cosh.c e_exp.c \
	e_fmod.c e_gamma.c e_gamma_r.c e_hypot.c e_j0.c e_j1.c e_jn.c \
	e_lgamma.c e_lgamma_r.c e_log.c e_log10.c e_pow.c e_rem_pio2.c \
	e_remainder.c e_scalb.c e_sinh.c e_sqrt.c \
	w_acos.c w_acosh.c w_asin.c w_atan2.c \
	w_atanh.c w_cosh.c w_exp.c w_fmod.c \
	w_gamma.c w_gamma_r.c w_hypot.c w_j0.c \
	w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c \
	w_log.c w_log10.c w_pow.c w_remainder.c \
	w_scalb.c w_sinh.c w_sqrt.c \
	w_cabs.c w_drem.c \
	s_asinh.c s_atan.c s_cbrt.c s_ceil.c s_copysign.c \
	s_cos.c s_erf.c s_expm1.c s_finite.c s_floor.c \
	s_ilogb.c s_lib_version.c \
	s_log1p.c s_logb.c s_matherr.c s_nextafter.c \
	s_rint.c s_scalbn.c s_signgam.c s_significand.c s_sin.c \
	s_tan.c s_tanh.c
@


1.20
log
@Added a ieee_test(3) man page (Like SunOS) derrived from an earlier copy
of ieee(3).  This man page describes logb, scalb, and significand, which
are really only useful for verifying IEEE754 compliance.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.19 1994/03/11 01:34:18 jtc Exp $
d54 3
a56 2
	    e_sinh.S s_atan.S s_copysign.S s_cos.S s_expm1.S s_finite.S \
	    s_log1p.S s_logb.S s_scalbn.S s_sin.S s_sqrt.S s_tan.S s_tanh.S
@


1.19
log
@infnan was a vaxism.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.18 1994/03/10 18:13:32 jtc Exp $
d98 1
a98 1
	j0.0 lgamma.0 math.0 rint.0 sin.0 sinh.0 sqrt.0 \
d106 3
a111 1

@


1.18
log
@Added i387 version of significand().
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.17 1994/03/08 17:20:51 jtc Exp $
d98 1
a98 1
	infnan.0 j0.0 lgamma.0 math.0 rint.0 sin.0 sinh.0 sqrt.0 \
@


1.17
log
@Christos Zoulas' Makefile fixes.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.16 1994/03/01 17:14:34 jtc Exp $
d50 1
a50 1
#	    s_rint.S s_scalbn.S s_sin.S s_tan.S
@


1.16
log
@Add cabs() & drem() for BSD libm compatibility.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.15 1994/02/25 19:32:18 jtc Exp $
d47 4
d52 4
a55 1
#.PATH:	${.CURDIR}/arch/mc68881
d65 18
a82 18
OBJS = 	k_standard.o k_rem_pio2.o k_cos.o k_sin.o k_tan.o \
	e_acos.o e_acosh.o e_asin.o e_atan2.o e_atanh.o e_cosh.o e_exp.o \
	e_fmod.o e_gamma.o e_gamma_r.o e_hypot.o e_j0.o e_j1.o e_jn.o \
	e_lgamma.o e_lgamma_r.o e_log.o e_log10.o e_pow.o e_rem_pio2.o \
	e_remainder.o e_scalb.o e_sinh.o e_sqrt.o \
	w_acos.o w_acosh.o w_asin.o w_atan2.o \
	w_atanh.o w_cosh.o w_exp.o w_fmod.o \
	w_gamma.o w_gamma_r.o w_hypot.o w_j0.o \
	w_j1.o w_jn.o w_lgamma.o w_lgamma_r.o \
	w_log.o w_log10.o w_pow.o w_remainder.o \
	w_scalb.o w_sinh.o w_sqrt.o \
	w_cabs.o w_drem.o \
	s_asinh.o s_atan.o s_cbrt.o s_ceil.o s_copysign.o \
	s_cos.o s_erf.o s_expm1.o s_finite.o s_floor.o \
	s_ilogb.o s_lib_version.o \
	s_log1p.o s_logb.o s_matherr.o s_nextafter.o \
	s_rint.o s_scalbn.o s_signgam.o s_significand.o s_sin.o \
	s_tan.o s_tanh.o
d85 10
a94 1
#OBJS+=	s_fabs.o s_frexp.o s_isnan.o s_ldexp.o s_modf.o
@


1.15
log
@Update manpages for new math library.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.14 1994/02/15 01:00:46 jtc Exp $
d69 1
@


1.14
log
@Compiled shared too.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.13 1994/02/14 17:32:56 jtc Exp $
d87 2
a88 2
MLINKS+=ieee.3 copysign.3 ieee.3 drem.3 ieee.3 finite.3 ieee.3 logb.3 \
	ieee.3 scalb.3
@


1.13
log
@Comment out all functions that are also provided by our C library: fabs(),
frexp(), isnan(), ldexp(), and modf().
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.12 1994/02/14 17:07:07 jtc Exp $
a55 1
NOPIC=
@


1.12
log
@isnan() was provided by both C and Math libraries.
@
text
@d2 1
a2 1
#  $Id: Makefile,v 1.11 1994/02/11 18:35:35 jtc Exp $
d71 3
a73 3
	s_cos.o s_erf.o s_expm1.o s_fabs.o s_finite.o s_floor.o \
	s_frexp.o s_ilogb.o s_ldexp.o s_lib_version.o \
	s_log1p.o s_logb.o s_matherr.o s_modf.o s_nextafter.o \
d77 2
a78 2
# NetBSD's C library supplies isnan().
#OBJS+=	s_isnan.o
@


1.11
log
@Changes for fdlibm based math library
@
text
@d2 1
a2 1
#  $Id: $
d72 1
a72 1
	s_frexp.o s_ilogb.o s_isnan.o s_ldexp.o s_lib_version.o \
d77 2
@


1.10
log
@use .S not .s
@
text
@d1 27
a27 2
#	from: @@(#)Makefile	5.11 (Berkeley) 12/2/92
#	$Id: Makefile,v 1.9 1993/12/05 01:10:14 cgd Exp $
d29 21
a49 7
# ieee		- for most IEEE machines, we hope.
# mc68881	- the, ahem, mc68881.
# national	- NATIONAL 32016 with 32081.
# i386		- i387 NPX
# mips		- for MIPS achitecture machines (and also pmax)
# tahoe		- for the tahoe double format.
# vax		- for the vax D_floating format
d51 2
a52 3
LIB=	m
CFLAGS+=-I${.CURDIR}/common_source
NOPIC=	nopic
a53 1
.if (${MACHINE_ARCH} == "ieee")
d55 2
a56 10
HARDWARE=${MACHINE_ARCH}
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# common
SRCS+=	atan2.c sincos.c tan.c
# ieee
SRCS+=	cabs.c cbrt.c support.c
d58 18
a75 1
.elif (${MACHINE_ARCH} == "m68k")
a76 92
HARDWARE=mc68881
.PATH:	${.CURDIR}/mc68881 ${.CURDIR}/common_source ${.CURDIR}/ieee
# common_source
SRCS+=	acosh.c asinh.c erf.c exp__D.c exp__E.c fmod.c gamma.c lgamma.c j0.c \
	j1.c log__D.c log__L.c logtab.c pow.c
# mc68881
SRCS+=	asincos.S atan.S atan2.c atanh.S cosh.S exp.S expm1.S floor.S \
	log.S log10.S log1p.S sincos.S sinh.S sqrt.S support.S tan.S tanh.S
# ieee
SRCS+=	cabs.c cbrt.c

.elif (${MACHINE_ARCH} == "i386")

HARDWARE=i387
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# common
SRCS+=	atan2.c sincos.c tan.c
# ieee
SRCS+=	cabs.c cbrt.c support.c

.elif (${MACHINE_ARCH} == "mips" || ${MACHINE_ARCH} == "pmax")

HARDWARE=${MACHINE_ARCH}
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# common
SRCS+=	atan2.c sincos.c tan.c
# ieee
SRCS+=	cabs.c cbrt.c support.c

.elif (${MACHINE_ARCH} == "national" || ${MACHINE_ARCH} == "ns32k")
HARDWARE=national
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/national \
	${.CURDIR}/ieee
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# common
SRCS+=	atan2.c sincos.c tan.c
# national
SRCS+=	sqrt.S support.S
# ieee
SRCS+=	cabs.c cbrt.c

.elif (${MACHINE_ARCH} == "sparc")

HARDWARE=${MACHINE_ARCH}
.PATH:  ${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/ieee
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# XXX should do sqrt & support functions in assembly
# common
SRCS+=	atan2.c sincos.c tan.c
# ieee
SRCS+=	cabs.c cbrt.c support.c

.elif (${MACHINE_ARCH} == "tahoe")

HARDWARE=${MACHINE_ARCH}
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/tahoe \
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# common
SRCS+=	atan2.c sincos.c tan.c
# tahoe
SRCS+=	cabs.S cbrt.S sqrt.S support.S infnan.S

.elif (${MACHINE_ARCH} == "vax")

HARDWARE=${MACHINE_ARCH}
.PATH:	${.CURDIR}/common_source ${.CURDIR}/vax
# common_source
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c exp__D.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
# vax
SRCS+=	atan2.S cabs.S cbrt.S sqrt.S sincos.S tan.S argred.S support.S \
	infnan.S

.endif
a91 7
# can't use the standard mkdep, because there are some .S files that
# are using '#' as a comment indicator and cpp thinks it's an undefined
# control.

depend: .depend
.depend: ${SRCS}
	mkdep ${CFLAGS:M-[ID]*} ${.ALLSRC:M*.c}
a93 11

.S.o:
	${AS} -o ${.TARGET} ${.IMPSRC}
	@@${LD} -x -r ${.TARGET}
	@@mv a.out ${.TARGET}

.S.po:
	sed -f ${.CURDIR}/${HARDWARE}/mcount.sed ${.IMPSRC} | \
	    ${AS} -o ${.TARGET}
	@@${LD} -X -r ${.TARGET}
	@@mv a.out ${.TARGET}
@


1.9
log
@update for MACHINE_ARCH
@
text
@d2 1
a2 1
#	$Id: Makefile,v 1.8 1993/10/21 00:41:56 jtc Exp $
d37 2
a38 2
SRCS+=	asincos.s atan.s atan2.c atanh.s cosh.s exp.s expm1.s floor.s \
	log.s log10.s log1p.s sincos.s sinh.s sqrt.s support.s tan.s tanh.s
d79 1
a79 1
SRCS+=	sqrt.s support.s
d108 1
a108 1
SRCS+=	cabs.s cbrt.s sqrt.s support.s infnan.s
d119 2
a120 2
SRCS+=	atan2.s cabs.s cbrt.s sqrt.s sincos.s tan.s argred.s support.s \
	infnan.s
d138 1
a138 1
# can't use the standard mkdep, because there are some .s files that
d148 1
a148 1
.s.o:
d153 1
a153 1
.s.po:
@


1.8
log
@Use BYTE_ORDER == LITTLE_ENDIAN instead of -Dnational to select byte order
of floating point numbers.

The assumption that a processor's floats use the same order as its integers
is probably unwarranted, but it is better than requiring non-national CPUs
to #define national, as that drags in national-specific code too.
(According to a comment in the code, the national FPU does not do infinity)
@
text
@d2 1
a2 1
#	$Id: Makefile,v 1.7 1993/10/11 19:20:24 jtc Exp $
d6 3
a8 4
# national	- for those ieee machines whose floating point implementation
#		  has similar byte ordering as the NATIONAL 32016 with 32081.
# i386		- i387 NPX, currently the same as "national"
# mips		- for MIPS achitecture machines
d16 1
a16 1
.if (${MACHINE} == "ieee")
d18 1
a18 1
HARDWARE=${MACHINE}
d29 1
a29 1
.elif (${MACHINE} == "hp300" || ${MACHINE} == "luna68k")
d42 1
a42 1
.elif (${MACHINE} == "i386")
d55 1
a55 1
.elif (${MACHINE} == "mips")
d57 1
a57 1
HARDWARE=${MACHINE}
d68 2
a69 7
.elif (${MACHINE} == "national")

HARDWARE=${MACHINE}
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common ${.CURDIR}/national \
.elif (${MACHINE} == "national")

HARDWARE=${MACHINE}
d83 1
a83 1
.elif (${MACHINE} == "sparc")
d85 1
a85 1
HARDWARE=${MACHINE}
d97 1
a97 1
.elif (${MACHINE} == "tahoe")
d99 1
a99 1
HARDWARE=${MACHINE}
d110 1
a110 1
.elif (${MACHINE} == "vax")
d112 1
a112 1
HARDWARE=${MACHINE}
@


1.7
log
@Install cbrt link to sqrt manpage.
@
text
@d2 1
a2 1
#	$Id: Makefile,v 1.6 1993/10/05 21:52:07 pk Exp $
a46 1
CFLAGS+= -Dnational
a59 1
CFLAGS+= -Dnational
@


1.6
log
@No PIC, you probably don't want the overhead in these functions.
@
text
@d2 1
a2 1
#	$Id: Makefile,v 1.5 1993/10/01 23:56:08 cgd Exp $
d144 1
@


1.5
log
@put gamma.c into libm (because it's missing)...
@
text
@d2 1
a2 1
#	$Id: Makefile,v 1.4 1993/08/14 19:20:58 mycroft Exp $
d15 1
@


1.4
log
@Split log() and log__D() into separate files.  Add logtab.c for logarithm
tables and log.h for common definitions.
Split exp() and exp__D() into separate files.
@
text
@d2 1
a2 1
#	$Id: Makefile,v 1.3 1993/08/14 13:42:09 mycroft Exp $
d34 2
a35 2
SRCS+=	acosh.c asinh.c erf.c exp__D.c exp__E.c fmod.c lgamma.c j0.c j1.c \
	log__D.c log__L.c logtab.c pow.c
d49 2
a50 2
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c log10.c \
	log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
d63 2
a64 2
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c log10.c \
	log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
d81 2
a82 2
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c log10.c \
	log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
d96 2
a97 2
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c log10.c \
	log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
d110 2
a111 2
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c log10.c \
	log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
d123 2
a124 2
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c log10.c \
	log1p.c log__D.c log__L.c logtab.c pow.c sinh.c tanh.c
@


1.3
log
@New code from uunet.
@
text
@d2 1
a2 1
#	$Id: $
d21 3
a23 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c gamma.c lgamma.c j0.c j1.c \
	jn.c log.c log10.c log1p.c log__L.c pow.c sinh.c tanh.c
d34 2
a35 2
SRCS+=	acosh.c asinh.c erf.c exp__E.c fmod.c lgamma.c j0.c j1.c log__L.c \
	pow.c
d48 3
a50 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__L.c pow.c sinh.c tanh.c
d62 3
a64 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__L.c pow.c sinh.c tanh.c
d80 3
a82 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__L.c pow.c sinh.c tanh.c
d95 3
a97 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__L.c pow.c sinh.c tanh.c
d109 3
a111 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__L.c pow.c sinh.c tanh.c
d122 3
a124 3
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c erf.c exp.c \
	exp__E.c expm1.c floor.c fmod.c lgamma.c j0.c j1.c jn.c log.c \
	log10.c log1p.c log__L.c pow.c sinh.c tanh.c
@


1.2
log
@Add RCS identifiers.
@
text
@d1 1
a1 1
#	from: @@(#)Makefile	5.7.1.1 (Berkeley) 5/7/91
d9 1
a12 2
# Missing: erf.c, j0.c, j1.c, jn.c, lgamma.c

d16 28
d45 33
a77 1
.PATH:	${.CURDIR}/common_source ${.CURDIR}/common \
d79 15
a93 1
CFLAGS+= -Dnational
d95 2
a96 2
SRCS+=	acosh.c asincos.c asinh.c atan.c atanh.c cosh.c exp.c \
	exp__E.c expm1.c floor.c fmod.c log.c \
d98 1
d103 27
@


1.1
log
@Initial revision
@
text
@d1 2
a2 1
#	@@(#)Makefile	5.7.1.1 (Berkeley) 5/7/91
@


1.1.1.1
log
@initial import of 386bsd-0.1 sources
@
text
@@
