Details
-
Bug
-
Status: Closed (View Workflow)
-
Blocker
-
Resolution: Fixed
-
10.5.3, 10.5
-
None
-
FreeBSD 12.1-p4 amd64
clang 8.0.1
cmake 3.17.2
Description
During compilation, I get a failure in perfschema
--- storage/perfschema/CMakeFiles/perfschema_embedded.dir/all ---
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/perfschema/cursor_by_account.cc:30:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/perfschema/pfs_buffer_container.h:27:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/perfschema/pfs.h:34:
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/perfschema/my_thread.h:64:10: error: use of undeclared identifier 'pthread_getthreadid_np'
|
return pthread_getthreadid_np();
|
^
|
Once I added -isystem /usr/include to the flags.cmake file in /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/perfschema/CMakeFilee I can continue the build.
Attachments
Issue Links
- duplicates
-
MDEV-22620 Build failure on FreeBSD 12.1 / clang 8.0.1 / cmake 3.17.2
-
- Closed
-
Activity
Sorry for the delay, the WIP port is now in https://github.com/Sp1l/ports/tree/master/databases/mariadb105-server
Currently having another go at it...
The mariadb105-client port builds and packages OK.
Been digging a bit more, added -v to flags.make.
The additions of `-isystem /usr/local/include` are unneccessary (duplicate) as per below output
[ 29%] Building CXX object storage/innobase/CMakeFiles/innobase.dir/btr/btr0btr.cc.o [42/1976]
|
cd /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase && /usr/bin/c++ -DBTR_CUR_ADAPT -DBTR_CUR_HASH_ADAPT -DCOMPILER_HINTS -DDBUG_TRACE -DHAVE_BZIP2=1 -DHAVE_CONFIG_H -DHAVE_LZMA=1 -DHAVE_NANOSLEEP=1 -DHAVE_OPENSSL -DMUTEX_EVENT -DWITH_INNODB_DISALLOW_WRITES -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/wsrep-lib/include -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/wsrep-lib/wsrep-API/v26 -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/include -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/handler -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/libbinlogevents/include -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/tpool -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/sql -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/extra/pcre2/src/pcre2-build -I/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/extra/pcre2/src/pcre2/src -v -O2 -pipe -march=native -fstack-protector-strong -isystem /usr/include -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -Wl,-z,relro,-z,now -fstack-protector --param=ssp-buffer-size=4 -Wconversion -Wno-sign-conversion -O2 -pipe -march=native -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -D_FORTIFY_SOURCE=2 -DDBUG_OFF -fvisibility=hidden -std=gnu++11 -o CMakeFiles/innobase.dir/btr/btr0btr.cc.o -c /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/btr/btr0btr.cc
|
FreeBSD clang version 8.0.1 (tags/RELEASE_801/final 366581) (based on LLVM 8.0.1)
|
Target: x86_64-unknown-freebsd12.1
|
Thread model: posix
|
InstalledDir: /usr/bin
|
c++: warning: -Wl,-z,relro,-z,now: 'linker' input unused [-Wunused-command-line-argument]
|
"/basejail/usr/bin/c++" -cc1 -triple x86_64-unknown-freebsd12.1 -emit-obj -disable-free -disable-llvm-verifier -discard-value-names -main-file-name btr0btr.cc -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu ivybridge -target-feature +sse2 -target-feature +cx16 -target-feature +sahf -target-feature -tbm -target-feature -avx512ifma -target-feature -sha -target-feature -gfni -target-feature -fma4 -target-feature -vpclmulqdq -target-feature -prfchw -target-feature -bmi2 -target-feature -cldemote -target-feature +fsgsbase -target-feature -ptwrite -target-feature -xsavec -target-feature +popcnt -target-feature +aes -target-feature -avx512bitalg -target-feature -movdiri -target-feature -xsaves -target-feature -avx512er -target-feature -avx512vnni -target-feature -avx512vpopcntdq -target-feature -pconfig -target-feature -clwb -target-feature -avx512f -target-feature -clzero -target-feature -pku -target-feature +mmx -target-feature -lwp -target-feature -rdpid -target-feature -xop -target-feature -rdseed -target-feature -waitpkg -target-feature -movdir64b -target-feature -sse4a -target-feature -avx512bw -target-feature -clflushopt -target-feature +xsave -target-feature -avx512vbmi2 -target-feature +64bit -target-feature -avx512vl -target-feature -invpcid -target-feature -avx512cd -target-feature +avx -target-feature -vaes -target-feature -rtm -target-feature -fma -target-feature -bmi -target-feature +rdrnd -target-feature -mwaitx -target-feature +sse4.1 -target-feature +sse4.2 -target-feature -avx2 -target-feature -wbnoinvd -target-feature +sse -target-feature -lzcnt -target-feature +pclmul -target-feature -prefetchwt1 -target-feature +f16c -target-feature +ssse3 -target-feature -sgx -target-feature -shstk -target-feature +cmov -target-feature -avx512vbmi -target-feature -movbe -target-feature +xsaveopt -target-feature -avx512dq -target-feature -adx -target-feature -avx512pf -target-feature +sse3 -dwarf-column-info -debugger-tuning=gdb -v -coverage-notes-file /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/CMakeFiles/innobase.dir/btr/btr0btr.cc.gcno -resource-dir /basejail/usr/lib/clang/8.0.1 -isystem /usr/include -isystem /usr/local/include -isystem /usr/local/include -isystem /usr/local/include -isystem /usr/local/include -D BTR_CUR_ADAPT -D BTR_CUR_HASH_ADAPT -D COMPILER_HINTS -D DBUG_TRACE -D HAVE_BZIP2=1 -D HAVE_CONFIG_H -D HAVE_LZMA=1 -D HAVE_NANOSLEEP=1 -D HAVE_OPENSSL -D MUTEX_EVENT -D WITH_INNODB_DISALLOW_WRITES -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/wsrep-lib/include -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/wsrep-lib/wsrep-API/v26 -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/include -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/handler -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/libbinlogevents/include -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/tpool -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/sql -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/extra/pcre2/src/pcre2-build -I /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/extra/pcre2/src/pcre2/src -D _FORTIFY_SOURCE=2 -D DBUG_OFF -internal-isystem /usr/include/c++/v1 -O2 -Wconversion -Wno-sign-conversion -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -stack-protector 2 -stack-protector-buffer-size 4 -fobjc-runtime=gnustep -fcxx-exceptions -fexceptions -fdiagnostics-show-option -vectorize-loops -vectorize-slp -o CMakeFiles/innobase.dir/btr/btr0btr.cc.o -x c++ /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/btr/btr0btr.cc -faddrsig
|
clang -cc1 version 8.0.1 based upon LLVM 8.0.1 default target x86_64-unknown-freebsd12.1
|
ignoring nonexistent directory "/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/libbinlogevents/include"
|
ignoring duplicate directory "/usr/local/include"
|
ignoring duplicate directory "/usr/local/include"
|
ignoring duplicate directory "/usr/local/include"
|
ignoring duplicate directory "/usr/include"
|
#include "..." search starts here:
|
#include <...> search starts here:
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/wsrep-lib/include
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/wsrep-lib/wsrep-API/v26
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/include
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/handler
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/tpool
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/sql
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/extra/pcre2/src/pcre2-build
|
/usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/extra/pcre2/src/pcre2/src
|
/usr/include
|
/usr/local/include
|
/usr/include/c++/v1
|
/basejail/usr/lib/clang/8.0.1/include
|
End of search list.
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/btr/btr0btr.cc:28:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include/btr0btr.h:31:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include/dict0dict.h:31:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include/data0data.h:31:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include/data0type.h:30:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/storage/innobase/include/univ.i:79:
|
In file included from /usr/ports/databases/mariadb105-server/work/mariadb-10.5.3/include/my_global.h:1125:
|
In file included from /usr/include/c++/v1/new:85:
|
In file included from /usr/include/c++/v1/exception:81:
|
/usr/include/c++/v1/cstddef:45:15: fatal error: 'stddef.h' file not found
|
#include_next <stddef.h>
|
^~~~~~~~~~
|
1 error generated.
|
*** [storage/innobase/CMakeFiles/innobase.dir/btr/btr0btr.cc.o] Error code 1
|
Making some progress... Fiddling with `C_FLAGS` and `CXX_FLAGS` helps, no clue yet what the underlying breakage is. Looks like 10.5 behaves quite differently with cmake.
Removing all instances of `-isystem /usr/local/include` from all CXX_FLAGS seems do do the trick, as I clobbered -isystem from all flags.make
find ${WRKSRC} flags.make | xargs sed -i.bak "/CXX_FLAGS/s# -isystem ${LOCALBASE}/include##g;/C_FLAGS/s#$# -isystem ${LOCALBASE}/include#"
|
I found the following pull request at github.com.
https://github.com/MariaDB/server/pull/1597
Buildtest successfully on FreeBSD 12.1
Where can I get your mariadb105 port? How can I try it?