[
https://issues.apache.org/jira/browse/TS-3383?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Leif Hedstrom resolved TS-3383.
-------------------------------
Resolution: Won't Fix
Fix Version/s: (was: 6.0.0)
Assignee: (was: Phil Sorber)
> CC/CXX not passed through to ck's build
> ---------------------------------------
>
> Key: TS-3383
> URL: https://issues.apache.org/jira/browse/TS-3383
> Project: Traffic Server
> Issue Type: Bug
> Components: Build, CK
> Reporter: Igor Galić
>
> when building ats with a different compiler set through CC and CXX, this is
> not passed through to the build of ck sub-component.
> its compiler remains '/usr/bin/gcc':
> {code}
> === configuring in lib/ck (/home/igalic/src/asf/trafficserver/lib/ck)
> configure: running /bin/bash ./configure --disable-option-checking
> '--prefix=/opt/ats-trunk' '--with-openssl=/opt/libressl'
> '--with-user=igalic' '--with-group=igalic' '--enable-experimental-plugins'
> 'CC=/usr/bin/clang-3.6' 'CXX=/usr/bin/clang++-3.6' --cache-file=/dev/null
> --srcdir=.
> Detecting operating system.......success [linux]
> Detecting machine architecture...success [x86_64]
> Finding dirname command..........success [/usr/bin/dirname]
> Determining build directory......success
> [/home/igalic/src/asf/trafficserver/lib/ck]
> Finding gzip tool................success [/bin/gzip]
> Finding suitable compiler........success [/usr/bin/gcc]
> Detecting VMA bits...............success [48]
> Checking header file usability...success [stdbool.h]
> Checking header file usability...success [stddef.h]
> Checking header file usability...success [stdint.h]
> Checking header file usability...success [string.h]
> Generating header files..........success
> Generating build files...........success
> VERSION = 0.4.5
> BUILD_DIR = /home/igalic/src/asf/trafficserver/lib/ck
> SRC_DIR = /home/igalic/src/asf/trafficserver/lib/ck
> SYSTEM = linux
> PROFILE = x86_64
> CC = /usr/bin/gcc
> COMPILER = gcc
> CFLAGS = -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE
> -std=gnu99 -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC
> PTHREAD_CFLAGS = -pthread
> LD = /usr/bin/gcc
> LDNAME = libck.so
> LDNAME_VERSION = libck.so.0.4.5
> LDNAME_MAJOR = libck.so.0
> LDFLAGS = -Wl,-soname,libck.so.0 -m64 -shared -fPIC
> GZIP = /bin/gzip -c
> CORES = 4
> POINTER_PACK = CK_MD_POINTER_PACK_DISABLE
> VMA_BITS = 48
> MEMORY_MODEL = CK_MD_TSO
> RTM = CK_MD_RTM_DISABLE
> Headers will be installed in /opt/ats-trunk/include
> Libraries will be installed in /opt/ats-trunk/lib
> Documentation will be installed in /opt/ats-trunk/share/man
> configure: Build option summary:
> CC: /usr/bin/clang-3.6
> CXX: /usr/bin/clang++-3.6
> CPP: /usr/bin/clang-3.6 -E
> CFLAGS: -g -O3 -fno-strict-aliasing -Qunused-arguments -mcx16
> CXXFLAGS: -std=c++11 -g -O3 -fno-strict-aliasing
> -Qunused-arguments -Wno-invalid-offsetof -mcx16
> CPPFLAGS: -Dlinux -D_LARGEFILE64_SOURCE=1
> -D_COMPILE64BIT_SOURCE=1 -D_GNU_SOURCE -D_REENTRANT -D__STDC_LIMIT_MACROS=1
> -D__STDC_FORMAT_MACROS=1 -I/opt/libressl/include -DOPENSSL_NO_SSL_INTERN
> -I/usr/include/tcl8.6 -I/usr/include/libxml2
> LDFLAGS: -L/opt/libressl/lib
> SHARED_CFLAGS: -fPIC
> SHARED_CXXFLAGS: -fPIC
> SHARED_CXXLINKFLAGS:
> SHARED_LDFLAGS: -shared
> OPENSSL_LDFLAGS: -L/opt/libressl/lib
> OPENSSL_INCLUDES: -I/opt/libressl/include
> EXTRA_CC_LDFLAGS:
> EXTRA_CXX_LDFLAGS: -rdynamic
> LIBTOOL_LINK_FLAGS: -rpath /opt/libressl/lib
> ./config.notnice 14,08s user 11,27s system 104% cpu 24,299 total
> igalic@levix ~/src/asf/trafficserver (git)-[master] % make
> Making all in lib/ck
> make[1]: Entering directory '/home/igalic/src/asf/trafficserver/lib/ck'
> make -C doc all || exit
> make[2]: Entering directory '/home/igalic/src/asf/trafficserver/lib/ck/doc'
> for target in CK_ARRAY_FOREACH ck_array_buffer ck_array_commit
> ck_array_deinit ck_array_init ck_array_initialized ck_array_length
> ck_array_put ck_array_put_unique ck_array_remove ck_array_deinit ck_brlock
> ck_ht_count ck_ht_destroy ck_ht_gc ck_ht_get_spmc ck_ht_grow_spmc ck_ht_hash
> ck_ht_hash_direct ck_ht_init ck_ht_put_spmc ck_ht_remove_spmc
> ck_ht_reset_spmc ck_ht_reset_size_spmc ck_ht_set_spmc ck_ht_entry_empty
> ck_ht_entry_key ck_ht_entry_key_direct ck_ht_entry_key_length
> ck_ht_entry_key_set ck_ht_entry_key_set_direct ck_ht_entry_set
> ck_ht_entry_set_direct ck_ht_entry_value_direct ck_ht_entry_value
> ck_ht_iterator_init ck_ht_next ck_ht_stat ck_bitmap_init ck_bitmap_reset
> ck_bitmap_set ck_bitmap_bts ck_bitmap_test ck_bitmap_base ck_bitmap_union
> ck_bitmap_size ck_bitmap_clear ck_bitmap_bits ck_bitmap_buffer ck_bitmap_next
> ck_bitmap_iterator_init ck_elide ck_epoch_barrier ck_epoch_begin
> ck_epoch_call ck_epoch_end ck_epoch_init ck_epoch_poll ck_epoch_recycle
> ck_epoch_register ck_epoch_reclaim ck_epoch_synchronize ck_epoch_unregister
> ck_hs_gc ck_hs_init ck_hs_destroy CK_HS_HASH ck_hs_apply ck_hs_iterator_init
> ck_hs_next ck_hs_get ck_hs_put ck_hs_set ck_hs_fas ck_hs_remove ck_hs_move
> ck_hs_grow ck_hs_rebuild ck_hs_count ck_hs_reset ck_hs_reset_size ck_hs_stat
> ck_rhs_gc ck_rhs_init ck_rhs_destroy CK_RHS_HASH ck_rhs_apply
> ck_rhs_iterator_init ck_rhs_next ck_rhs_get ck_rhs_put ck_rhs_set ck_rhs_fas
> ck_rhs_remove ck_rhs_move ck_rhs_grow ck_rhs_rebuild ck_rhs_count
> ck_rhs_reset ck_rhs_reset_size ck_rhs_stat ck_rwcohort CK_RWCOHORT_INIT
> CK_RWCOHORT_INSTANCE CK_RWCOHORT_PROTOTYPE CK_RWCOHORT_READ_LOCK
> CK_RWCOHORT_READ_UNLOCK CK_RWCOHORT_WRITE_LOCK CK_RWCOHORT_WRITE_UNLOCK
> ck_cohort CK_COHORT_PROTOTYPE CK_COHORT_TRYLOCK_PROTOTYPE CK_COHORT_INSTANCE
> CK_COHORT_INIT CK_COHORT_LOCK CK_COHORT_UNLOCK CK_COHORT_TRYLOCK ck_pr
> ck_pr_fence_acquire ck_pr_fence_release ck_pr_barrier ck_pr_fas
> ck_pr_fence_atomic ck_pr_fence_atomic_load ck_pr_fence_atomic_store
> ck_pr_fence_load ck_pr_fence_load_atomic ck_pr_fence_load_store
> ck_pr_fence_load_depends ck_pr_fence_memory ck_pr_fence_store
> ck_pr_fence_store_atomic ck_pr_fence_store_load ck_pr_stall ck_pr_faa
> ck_pr_inc ck_pr_dec ck_pr_not ck_pr_neg ck_pr_add ck_pr_sub ck_pr_and
> ck_pr_xor ck_pr_or ck_pr_cas ck_pr_bts ck_pr_btc ck_pr_btr ck_pr_store
> ck_pr_load ck_pr_rtm ck_queue ck_ring_init ck_ring_dequeue_spmc
> ck_ring_enqueue_spmc ck_ring_enqueue_spmc_size ck_ring_trydequeue_spmc
> ck_ring_dequeue_spsc ck_ring_enqueue_spsc ck_ring_enqueue_spsc_size
> ck_ring_size ck_ring_capacity ck_tflock ck_rwlock ck_pflock ck_swlock
> ck_sequence ck_spinlock; do \
> /bin/gzip -c /home/igalic/src/asf/trafficserver/lib/ck/doc/$target >
> /home/igalic/src/asf/trafficserver/lib/ck/doc/$target.3.gz; \
> done
> gzip: /home/igalic/src/asf/trafficserver/lib/ck/doc/CK_RHS_HASH: No such file
> or directory
> make[2]: Leaving directory '/home/igalic/src/asf/trafficserver/lib/ck/doc'
> ---[ Manual pages are ready for installation.
> make -C src all || exit
> make[2]: Entering directory '/home/igalic/src/asf/trafficserver/lib/ck/src'
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_centralized.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_centralized.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_combining.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_combining.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_dissemination.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_dissemination.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_tournament.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_tournament.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_mcs.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_barrier_mcs.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_epoch.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_epoch.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_ht.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_ht.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_hp.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_hp.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_hs.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_hs.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_rhs.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_rhs.c
> /usr/bin/gcc -D_XOPEN_SOURCE=600 -D_BSD_SOURCE -D_DEFAULT_SOURCE -std=gnu99
> -pedantic -Wall -W -Wundef -Wendif-labels -Wshadow -Wpointer-arith
> -Wcast-align -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
> -Wnested-externs -Winline -Wdisabled-optimization -fstrict-aliasing -O2 -pipe
> -Wno-parentheses -fPIC -I/home/igalic/src/asf/trafficserver/lib/ck/include
> -I/home/igalic/src/asf/trafficserver/lib/ck/include -m64 -D__x86_64__ -c -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_array.o
> /home/igalic/src/asf/trafficserver/lib/ck/src/ck_array.c
> /usr/bin/gcc -Wl,-soname,libck.so.0 -m64 -shared -fPIC -m64 -o
> /home/igalic/src/asf/trafficserver/lib/ck/src/libck.so
> ck_barrier_centralized.o ck_barrier_combining.o ck_barrier_dissemination.o
> ck_barrier_tournament.o ck_barrier_mcs.o ck_epoch.o ck_ht.o ck_hp.o ck_hs.o
> ck_rhs.o ck_array.o
> ar rcs /home/igalic/src/asf/trafficserver/lib/ck/src/libck.a
> ck_barrier_centralized.o ck_barrier_combining.o ck_barrier_dissemination.o
> ck_barrier_tournament.o ck_barrier_mcs.o ck_epoch.o ck_ht.o ck_hp.o ck_hs.o
> ck_rhs.o ck_array.o
> make[2]: Leaving directory '/home/igalic/src/asf/trafficserver/lib/ck/src'
> ---[ Concurrency Kit has built successfully. You may now "make install".
> {code}
> the same is not true for the luajit sub-component:
> {code}
> Making all in luajit
> test -d "../lib/luajit/src" || (cd ".." && git submodule update --init)
> test -d "../lib/luajit/src" || cp -rf "./luajit" "../lib/"
> cd luajit && make BUILDMODE="static" PREFIX="/opt/ats-trunk"
> CC="/usr/bin/clang-3.6" \
> CFLAGS="-g -O3 -fno-strict-aliasing -Qunused-arguments
> -mcx16 -DLUA_COMPAT_ALL -DLUA_USE_POSIX -DLUA_USE_DLOPEN" LDFLAGS=""
> make[3]: Entering directory '/home/igalic/src/asf/trafficserver/lib/luajit'
> ==== Building LuaJIT 2.0.3 ====
> make -C src
> make[4]: Entering directory
> '/home/igalic/src/asf/trafficserver/lib/luajit/src'
> clang: error: unsupported option '-dumpspecs'
> clang: error: no input files
> HOSTCC host/minilua.o
> HOSTLINK host/minilua
> DYNASM host/buildvm_arch.h
> HOSTCC host/buildvm.o
> HOSTCC host/buildvm_asm.o
> HOSTCC host/buildvm_peobj.o
> HOSTCC host/buildvm_lib.o
> HOSTCC host/buildvm_fold.o
> HOSTLINK host/buildvm
> BUILDVM lj_vm.s
> ASM lj_vm.o
> CC lj_gc.o
> BUILDVM lj_ffdef.h
> CC lj_err.o
> CC lj_char.o
> BUILDVM lj_bcdef.h
> CC lj_bc.o
> CC lj_obj.o
> CC lj_str.o
> CC lj_tab.o
> CC lj_func.o
> CC lj_udata.o
> CC lj_meta.o
> CC lj_debug.o
> CC lj_state.o
> CC lj_dispatch.o
> CC lj_vmevent.o
> CC lj_vmmath.o
> CC lj_strscan.o
> CC lj_api.o
> CC lj_lex.o
> CC lj_parse.o
> CC lj_bcread.o
> CC lj_bcwrite.o
> CC lj_load.o
> CC lj_ir.o
> CC lj_opt_mem.o
> BUILDVM lj_folddef.h
> CC lj_opt_fold.o
> CC lj_opt_narrow.o
> CC lj_opt_dce.o
> CC lj_opt_loop.o
> CC lj_opt_split.o
> CC lj_opt_sink.o
> CC lj_mcode.o
> CC lj_snap.o
> CC lj_record.o
> CC lj_crecord.o
> BUILDVM lj_recdef.h
> CC lj_ffrecord.o
> CC lj_asm.o
> CC lj_trace.o
> CC lj_gdbjit.o
> CC lj_ctype.o
> CC lj_cdata.o
> CC lj_cconv.o
> CC lj_ccall.o
> CC lj_ccallback.o
> CC lj_carith.o
> CC lj_clib.o
> CC lj_cparse.o
> CC lj_lib.o
> CC lj_alloc.o
> CC lib_aux.o
> BUILDVM lj_libdef.h
> CC lib_base.o
> CC lib_math.o
> CC lib_bit.o
> CC lib_string.o
> CC lib_table.o
> CC lib_io.o
> CC lib_os.o
> CC lib_package.o
> CC lib_debug.o
> CC lib_jit.o
> CC lib_ffi.o
> CC lib_init.o
> AR libluajit.a
> CC luajit.o
> BUILDVM jit/vmdef.lua
> LINK luajit
> OK Successfully built LuaJIT
> make[4]: Leaving directory '/home/igalic/src/asf/trafficserver/lib/luajit/src'
> ==== Successfully built LuaJIT 2.0.3 ====
> {code}
> (see TS-3227 for issues with luajit and clang ;)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)