Re: clang prefix for centos7 - Mailing list pgsql-pkg-yum

From Craig Ringer
Subject Re: clang prefix for centos7
Date
Msg-id CAMsr+YFP09-XqyxRDRtzei5Xk0SSTHr=SXcJ8e9FjMvzuq=Rrw@mail.gmail.com
Whole thread Raw
In response to Re: clang prefix for centos7  (Craig Ringer <craig@2ndquadrant.com>)
List pgsql-pkg-yum
On Fri, 6 Mar 2020 at 12:52, Craig Ringer <craig@2ndquadrant.com> wrote:
>
> > The OS-default clang version is not sufficient enough to build PostgreSQL.
>
> This is a packaging bug in the PGDG yum CentOS 7 packages. I reported
> it earlier; see
> https://www.postgresql.org/message-id/CAMsr+YGzuPv3qSBp3LCrc9SnYi=iHfijdjERNNufh75+YM-92g@mail.gmail.com
> .
>
> The centos7 postgresql11-devel package is broken. I'll reply with a
> followup mail with details so I don't upset the automailmod

Repro/demo attached.

Usage:

$ mkdir centos7-llvm-report
$ cd centos7-llvm-report
$ # copy the attached files into .
$ docker build -t centos7-llvm-report .
$ docker run -it --name centos7-llvm-report centos7-llvm-report

Result:

[craig@linux pgdgrepor]$ docker run --name foo -it --rm foo
This build will fail when trying to compile llvm bitcode
gcc -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute -Wformat-security -fno-strict-aliasing
-fwrapv -fexcess-precision=standard -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-fPIC -I. -I./ -I/usr/pgsql-11/include/server
-I/usr/pgsql-11/include/internal  -D_GNU_SOURCE -I/usr/include/libxml2
 -I/usr/include  -c -o dummy.o dummy.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute -Wformat-security -fno-strict-aliasing
-fwrapv -fexcess-precision=standard -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-fPIC -L/usr/pgsql-11/lib -Wl,--as-needed -L/usr/lib64/llvm5.0/lib
-L/usr/lib64 -Wl,--as-needed
-Wl,-rpath,'/usr/pgsql-11/lib',--enable-new-dtags  -shared -o dummy.so
dummy.o
/opt/rh/llvm-toolset-7/root/usr/bin/clang -Wno-ignored-attributes
-fno-strict-aliasing -fwrapv -O2  -I. -I./
-I/usr/pgsql-11/include/server -I/usr/pgsql-11/include/internal
-D_GNU_SOURCE -I/usr/include/libxml2  -I/usr/include -flto=thin
-emit-llvm -c -o dummy.bc dummy.c
make: /opt/rh/llvm-toolset-7/root/usr/bin/clang: Command not found
make: *** [dummy.bc] Error 127

This build will succeed
gcc -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute -Wformat-security -fno-strict-aliasing
-fwrapv -fexcess-precision=standard -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-fPIC -I. -I./ -I/usr/pgsql-11/include/server
-I/usr/pgsql-11/include/internal  -D_GNU_SOURCE -I/usr/include/libxml2
 -I/usr/include  -c -o dummy.o dummy.c
gcc -Wall -Wmissing-prototypes -Wpointer-arith
-Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute -Wformat-security -fno-strict-aliasing
-fwrapv -fexcess-precision=standard -O2 -g -pipe -Wall
-Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong
--param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic
-fPIC -L/usr/pgsql-11/lib -Wl,--as-needed -L/usr/lib64/llvm5.0/lib
-L/usr/lib64 -Wl,--as-needed
-Wl,-rpath,'/usr/pgsql-11/lib',--enable-new-dtags  -shared -o dummy.so
dummy.o
/usr/bin/mkdir -p '/usr/pgsql-11/lib'
/usr/bin/install -c -m 755  dummy.so '/usr/pgsql-11/lib/'

Attachment

pgsql-pkg-yum by date:

Previous
From: Craig Ringer
Date:
Subject: Re: clang prefix for centos7
Next
From: Jehan-Guillaume de Rorthais
Date:
Subject: PostgreSQL Automatic Failover v2.3.0 released