diff options
author | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-16 21:23:19 +0000 |
---|---|---|
committer | burnus <burnus@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-16 21:23:19 +0000 |
commit | 87969c8c8b36df7b629b962028b668d7ede7321c (patch) | |
tree | e26ad385cfada5f1f2c55f92057a0259de8b98d2 /libquadmath/Makefile.am | |
parent | 6ef8d12f7e0db62100394a870efefae4c20f74f7 (diff) | |
download | gcc-87969c8c8b36df7b629b962028b668d7ede7321c.tar.gz |
/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* Makefile.def: Add libquadmath; build it with language=fortran.
* configure.ac: Add libquadmath.
* Makefile.tpl: Handle multiple libs in check-[+language+].
* Makefile.in: Regenerate.
* configure: Regenerate.
libquadmath/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
Initial implementation and checkin.
gcc/fortran/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* gfortranspec.c (find_spec_file): New function.
(lang_specific_driver): Try to find .spec file and use it.
* trans-io.c (iocall): Define
* IOCALL_X_REAL128/COMPLEX128(,write).
(gfc_build_io_library_fndecls): Build decl for __float128 I/O.
(transfer_expr): Call __float128 I/O functions.
* trans-types.c (gfc_init_kinds): Allow kind-16 belonging
to __float128.
gcc/testsuite/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* gfortran.dg/quad_1.f90: New.
* lib/gcc-defs.exp (gcc-set-multilib-library-path): Use also
compiler arguments.
* lib/gfortran.exp (gfortran_link_flags): Add libquadmath to
library search path; call gcc-set-multilib-library-path with
arguments such that libgfortran.spec is found.
(gfortran_init): Add path for libgfortran.spec to
GFORTRAN_UNDER_TEST.
libgomp/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* configure.ac:
* configure: Regenerate.
libgfortran/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* Makefile.am: Add missing pow_r16_i4.c, add transfer128.c,
link libquadmath, if used.
* acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Add.
* configure.ac: Use it, touch spec file.
* gfortran.map: Add pow_r16_i4 and
transfer_(real,complex)128(,write) functions.
* intrinsics/cshift0.c (cshift0): Handle __float128 type.
* intrinsics/erfc_scaled_inc.c: Ditto.
* intrinsics/pack_generic.c (pack): Ditto
* intrinsics/spread_generic.c (spread): Ditto.
* intrinsics/unpack_generic.c (unpack1): Ditto.
* io/read.c (convert_real): Ditto.
* io/transfer.c: Update comments.
* io/transfer128.c: New file.
* io/write_float.def (write_float): Handle __float128 type.
* libgfortran.h: #include quadmath_weak.h, define __builtin_infq
and nanq.
* m4/mtype.m4: Handle __float128 type.
* runtime/in_pack_generic.c (internal_pack): Ditto.
* runtime/in_unpack_generic.c (internal_unpack): Ditto.
* kinds-override.h: New file.
* libgfortran.spec.in: Ditto.
* generated/pow_r16_i4.c: Generated.
* Makefile.in: Regenerate.
* configure: Regenerate.
* config.h: Regenerate.
* bessel_r10.c: Regenerate.
* bessel_r16.c: Regenerate.
* bessel_r4.c: Regenerate.
* bessel_r8.c: Regenerate.
* exponent_r16.c: Regenerate.
* fraction_r16.c: Regenerate.
* nearest_r16.c: Regenerate.
* norm2_r10.c: Regenerate.
* norm2_r16.c: Regenerate.
* norm2_r4.c: Regenerate.
* norm2_r8.c: Regenerate.
* rrspacing_r16.c: Regenerate.
* set_exponent_r16.c: Regenerate.
* spacing_r16.c: Regenerate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166825 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libquadmath/Makefile.am')
-rw-r--r-- | libquadmath/Makefile.am | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/libquadmath/Makefile.am b/libquadmath/Makefile.am new file mode 100644 index 00000000000..667b9baf66a --- /dev/null +++ b/libquadmath/Makefile.am @@ -0,0 +1,70 @@ +## Process this file with automake to produce Makefile.in + +AUTOMAKE_OPTIONS = 1.8 foreign + + +## Skip over everything if the quadlib is not available: +if BUILD_LIBQUADMATH +ACLOCAL_AMFLAGS = -I .. -I ../config + +## May be used by toolexeclibdir. +gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER) + +## Symbol versioning (copied from libssp). +if LIBQUAD_USE_SYMVER +if LIBQUAD_USE_SYMVER_GNU +version_arg = -Wl,--version-script=$(srcdir)/quadmath.map +version_dep = $(srcdir)/quadmath.map +endif +if LIBQUAD_USE_SYMVER_SUN +version_arg = -Wl,-M,quadmath.map-sun +version_dep = quadmath.map-sun +quadmath.map-sun : $(srcdir)/quadmath.map \ + $(top_srcdir)/../contrib/make_sunver.pl \ + $(libquadmath_la_OBJECTS) $(libquadmath_la_LIBADD) + perl $(top_srcdir)/../contrib/make_sunver.pl \ + $(srcdir)/quadmath.map \ + $(libquadmath_la_OBJECTS:%.lo=.libs/%.o) \ + `echo $(libquadmath_la_LIBADD) | \ + sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \ + > $@ || (rm -f $@ ; exit 1) +endif +else +version_arg = +version_dep = +endif + +LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS)) \ + -no-undefined + + +toolexeclib_LTLIBRARIES = libquadmath.la +libquadmath_la_LIBADD = -lm +libquadmath_la_LDFLAGS = $(LTLDFLAGS) -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(version_arg) +libquadmath_la_LINK = $(LINK) $(libgfortran_la_LDFLAGS) +libquadmath_la_DEPENDENCIES = $(version_dep) + +include_HEADERS = quadmath.h quadmath_weak.h + +libquadmath_la_SOURCES = \ + gdtoa/arith.h gdtoa/gdtoa_fltrnds.h gdtoa/gd_qnan.h gdtoa/gdtoaimp.h \ + gdtoa/gdtoa.h quadmath-imp.h \ + gdtoa/dmisc.c gdtoa/gdtoa.c gdtoa/hd_init.c gdtoa/smisc.c gdtoa/sum.c \ + gdtoa/g_Qfmt.c gdtoa/gethex.c gdtoa/hexnan.c gdtoa/strtodg.c \ + gdtoa/ulp.c gdtoa/g__fmt.c gdtoa/gmisc.c gdtoa/misc.c gdtoa/strtopQ.c \ + quadmath_io.c \ + math/acoshq.c math/fmodq.c math/acosq.c math/frexpq.c \ + math/rem_pio2q.c math/asinhq.c math/hypotq.c math/remainderq.c \ + math/asinq.c math/rintq.c math/atan2q.c math/isinfq.c \ + math/roundq.c math/atanhq.c math/isnanq.c math/scalblnq.c math/atanq.c \ + math/j0q.c math/scalbnq.c math/cbrtq.c math/j1q.c math/signbitq.c \ + math/ceilq.c math/jnq.c math/sincos_table.c math/complex.c math/ldexpq.c \ + math/sincosq.c math/copysignq.c math/lgammaq.c math/sincosq_kernel.c \ + math/coshq.c math/llroundq.c math/sinhq.c math/cosq.c math/log10q.c \ + math/sinq.c math/cosq_kernel.c math/log1pq.c math/sinq_kernel.c \ + math/erfq.c math/logq.c math/sqrtq.c math/expm1q.c math/lroundq.c \ + math/tanhq.c math/expq.c math/modfq.c math/tanq.c math/fabsq.c \ + math/nanq.c math/tgammaq.c math/finiteq.c math/nextafterq.c \ + math/truncq.c math/floorq.c math/powq.c + +endif |