diff options
author | Austin S. Hemmelgarn <austin@netdata.cloud> | 2022-05-02 08:54:50 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-05-02 08:54:50 -0400 |
commit | cba0dca1f69f5ea8fc4d35cb35463a71349f654d (patch) | |
tree | 8149bacf88a09584564ce12dbd1583dd610e0cdb /netdata-installer.sh | |
parent | 43b9fdc213ee043c38e248d9ff404ae02cae480d (diff) |
Add `-pipe` to CFLAGS in most cases for builds. (#12709)
* Add `-pipe` to CFLAGS in most cases for builds.
This trades marginally higher memory usage at build time (on the order
of a few hundred kB in the worst case scenario) for improved build
times by avoiding using temporary files for passing data from the
compiler to commands it invokes.
* Suppress bogus shellcheck warnings.
* Fix handling of CFLAGS in netdata-installer.sh.
Diffstat (limited to 'netdata-installer.sh')
-rwxr-xr-x | netdata-installer.sh | 41 |
1 files changed, 18 insertions, 23 deletions
diff --git a/netdata-installer.sh b/netdata-installer.sh index 2bd871718a..d3e1541a9c 100755 --- a/netdata-installer.sh +++ b/netdata-installer.sh @@ -129,7 +129,7 @@ renice 19 $$ > /dev/null 2> /dev/null # you can set CFLAGS before running installer # shellcheck disable=SC2269 LDFLAGS="${LDFLAGS}" -CFLAGS="${CFLAGS--O2}" +CFLAGS="${CFLAGS-"-O2 -pipe"}" [ "z${CFLAGS}" = "z-O3" ] && CFLAGS="-O2" # shellcheck disable=SC2269 ACLK="${ACLK}" @@ -576,18 +576,16 @@ build_protobuf() { env_cmd='' if [ -z "${DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS}" ]; then - env_cmd="env CFLAGS=-fPIC CXXFLAGS= LDFLAGS=" + env_cmd="env CFLAGS='-fPIC -pipe' CXXFLAGS='-fPIC -pipe' LDFLAGS=" fi cd "${1}" > /dev/null || return 1 - # shellcheck disable=SC2086 - if ! run ${env_cmd} ./configure --disable-shared --without-zlib --disable-dependency-tracking --with-pic; then + if ! run eval "${env_cmd} ./configure --disable-shared --without-zlib --disable-dependency-tracking --with-pic"; then cd - > /dev/null || return 1 return 1 fi - # shellcheck disable=SC2086 - if ! run ${env_cmd} $make ${MAKEOPTS}; then + if ! run eval "${env_cmd} ${make} ${MAKEOPTS}"; then cd - > /dev/null || return 1 return 1 fi @@ -659,7 +657,7 @@ build_judy() { libtoolize="libtoolize" if [ -z "${DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS}" ]; then - env_cmd="env CFLAGS=-fPIC CXXFLAGS= LDFLAGS=" + env_cmd="env CFLAGS='-fPIC -pipe' CXXFLAGS='-fPIC -pipe' LDFLAGS=" fi if [ "$(uname)" = "Darwin" ]; then @@ -667,15 +665,14 @@ build_judy() { fi cd "${1}" > /dev/null || return 1 - # shellcheck disable=SC2086 - if run ${env_cmd} ${libtoolize} --force --copy && - run ${env_cmd} aclocal && - run ${env_cmd} autoheader && - run ${env_cmd} automake --add-missing --force --copy --include-deps && - run ${env_cmd} autoconf && - run ${env_cmd} ./configure --disable-dependency-tracking && - run ${env_cmd} ${make} ${MAKEOPTS} -C src && - run ${env_cmd} ar -r src/libJudy.a src/Judy*/*.o; then + if run eval "${env_cmd} ${libtoolize} --force --copy" && + run eval "${env_cmd} aclocal" && + run eval "${env_cmd} autoheader" && + run eval "${env_cmd} automake --add-missing --force --copy --include-deps" && + run eval "${env_cmd} autoconf" && + run eval "${env_cmd} ./configure" && + run eval "${env_cmd} ${make} ${MAKEOPTS} -C src" && + run eval "${env_cmd} ar -r src/libJudy.a src/Judy*/*.o"; then cd - > /dev/null || return 1 else cd - > /dev/null || return 1 @@ -750,14 +747,12 @@ build_jsonc() { env_cmd='' if [ -z "${DONT_SCRUB_CFLAGS_EVEN_THOUGH_IT_MAY_BREAK_THINGS}" ]; then - env_cmd="env CFLAGS=-fPIC CXXFLAGS= LDFLAGS=" + env_cmd="env CFLAGS='-fPIC -pipe' CXXFLAGS='-fPIC -pipe' LDFLAGS=" fi - cd "${1}" > /dev/null || return 1 - # shellcheck disable=SC2086 - run ${env_cmd} cmake -DBUILD_SHARED_LIBS=OFF . - # shellcheck disable=SC2086 - run ${env_cmd} ${make} ${MAKEOPTS} + cd "${1}" > /dev/null || exit 1 + run eval "${env_cmd} cmake -DBUILD_SHARED_LIBS=OFF ." + run eval "${env_cmd} ${make} ${MAKEOPTS}" cd - > /dev/null || return 1 } @@ -874,7 +869,7 @@ build_libbpf() { cd "${1}/src" > /dev/null || return 1 mkdir root build # shellcheck disable=SC2086 - run env CFLAGS=-fPIC CXXFLAGS= LDFLAGS= BUILD_STATIC_ONLY=y OBJDIR=build DESTDIR=.. ${make} ${MAKEOPTS} install + run env CFLAGS='-fPIC -pipe' CXXFLAGS='-fPIC -pipe' LDFLAGS= BUILD_STATIC_ONLY=y OBJDIR=build DESTDIR=.. ${make} ${MAKEOPTS} install cd - > /dev/null || return 1 } |