[BACK]Return to Makefile.SH CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / pari / src / kernel / sparcv8

File: [local] / OpenXM_contrib / pari / src / kernel / sparcv8 / Attic / Makefile.SH (download)

Revision 1.1.1.1 (vendor branch), Sun Jan 9 17:35:33 2000 UTC (24 years, 5 months ago) by maekawa
Branch: PARI_GP
CVS Tags: maekawa-ipv6, VERSION_2_0_17_BETA, RELEASE_20000124, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, RELEASE_1_1_3, RELEASE_1_1_2
Changes since 1.1: +0 -0 lines

Import PARI/GP 2.0.17 beta.

# For SunOS
#   If __GNUC__, most level0 functions are "asm inline"
#   If not, they are "asm extern"
#   The object kernel.o (resp. kernel2.o) contains entries for the functions
#   that can (resp. cannot) be inline.
#   Problem: "divll" uses "overflow", so kernel2.o is not the same when
#   compiled with gcc or with cc. We should try to find a workaround.
# For NextStep or Linux
#   We don't accept "asm inline" since it does not work (Ptitboul)

if test -z "$__gnuc__" -o "$osname" = "nextstep" -o "$osname" = "linux"; then
  kernel="$kernel kernel2"
fi

ker=$src/kernel/sparcv8
kernel1=$ker/level0_$asmarch.S
kernel2=$ker/level0.S
level0=$ker/level0.h
if test "$osname" = "nextstep" -o "$osname" = "linux" -o "$gnuas" = "yes"; then
cat >> $file << EOT
kernel1.s: $kernel1
	\$(CPP) $KERNELCPPFLAGS $kernel1 > \$@
kernel2.s: $kernel2
	\$(CPP) $KERNELCPPFLAGS $kernel2 > \$@
EOT
kernel1=kernel1.s
kernel2=kernel2.s
level0=$src/kernel/none/asm0.h
fi
level1=$src/kernel/none/level1.h

cat >> $file << EOT
pariinl.h: $level0 $level1
	cat $level0 $level1 > \$@
kernel.o:  $kernel1
	\$(AS) \$(ASFLAGS) -o \$@ $kernel1
kernel2.o: $kernel2
	\$(AS) \$(ASFLAGS) -o \$@ $kernel2
# Level 1 kernel is the generic one
mp.o: .headers $src/kernel/none/mp.c
	\$(CC) -c \$(CFLAGS) \$(CPPFLAGS) -o \$@ $src/kernel/none/mp.c
mpinl.o: .headers $level1
	\$(CC) -c \$(CFLAGS) \$(CPPFLAGS) -o \$@ $src/kernel/none/level1.c

EOT