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

Annotation of OpenXM_contrib/pari-2.2/src/kernel/sparcv8/Makefile.SH, Revision 1.1.1.1

1.1       noro        1: # For SunOS
                      2: #   If __GNUC__, most level0 functions are "asm inline"
                      3: #   If not, they are "asm extern"
                      4: #   The object kernel.o (resp. kernel2.o) contains entries for the functions
                      5: #   that can (resp. cannot) be inline.
                      6: #   Problem: "divll" uses "overflow", so kernel2.o is not the same when
                      7: #   compiled with gcc or with cc. We should try to find a workaround.
                      8: # For NextStep or Linux
                      9: #   We don't accept "asm inline" since it does not work (Ptitboul)
                     10:
                     11: if test -z "$__gnuc__" -o "$osname" = "nextstep" -o "$osname" = "linux"; then
                     12:   kernel="$kernel kernel2"
                     13: fi
                     14: if test "$gnuas" = "yes"; then do_cpp=yes; fi
                     15:
                     16: ker=$src/kernel/sparcv8
                     17: kernel1=$ker/level0_$asmarch.S
                     18: kernel2=$ker/level0.S
                     19:
                     20: if test "$osname" = "nextstep" -o "$osname" = "linux"
                     21: then
                     22:   level0=$src/kernel/none/asm0.h
                     23: else
                     24:   level0=$ker/level0.h
                     25: fi
                     26: level1=$src/kernel/none/level1.h
                     27:
                     28: if test "$osname" = "nextstep" -o "$osname" = "linux" -o "$do_cpp" = "yes"
                     29: then
                     30: cat >> $file << EOT
                     31: kernel1.s: $kernel1
                     32:        \$(CPP) $KERNELCPPFLAGS $kernel1 > \$@
                     33: kernel2.s: $kernel2
                     34:        \$(CPP) $KERNELCPPFLAGS $kernel2 > \$@
                     35: EOT
                     36: kernel1=kernel1.s
                     37: kernel2=kernel2.s
                     38: fi
                     39:
                     40: cat >> $file << EOT
                     41: pariinl.h: $level0 $level1
                     42:        cat $level0 $level1 > \$@
                     43: kernel.o:  $kernel1
                     44:        \$(AS) \$(ASFLAGS) -o \$@ $kernel1
                     45: kernel2.o: $kernel2
                     46:        \$(AS) \$(ASFLAGS) -o \$@ $kernel2
                     47: # Level 1 kernel is the generic one
                     48: mp.o: .headers $src/kernel/none/mp.c
                     49:        \$(CC) -c \$(CFLAGS) \$(CPPFLAGS) -o \$@ $src/kernel/none/mp.c
                     50: mpinl.o: .headers $level1
                     51:        \$(CC) -c \$(CFLAGS) \$(CPPFLAGS) -o \$@ $src/kernel/none/level1.c
                     52:
                     53: EOT

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>