[RFC] Quad-float support in Fortran

Jack Howarth howarth@bromo.med.uc.edu
Mon Nov 8 00:48:00 GMT 2010


On Sun, Nov 07, 2010 at 09:59:00PM +0100, Dominique Dhumieres wrote:
> Tobias,
> 
> I have tried to bootstrap x86_64-apple-darwin10 with your patches
> + http://users.physik.fu-berlin.de/~tburnus/tmp/Makefile.am and
> http://users.physik.fu-berlin.de/~tburnus/tmp/Makefile.in
> and it still fails when building the libs in libgfortran
> with
> 
> 32922 : Undefined symbols:
> 32923 +   "_tanhq", referenced from:
> 32924 +       __gfortran_specific__tanh_r16 in _tanh_r16.o
> 32925 +   "_clogq", referenced from:
> ...
> 
> Dominique

Tobias,
   Specifically, it fails with...

Checking multilib configuration for libgfortran...
make  all-am
/bin/sh ./libtool --tag=CC   --mode=link /sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/./gcc/xgcc -B/sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/./gcc/ -B/sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/bin/ -B/sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/lib/ -isystem /sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/include -isystem /sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/sys-include    -std=gnu99 -Wall -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wextra -Wwrite-strings -fcx-fortran-rules -ffunction-sections -fdata-sections  -g -O2   -o libgfortran.la -version-info `grep -v '^#' ../../../gcc-4.6-20101107/libgfortran/libtool-version`  -no-undefined -bindir "/sw/lib/gcc4.6/bin" -lm -Wl,-single_module  -rpath /sw/lib/gcc4.6/lib backtrace.lo bounds.lo compile_options.lo convert_char.lo environ.lo error.lo fpu.lo main.lo memory.lo pause.lo stop.lo string.lo select.lo all_l1.lo all_l2.lo all_l4.lo all_l8.lo all_l16.lo any_l1.lo any_l2.lo any_l4.lo any_l8.lo any_l16.lo count_1_l.lo count_2_l.lo count_4_l.lo count_8_l.lo count_16_l.lo maxloc0_4_i1.lo maxloc0_8_i1.lo maxloc0_16_i1.lo maxloc0_4_i2.lo maxloc0_8_i2.lo maxloc0_16_i2.lo maxloc0_4_i4.lo maxloc0_8_i4.lo maxloc0_16_i4.lo maxloc0_4_i8.lo maxloc0_8_i8.lo maxloc0_16_i8.lo maxloc0_4_i16.lo maxloc0_8_i16.lo maxloc0_16_i16.lo maxloc0_4_r4.lo maxloc0_8_r4.lo maxloc0_16_r4.lo maxloc0_4_r8.lo maxloc0_8_r8.lo maxloc0_16_r8.lo maxloc0_4_r10.lo maxloc0_8_r10.lo maxloc0_16_r10.lo maxloc0_4_r16.lo maxloc0_8_r16.lo maxloc0_16_r16.lo maxloc1_4_i1.lo maxloc1_8_i1.lo maxloc1_16_i1.lo maxloc1_4_i2.lo maxloc1_8_i2.lo maxloc1_16_i2.lo maxloc1_4_i4.lo maxloc1_8_i4.lo maxloc1_16_i4.lo maxloc1_4_i8.lo maxloc1_8_i8.lo maxloc1_16_i8.lo maxloc1_4_i16.lo maxloc1_8_i16.lo maxloc1_16_i16.lo maxloc1_4_r4.lo maxloc1_8_r4.lo maxloc1_16_r4.lo maxloc1_4_r8.lo maxloc1_8_r8.lo maxloc1_16_r8.lo maxloc1_4_r10.lo maxloc1_8_r10.lo maxloc1_16_r10.lo maxloc1_4_r16.lo maxloc1_8_r16.lo maxloc1_16_r16.lo maxval_i1.lo maxval_i2.lo maxval_i4.lo maxval_i8.lo maxval_i16.lo maxval_r4.lo maxval_r8.lo maxval_r10.lo maxval_r16.lo minloc0_4_i1.lo minloc0_8_i1.lo minloc0_16_i1.lo minloc0_4_i2.lo minloc0_8_i2.lo minloc0_16_i2.lo minloc0_4_i4.lo minloc0_8_i4.lo minloc0_16_i4.lo minloc0_4_i8.lo minloc0_8_i8.lo minloc0_16_i8.lo minloc0_4_i16.lo minloc0_8_i16.lo minloc0_16_i16.lo minloc0_4_r4.lo minloc0_8_r4.lo minloc0_16_r4.lo minloc0_4_r8.lo minloc0_8_r8.lo minloc0_16_r8.lo minloc0_4_r10.lo minloc0_8_r10.lo minloc0_16_r10.lo minloc0_4_r16.lo minloc0_8_r16.lo minloc0_16_r16.lo minloc1_4_i1.lo minloc1_8_i1.lo minloc1_16_i1.lo minloc1_4_i2.lo minloc1_8_i2.lo minloc1_16_i2.lo minloc1_4_i4.lo minloc1_8_i4.lo minloc1_16_i4.lo minloc1_4_i8.lo minloc1_8_i8.lo minloc1_16_i8.lo minloc1_4_i16.lo minloc1_8_i16.lo minloc1_16_i16.lo minloc1_4_r4.lo minloc1_8_r4.lo minloc1_16_r4.lo minloc1_4_r8.lo minloc1_8_r8.lo minloc1_16_r8.lo minloc1_4_r10.lo minloc1_8_r10.lo minloc1_16_r10.lo minloc1_4_r16.lo minloc1_8_r16.lo minloc1_16_r16.lo minval_i1.lo minval_i2.lo minval_i4.lo minval_i8.lo minval_i16.lo minval_r4.lo minval_r8.lo minval_r10.lo minval_r16.lo product_i1.lo product_i2.lo product_i4.lo product_i8.lo product_i16.lo product_r4.lo product_r8.lo product_r10.lo product_r16.lo product_c4.lo product_c8.lo product_c10.lo product_c16.lo sum_i1.lo sum_i2.lo sum_i4.lo sum_i8.lo sum_i16.lo sum_r4.lo sum_r8.lo sum_r10.lo sum_r16.lo sum_c4.lo sum_c8.lo sum_c10.lo sum_c16.lo bessel_r4.lo bessel_r8.lo bessel_r10.lo bessel_r16.lo iall_i1.lo iall_i2.lo iall_i4.lo iall_i8.lo iall_i16.lo iany_i1.lo iany_i2.lo iany_i4.lo iany_i8.lo iany_i16.lo iparity_i1.lo iparity_i2.lo iparity_i4.lo iparity_i8.lo iparity_i16.lo norm2_r4.lo norm2_r8.lo norm2_r10.lo norm2_r16.lo parity_l1.lo parity_l2.lo parity_l4.lo parity_l8.lo parity_l16.lo matmul_i1.lo matmul_i2.lo matmul_i4.lo matmul_i8.lo matmul_i16.lo matmul_r4.lo matmul_r8.lo matmul_r10.lo matmul_r16.lo matmul_c4.lo matmul_c8.lo matmul_c10.lo matmul_c16.lo matmul_l4.lo matmul_l8.lo matmul_l16.lo transpose_i4.lo transpose_i8.lo transpose_i16.lo transpose_r4.lo transpose_r8.lo transpose_r10.lo transpose_r16.lo transpose_c4.lo transpose_c8.lo transpose_c10.lo transpose_c16.lo shape_i4.lo shape_i8.lo shape_i16.lo eoshift1_4.lo eoshift1_8.lo eoshift1_16.lo eoshift3_4.lo eoshift3_8.lo eoshift3_16.lo cshift1_4.lo cshift1_8.lo cshift1_16.lo reshape_i4.lo reshape_i8.lo reshape_i16.lo reshape_r4.lo reshape_r8.lo reshape_r10.lo reshape_r16.lo reshape_c4.lo reshape_c8.lo reshape_c10.lo reshape_c16.lo in_pack_i1.lo in_pack_i2.lo in_pack_i4.lo in_pack_i8.lo in_pack_i16.lo in_pack_r4.lo in_pack_r8.lo in_pack_r10.lo in_pack_r16.lo in_pack_c4.lo in_pack_c8.lo in_pack_c10.lo in_pack_c16.lo in_unpack_i1.lo in_unpack_i2.lo in_unpack_i4.lo in_unpack_i8.lo in_unpack_i16.lo in_unpack_r4.lo in_unpack_r8.lo in_unpack_r10.lo in_unpack_r16.lo in_unpack_c4.lo in_unpack_c8.lo in_unpack_c10.lo in_unpack_c16.lo exponent_r4.lo exponent_r8.lo exponent_r10.lo exponent_r16.lo fraction_r4.lo fraction_r8.lo fraction_r10.lo fraction_r16.lo nearest_r4.lo nearest_r8.lo nearest_r10.lo nearest_r16.lo set_exponent_r4.lo set_exponent_r8.lo set_exponent_r10.lo set_exponent_r16.lo pow_i4_i4.lo pow_i8_i4.lo pow_i16_i4.lo pow_r16_i4.lo pow_c4_i4.lo pow_c8_i4.lo pow_c10_i4.lo pow_c16_i4.lo pow_i4_i8.lo pow_i8_i8.lo pow_i16_i8.lo pow_r4_i8.lo pow_r8_i8.lo pow_r10_i8.lo pow_r16_i8.lo pow_c4_i8.lo pow_c8_i8.lo pow_c10_i8.lo pow_c16_i8.lo pow_i4_i16.lo pow_i8_i16.lo pow_i16_i16.lo pow_r4_i16.lo pow_r8_i16.lo pow_r10_i16.lo pow_r16_i16.lo pow_c4_i16.lo pow_c8_i16.lo pow_c10_i16.lo pow_c16_i16.lo rrspacing_r4.lo rrspacing_r8.lo rrspacing_r10.lo rrspacing_r16.lo spacing_r4.lo spacing_r8.lo spacing_r10.lo spacing_r16.lo pack_i1.lo pack_i2.lo pack_i4.lo pack_i8.lo pack_i16.lo pack_r4.lo pack_r8.lo pack_r10.lo pack_r16.lo pack_c4.lo pack_c8.lo pack_c10.lo pack_c16.lo unpack_i1.lo unpack_i2.lo unpack_i4.lo unpack_i8.lo unpack_i16.lo unpack_r4.lo unpack_r8.lo unpack_r10.lo unpack_r16.lo unpack_c4.lo unpack_c8.lo unpack_c10.lo unpack_c16.lo spread_i1.lo spread_i2.lo spread_i4.lo spread_i8.lo spread_i16.lo spread_r4.lo spread_r8.lo spread_r10.lo spread_r16.lo spread_c4.lo spread_c8.lo spread_c10.lo spread_c16.lo cshift0_i1.lo cshift0_i2.lo cshift0_i4.lo cshift0_i8.lo cshift0_i16.lo cshift0_r4.lo cshift0_r8.lo cshift0_r10.lo cshift0_r16.lo cshift0_c4.lo cshift0_c8.lo cshift0_c10.lo cshift0_c16.lo close.lo file_pos.lo format.lo inquire.lo intrinsics.lo list_read.lo lock.lo open.lo read.lo size_from_kind.lo transfer.lo unit.lo unix.lo write.lo fbuf.lo associated.lo abort.lo access.lo args.lo bit_intrinsics.lo c99_functions.lo chdir.lo chmod.lo clock.lo cpu_time.lo cshift0.lo ctime.lo date_and_time.lo dtime.lo env.lo eoshift0.lo eoshift2.lo erfc_scaled.lo etime.lo execute_command_line.lo exit.lo extends_type_of.lo fnum.lo gerror.lo getcwd.lo getlog.lo getXid.lo hostnm.lo ierrno.lo ishftc.lo iso_c_generated_procs.lo iso_c_binding.lo kill.lo link.lo malloc.lo mvbits.lo move_alloc.lo pack_generic.lo perror.lo selected_char_kind.lo signal.lo size.lo sleep.lo spread_generic.lo string_intrinsics.lo system.lo rand.lo random.lo rename.lo reshape_generic.lo reshape_packed.lo selected_int_kind.lo selected_real_kind.lo stat.lo symlnk.lo system_clock.lo time.lo transpose_generic.lo umask.lo unlink.lo unpack_generic.lo in_pack_generic.lo in_unpack_generic.lo  _abs_c4.lo _abs_c8.lo _abs_c10.lo _abs_c16.lo _abs_i4.lo _abs_i8.lo _abs_i16.lo _abs_r4.lo _abs_r8.lo _abs_r10.lo _abs_r16.lo _aimag_c4.lo _aimag_c8.lo _aimag_c10.lo _aimag_c16.lo _exp_r4.lo _exp_r8.lo _exp_r10.lo _exp_r16.lo _exp_c4.lo _exp_c8.lo _exp_c10.lo _exp_c16.lo _log_r4.lo _log_r8.lo _log_r10.lo _log_r16.lo _log_c4.lo _log_c8.lo _log_c10.lo _log_c16.lo _log10_r4.lo _log10_r8.lo _log10_r10.lo _log10_r16.lo _sqrt_r4.lo _sqrt_r8.lo _sqrt_r10.lo _sqrt_r16.lo _sqrt_c4.lo _sqrt_c8.lo _sqrt_c10.lo _sqrt_c16.lo _asin_r4.lo _asin_r8.lo _asin_r10.lo _asin_r16.lo _asinh_r4.lo _asinh_r8.lo _asinh_r10.lo _asinh_r16.lo _acos_r4.lo _acos_r8.lo _acos_r10.lo _acos_r16.lo _acosh_r4.lo _acosh_r8.lo _acosh_r10.lo _acosh_r16.lo _atan_r4.lo _atan_r8.lo _atan_r10.lo _atan_r16.lo _atanh_r4.lo _atanh_r8.lo _atanh_r10.lo _atanh_r16.lo _sin_r4.lo _sin_r8.lo _sin_r10.lo _sin_r16.lo _sin_c4.lo _sin_c8.lo _sin_c10.lo _sin_c16.lo _cos_r4.lo _cos_r8.lo _cos_r10.lo _cos_r16.lo _cos_c4.lo _cos_c8.lo _cos_c10.lo _cos_c16.lo _tan_r4.lo _tan_r8.lo _tan_r10.lo _tan_r16.lo _sinh_r4.lo _sinh_r8.lo _sinh_r10.lo _sinh_r16.lo _cosh_r4.lo _cosh_r8.lo _cosh_r10.lo _cosh_r16.lo _tanh_r4.lo _tanh_r8.lo _tanh_r10.lo _tanh_r16.lo _conjg_c4.lo _conjg_c8.lo _conjg_c10.lo _conjg_c16.lo _aint_r4.lo _aint_r8.lo _aint_r10.lo _aint_r16.lo _anint_r4.lo _anint_r8.lo _anint_r10.lo _anint_r16.lo _sign_i4.lo _sign_i8.lo _sign_i16.lo _sign_r4.lo _sign_r8.lo _sign_r10.lo _sign_r16.lo _dim_i4.lo _dim_i8.lo _dim_i16.lo _dim_r4.lo _dim_r8.lo _dim_r10.lo _dim_r16.lo _atan2_r4.lo _atan2_r8.lo _atan2_r10.lo _atan2_r16.lo _mod_i4.lo _mod_i8.lo _mod_i16.lo _mod_r4.lo _mod_r8.lo _mod_r10.lo _mod_r16.lo misc_specifics.lo dprod_r8.lo f2c_specifics.lo  
libtool: link: /sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/./gcc/xgcc -B/sw/src/fink.build/gcc46-4.6.0-1000/darwin_objdir/./gcc/ -B/sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/bin/ -B/sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/lib/ -isystem /sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/include -isystem /sw/lib/gcc4.6/x86_64-apple-darwin10.5.0/sys-include    -dynamiclib  -o .libs/libgfortran.3.dylib  .libs/backtrace.o .libs/bounds.o .libs/compile_options.o .libs/convert_char.o .libs/environ.o .libs/error.o .libs/fpu.o .libs/main.o .libs/memory.o .libs/pause.o .libs/stop.o .libs/string.o .libs/select.o .libs/all_l1.o .libs/all_l2.o .libs/all_l4.o .libs/all_l8.o .libs/all_l16.o .libs/any_l1.o .libs/any_l2.o .libs/any_l4.o .libs/any_l8.o .libs/any_l16.o .libs/count_1_l.o .libs/count_2_l.o .libs/count_4_l.o .libs/count_8_l.o .libs/count_16_l.o .libs/maxloc0_4_i1.o .libs/maxloc0_8_i1.o .libs/maxloc0_16_i1.o .libs/maxloc0_4_i2.o .libs/maxloc0_8_i2.o .libs/maxloc0_16_i2.o .libs/maxloc0_4_i4.o .libs/maxloc0_8_i4.o .libs/maxloc0_16_i4.o .libs/maxloc0_4_i8.o .libs/maxloc0_8_i8.o .libs/maxloc0_16_i8.o .libs/maxloc0_4_i16.o .libs/maxloc0_8_i16.o .libs/maxloc0_16_i16.o .libs/maxloc0_4_r4.o .libs/maxloc0_8_r4.o .libs/maxloc0_16_r4.o .libs/maxloc0_4_r8.o .libs/maxloc0_8_r8.o .libs/maxloc0_16_r8.o .libs/maxloc0_4_r10.o .libs/maxloc0_8_r10.o .libs/maxloc0_16_r10.o .libs/maxloc0_4_r16.o .libs/maxloc0_8_r16.o .libs/maxloc0_16_r16.o .libs/maxloc1_4_i1.o .libs/maxloc1_8_i1.o .libs/maxloc1_16_i1.o .libs/maxloc1_4_i2.o .libs/maxloc1_8_i2.o .libs/maxloc1_16_i2.o .libs/maxloc1_4_i4.o .libs/maxloc1_8_i4.o .libs/maxloc1_16_i4.o .libs/maxloc1_4_i8.o .libs/maxloc1_8_i8.o .libs/maxloc1_16_i8.o .libs/maxloc1_4_i16.o .libs/maxloc1_8_i16.o .libs/maxloc1_16_i16.o .libs/maxloc1_4_r4.o .libs/maxloc1_8_r4.o .libs/maxloc1_16_r4.o .libs/maxloc1_4_r8.o .libs/maxloc1_8_r8.o .libs/maxloc1_16_r8.o .libs/maxloc1_4_r10.o .libs/maxloc1_8_r10.o .libs/maxloc1_16_r10.o .libs/maxloc1_4_r16.o .libs/maxloc1_8_r16.o .libs/maxloc1_16_r16.o .libs/maxval_i1.o .libs/maxval_i2.o .libs/maxval_i4.o .libs/maxval_i8.o .libs/maxval_i16.o .libs/maxval_r4.o .libs/maxval_r8.o .libs/maxval_r10.o .libs/maxval_r16.o .libs/minloc0_4_i1.o .libs/minloc0_8_i1.o .libs/minloc0_16_i1.o .libs/minloc0_4_i2.o .libs/minloc0_8_i2.o .libs/minloc0_16_i2.o .libs/minloc0_4_i4.o .libs/minloc0_8_i4.o .libs/minloc0_16_i4.o .libs/minloc0_4_i8.o .libs/minloc0_8_i8.o .libs/minloc0_16_i8.o .libs/minloc0_4_i16.o .libs/minloc0_8_i16.o .libs/minloc0_16_i16.o .libs/minloc0_4_r4.o .libs/minloc0_8_r4.o .libs/minloc0_16_r4.o .libs/minloc0_4_r8.o .libs/minloc0_8_r8.o .libs/minloc0_16_r8.o .libs/minloc0_4_r10.o .libs/minloc0_8_r10.o .libs/minloc0_16_r10.o .libs/minloc0_4_r16.o .libs/minloc0_8_r16.o .libs/minloc0_16_r16.o .libs/minloc1_4_i1.o .libs/minloc1_8_i1.o .libs/minloc1_16_i1.o .libs/minloc1_4_i2.o .libs/minloc1_8_i2.o .libs/minloc1_16_i2.o .libs/minloc1_4_i4.o .libs/minloc1_8_i4.o .libs/minloc1_16_i4.o .libs/minloc1_4_i8.o .libs/minloc1_8_i8.o .libs/minloc1_16_i8.o .libs/minloc1_4_i16.o .libs/minloc1_8_i16.o .libs/minloc1_16_i16.o .libs/minloc1_4_r4.o .libs/minloc1_8_r4.o .libs/minloc1_16_r4.o .libs/minloc1_4_r8.o .libs/minloc1_8_r8.o .libs/minloc1_16_r8.o .libs/minloc1_4_r10.o .libs/minloc1_8_r10.o .libs/minloc1_16_r10.o .libs/minloc1_4_r16.o .libs/minloc1_8_r16.o .libs/minloc1_16_r16.o .libs/minval_i1.o .libs/minval_i2.o .libs/minval_i4.o .libs/minval_i8.o .libs/minval_i16.o .libs/minval_r4.o .libs/minval_r8.o .libs/minval_r10.o .libs/minval_r16.o .libs/product_i1.o .libs/product_i2.o .libs/product_i4.o .libs/product_i8.o .libs/product_i16.o .libs/product_r4.o .libs/product_r8.o .libs/product_r10.o .libs/product_r16.o .libs/product_c4.o .libs/product_c8.o .libs/product_c10.o .libs/product_c16.o .libs/sum_i1.o .libs/sum_i2.o .libs/sum_i4.o .libs/sum_i8.o .libs/sum_i16.o .libs/sum_r4.o .libs/sum_r8.o .libs/sum_r10.o .libs/sum_r16.o .libs/sum_c4.o .libs/sum_c8.o .libs/sum_c10.o .libs/sum_c16.o .libs/bessel_r4.o .libs/bessel_r8.o .libs/bessel_r10.o .libs/bessel_r16.o .libs/iall_i1.o .libs/iall_i2.o .libs/iall_i4.o .libs/iall_i8.o .libs/iall_i16.o .libs/iany_i1.o .libs/iany_i2.o .libs/iany_i4.o .libs/iany_i8.o .libs/iany_i16.o .libs/iparity_i1.o .libs/iparity_i2.o .libs/iparity_i4.o .libs/iparity_i8.o .libs/iparity_i16.o .libs/norm2_r4.o .libs/norm2_r8.o .libs/norm2_r10.o .libs/norm2_r16.o .libs/parity_l1.o .libs/parity_l2.o .libs/parity_l4.o .libs/parity_l8.o .libs/parity_l16.o .libs/matmul_i1.o .libs/matmul_i2.o .libs/matmul_i4.o .libs/matmul_i8.o .libs/matmul_i16.o .libs/matmul_r4.o .libs/matmul_r8.o .libs/matmul_r10.o .libs/matmul_r16.o .libs/matmul_c4.o .libs/matmul_c8.o .libs/matmul_c10.o .libs/matmul_c16.o .libs/matmul_l4.o .libs/matmul_l8.o .libs/matmul_l16.o .libs/transpose_i4.o .libs/transpose_i8.o .libs/transpose_i16.o .libs/transpose_r4.o .libs/transpose_r8.o .libs/transpose_r10.o .libs/transpose_r16.o .libs/transpose_c4.o .libs/transpose_c8.o .libs/transpose_c10.o .libs/transpose_c16.o .libs/shape_i4.o .libs/shape_i8.o .libs/shape_i16.o .libs/eoshift1_4.o .libs/eoshift1_8.o .libs/eoshift1_16.o .libs/eoshift3_4.o .libs/eoshift3_8.o .libs/eoshift3_16.o .libs/cshift1_4.o .libs/cshift1_8.o .libs/cshift1_16.o .libs/reshape_i4.o .libs/reshape_i8.o .libs/reshape_i16.o .libs/reshape_r4.o .libs/reshape_r8.o .libs/reshape_r10.o .libs/reshape_r16.o .libs/reshape_c4.o .libs/reshape_c8.o .libs/reshape_c10.o .libs/reshape_c16.o .libs/in_pack_i1.o .libs/in_pack_i2.o .libs/in_pack_i4.o .libs/in_pack_i8.o .libs/in_pack_i16.o .libs/in_pack_r4.o .libs/in_pack_r8.o .libs/in_pack_r10.o .libs/in_pack_r16.o .libs/in_pack_c4.o .libs/in_pack_c8.o .libs/in_pack_c10.o .libs/in_pack_c16.o .libs/in_unpack_i1.o .libs/in_unpack_i2.o .libs/in_unpack_i4.o .libs/in_unpack_i8.o .libs/in_unpack_i16.o .libs/in_unpack_r4.o .libs/in_unpack_r8.o .libs/in_unpack_r10.o .libs/in_unpack_r16.o .libs/in_unpack_c4.o .libs/in_unpack_c8.o .libs/in_unpack_c10.o .libs/in_unpack_c16.o .libs/exponent_r4.o .libs/exponent_r8.o .libs/exponent_r10.o .libs/exponent_r16.o .libs/fraction_r4.o .libs/fraction_r8.o .libs/fraction_r10.o .libs/fraction_r16.o .libs/nearest_r4.o .libs/nearest_r8.o .libs/nearest_r10.o .libs/nearest_r16.o .libs/set_exponent_r4.o .libs/set_exponent_r8.o .libs/set_exponent_r10.o .libs/set_exponent_r16.o .libs/pow_i4_i4.o .libs/pow_i8_i4.o .libs/pow_i16_i4.o .libs/pow_r16_i4.o .libs/pow_c4_i4.o .libs/pow_c8_i4.o .libs/pow_c10_i4.o .libs/pow_c16_i4.o .libs/pow_i4_i8.o .libs/pow_i8_i8.o .libs/pow_i16_i8.o .libs/pow_r4_i8.o .libs/pow_r8_i8.o .libs/pow_r10_i8.o .libs/pow_r16_i8.o .libs/pow_c4_i8.o .libs/pow_c8_i8.o .libs/pow_c10_i8.o .libs/pow_c16_i8.o .libs/pow_i4_i16.o .libs/pow_i8_i16.o .libs/pow_i16_i16.o .libs/pow_r4_i16.o .libs/pow_r8_i16.o .libs/pow_r10_i16.o .libs/pow_r16_i16.o .libs/pow_c4_i16.o .libs/pow_c8_i16.o .libs/pow_c10_i16.o .libs/pow_c16_i16.o .libs/rrspacing_r4.o .libs/rrspacing_r8.o .libs/rrspacing_r10.o .libs/rrspacing_r16.o .libs/spacing_r4.o .libs/spacing_r8.o .libs/spacing_r10.o .libs/spacing_r16.o .libs/pack_i1.o .libs/pack_i2.o .libs/pack_i4.o .libs/pack_i8.o .libs/pack_i16.o .libs/pack_r4.o .libs/pack_r8.o .libs/pack_r10.o .libs/pack_r16.o .libs/pack_c4.o .libs/pack_c8.o .libs/pack_c10.o .libs/pack_c16.o .libs/unpack_i1.o .libs/unpack_i2.o .libs/unpack_i4.o .libs/unpack_i8.o .libs/unpack_i16.o .libs/unpack_r4.o .libs/unpack_r8.o .libs/unpack_r10.o .libs/unpack_r16.o .libs/unpack_c4.o .libs/unpack_c8.o .libs/unpack_c10.o .libs/unpack_c16.o .libs/spread_i1.o .libs/spread_i2.o .libs/spread_i4.o .libs/spread_i8.o .libs/spread_i16.o .libs/spread_r4.o .libs/spread_r8.o .libs/spread_r10.o .libs/spread_r16.o .libs/spread_c4.o .libs/spread_c8.o .libs/spread_c10.o .libs/spread_c16.o .libs/cshift0_i1.o .libs/cshift0_i2.o .libs/cshift0_i4.o .libs/cshift0_i8.o .libs/cshift0_i16.o .libs/cshift0_r4.o .libs/cshift0_r8.o .libs/cshift0_r10.o .libs/cshift0_r16.o .libs/cshift0_c4.o .libs/cshift0_c8.o .libs/cshift0_c10.o .libs/cshift0_c16.o .libs/close.o .libs/file_pos.o .libs/format.o .libs/inquire.o .libs/intrinsics.o .libs/list_read.o .libs/lock.o .libs/open.o .libs/read.o .libs/size_from_kind.o .libs/transfer.o .libs/unit.o .libs/unix.o .libs/write.o .libs/fbuf.o .libs/associated.o .libs/abort.o .libs/access.o .libs/args.o .libs/bit_intrinsics.o .libs/c99_functions.o .libs/chdir.o .libs/chmod.o .libs/clock.o .libs/cpu_time.o .libs/cshift0.o .libs/ctime.o .libs/date_and_time.o .libs/dtime.o .libs/env.o .libs/eoshift0.o .libs/eoshift2.o .libs/erfc_scaled.o .libs/etime.o .libs/execute_command_line.o .libs/exit.o .libs/extends_type_of.o .libs/fnum.o .libs/gerror.o .libs/getcwd.o .libs/getlog.o .libs/getXid.o .libs/hostnm.o .libs/ierrno.o .libs/ishftc.o .libs/iso_c_generated_procs.o .libs/iso_c_binding.o .libs/kill.o .libs/link.o .libs/malloc.o .libs/mvbits.o .libs/move_alloc.o .libs/pack_generic.o .libs/perror.o .libs/selected_char_kind.o .libs/signal.o .libs/size.o .libs/sleep.o .libs/spread_generic.o .libs/string_intrinsics.o .libs/system.o .libs/rand.o .libs/random.o .libs/rename.o .libs/reshape_generic.o .libs/reshape_packed.o .libs/selected_int_kind.o .libs/selected_real_kind.o .libs/stat.o .libs/symlnk.o .libs/system_clock.o .libs/time.o .libs/transpose_generic.o .libs/umask.o .libs/unlink.o .libs/unpack_generic.o .libs/in_pack_generic.o .libs/in_unpack_generic.o .libs/_abs_c4.o .libs/_abs_c8.o .libs/_abs_c10.o .libs/_abs_c16.o .libs/_abs_i4.o .libs/_abs_i8.o .libs/_abs_i16.o .libs/_abs_r4.o .libs/_abs_r8.o .libs/_abs_r10.o .libs/_abs_r16.o .libs/_aimag_c4.o .libs/_aimag_c8.o .libs/_aimag_c10.o .libs/_aimag_c16.o .libs/_exp_r4.o .libs/_exp_r8.o .libs/_exp_r10.o .libs/_exp_r16.o .libs/_exp_c4.o .libs/_exp_c8.o .libs/_exp_c10.o .libs/_exp_c16.o .libs/_log_r4.o .libs/_log_r8.o .libs/_log_r10.o .libs/_log_r16.o .libs/_log_c4.o .libs/_log_c8.o .libs/_log_c10.o .libs/_log_c16.o .libs/_log10_r4.o .libs/_log10_r8.o .libs/_log10_r10.o .libs/_log10_r16.o .libs/_sqrt_r4.o .libs/_sqrt_r8.o .libs/_sqrt_r10.o .libs/_sqrt_r16.o .libs/_sqrt_c4.o .libs/_sqrt_c8.o .libs/_sqrt_c10.o .libs/_sqrt_c16.o .libs/_asin_r4.o .libs/_asin_r8.o .libs/_asin_r10.o .libs/_asin_r16.o .libs/_asinh_r4.o .libs/_asinh_r8.o .libs/_asinh_r10.o .libs/_asinh_r16.o .libs/_acos_r4.o .libs/_acos_r8.o .libs/_acos_r10.o .libs/_acos_r16.o .libs/_acosh_r4.o .libs/_acosh_r8.o .libs/_acosh_r10.o .libs/_acosh_r16.o .libs/_atan_r4.o .libs/_atan_r8.o .libs/_atan_r10.o .libs/_atan_r16.o .libs/_atanh_r4.o .libs/_atanh_r8.o .libs/_atanh_r10.o .libs/_atanh_r16.o .libs/_sin_r4.o .libs/_sin_r8.o .libs/_sin_r10.o .libs/_sin_r16.o .libs/_sin_c4.o .libs/_sin_c8.o .libs/_sin_c10.o .libs/_sin_c16.o .libs/_cos_r4.o .libs/_cos_r8.o .libs/_cos_r10.o .libs/_cos_r16.o .libs/_cos_c4.o .libs/_cos_c8.o .libs/_cos_c10.o .libs/_cos_c16.o .libs/_tan_r4.o .libs/_tan_r8.o .libs/_tan_r10.o .libs/_tan_r16.o .libs/_sinh_r4.o .libs/_sinh_r8.o .libs/_sinh_r10.o .libs/_sinh_r16.o .libs/_cosh_r4.o .libs/_cosh_r8.o .libs/_cosh_r10.o .libs/_cosh_r16.o .libs/_tanh_r4.o .libs/_tanh_r8.o .libs/_tanh_r10.o .libs/_tanh_r16.o .libs/_conjg_c4.o .libs/_conjg_c8.o .libs/_conjg_c10.o .libs/_conjg_c16.o .libs/_aint_r4.o .libs/_aint_r8.o .libs/_aint_r10.o .libs/_aint_r16.o .libs/_anint_r4.o .libs/_anint_r8.o .libs/_anint_r10.o .libs/_anint_r16.o .libs/_sign_i4.o .libs/_sign_i8.o .libs/_sign_i16.o .libs/_sign_r4.o .libs/_sign_r8.o .libs/_sign_r10.o .libs/_sign_r16.o .libs/_dim_i4.o .libs/_dim_i8.o .libs/_dim_i16.o .libs/_dim_r4.o .libs/_dim_r8.o .libs/_dim_r10.o .libs/_dim_r16.o .libs/_atan2_r4.o .libs/_atan2_r8.o .libs/_atan2_r10.o .libs/_atan2_r16.o .libs/_mod_i4.o .libs/_mod_i8.o .libs/_mod_i16.o .libs/_mod_r4.o .libs/_mod_r8.o .libs/_mod_r10.o .libs/_mod_r16.o .libs/misc_specifics.o .libs/dprod_r8.o .libs/f2c_specifics.o   -lm  -Wl,-single_module   -install_name  /sw/lib/gcc4.6/lib/libgfortran.3.dylib -compatibility_version 4 -current_version 4.0 -Wl,-single_module
Undefined symbols:
  "_tanhq", referenced from:
      __gfortran_specific__tanh_r16 in _tanh_r16.o
  "_clogq", referenced from:
      __gfortran_specific__log_c16 in _log_c16.o

etc. This is despite adding libgfortran.spec.in to libgfortran and
it generating the expected libgfortran.spec during the build. I assume
that libtool itself need to be patched to solve this. Also, since libquad
is being added to the FSF gcc tree, it would be nice to have a configure
option for building libgfortran against the static libquad thus eliminating
any need to pass -lquad through libgfortran.spec at all.
            Jack



More information about the Gcc-patches mailing list