mirror of
https://github.com/postgres/postgres.git
synced 2025-05-11 05:41:32 +03:00
Move the platform-dependent logic that sets CFLAGS_SL from src/makefiles/Makefile.foo to src/template/foo, so that the value is determined at configure time and thus is available while running configure's tests. On a couple of platforms this might save a few microseconds of build time by eliminating a test that make otherwise has to do over and over. Otherwise it's pretty much a wash for build purposes; in particular, this makes no difference to anyone who might be overriding CFLAGS_SL via a make option. This patch in itself does nothing with the value and thus should not change any behavior, though you'll probably have to re-run configure to get a correctly updated Makefile.global. We'll use the new configure variable in a follow-on patch. Per gripe from Kyotaro Horiguchi. Back-patch to all supported branches, because the follow-on patch is a portability bug fix. Discussion: https://postgr.es/m/20191010.144533.263180400.horikyota.ntt@gmail.com
32 lines
751 B
Plaintext
32 lines
751 B
Plaintext
# src/template/solaris
|
|
|
|
# Extra CFLAGS for code that will go into a shared library
|
|
if test "$GCC" = yes ; then
|
|
CFLAGS_SL="-fPIC"
|
|
else
|
|
CFLAGS_SL="-KPIC"
|
|
fi
|
|
|
|
if test "$SUN_STUDIO_CC" = yes ; then
|
|
CC="$CC -Xa" # relaxed ISO C mode
|
|
CFLAGS="-v" # -v is like gcc -Wall
|
|
if test "$enable_debug" != yes; then
|
|
CFLAGS="$CFLAGS -O" # any optimization breaks debug
|
|
fi
|
|
|
|
# Pick the right test-and-set (TAS) code for the Sun compiler.
|
|
# We would like to use in-line assembler, but the compiler
|
|
# requires *.il files to be on every compile line, making
|
|
# the build system too fragile.
|
|
case $host_cpu in
|
|
sparc)
|
|
need_tas=yes
|
|
tas_file=sunstudio_sparc.s
|
|
;;
|
|
i?86|x86_64)
|
|
need_tas=yes
|
|
tas_file=sunstudio_x86.s
|
|
;;
|
|
esac
|
|
fi
|