@cryptotaxi247 / netdata-1 / commits / 3f97fe035

Disable automake dependency tracking in our various one-time builds. (#12701)

* Disable automake dependency tracking in our various one-time builds. * Also disable dependency tracking code in package builds.

Austin S. Hemmelgarn committed Apr 18, 2022 at 14:21 UTC 3f97fe0355dd809939fb5a73fe1e76b86306908f
15 files changed +25 -17
.github/scripts/build-artifacts.sh
+1
@@ -33,6 +33,7 @@ build_dist() {
33 --with-zlib \
34 --with-math \
35 --with-user=netdata \
36 + --disable-dependency-tracking \
37 CFLAGS=-O2
38 make dist
39 mv "${BASENAME}.tar.gz" artifacts/
.github/scripts/build-dist.sh
+1
@@ -32,6 +32,7 @@ build_dist() {
32 --with-zlib \
33 --with-math \
34 --with-user=netdata \
35 + --disable-dependency-tracking \
36 CFLAGS=-O2
37 make dist
38 mv "${BASENAME}.tar.gz" artifacts/
.github/scripts/run_install_with_dist_file.sh
+1 -1
@@ -33,7 +33,7 @@ docker run \
33 -v "${PWD}:/netdata" \
34 -w /netdata \
35 "ubuntu:latest" \
36 - /bin/bash -c "./install-required-packages.sh --dont-wait --non-interactive netdata && apt install wget && ./netdata-installer.sh --dont-wait --require-cloud --disable-telemetry --install /tmp && echo \"Validating netdata instance is running\" && wget -O - 'http://127.0.0.1:19999/api/v1/info' | grep version"
36 + /bin/bash -c "./install-required-packages.sh --dont-wait --non-interactive netdata && apt install wget && ./netdata-installer.sh --dont-wait --require-cloud --disable-telemetry --install /tmp --one-time-build && echo \"Validating netdata instance is running\" && wget -O - 'http://127.0.0.1:19999/api/v1/info' | grep version"
37 popd || exit 1
38
39 echo "All Done!"
.github/workflows/build.yml
+4 -4
@@ -321,23 +321,23 @@ jobs:
321 id: build-basic
322 run: |
323 docker run --security-opt seccomp=unconfined -w /netdata sha256:${{ steps.load.outputs.image }} \
324 - /bin/sh -c 'autoreconf -ivf && ./configure && make -j2'
324 + /bin/sh -c 'autoreconf -ivf && ./configure --disable-dependency-tracking && make -j2'
325 - name: netdata-installer on ${{ matrix.distro }}, disable cloud
326 id: build-no-cloud
327 run: |
328 docker run --security-opt seccomp=unconfined -w /netdata sha256:${{ steps.load.outputs.image }} \
329 - /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it --disable-cloud'
329 + /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it --disable-cloud --one-time-build'
330 - name: netdata-installer on ${{ matrix.distro }}, require cloud
331 id: build-cloud
332 run: |
333 docker run --security-opt seccomp=unconfined -w /netdata sha256:${{ steps.load.outputs.image }} \
334 - /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it --require-cloud'
334 + /bin/sh -c './netdata-installer.sh --dont-wait --dont-start-it --require-cloud --one-time-build'
335 - name: netdata-installer on ${{ matrix.distro }}, require cloud, no JSON-C
336 id: build-no-jsonc
337 if: matrix.jsonc_removal != ''
338 run: |
339 docker run --security-opt seccomp=unconfined -w /netdata sha256:${{ steps.load.outputs.image }} \
340 - /bin/sh -c '/rmjsonc.sh && ./netdata-installer.sh --dont-wait --dont-start-it --require-cloud'
340 + /bin/sh -c '/rmjsonc.sh && ./netdata-installer.sh --dont-wait --dont-start-it --require-cloud --one-time-build'
341 - name: Failure Notification
342 uses: rtCamp/action-slack-notify@v2
343 env:
.github/workflows/checks.yml
+2 -2
@@ -27,7 +27,7 @@ jobs:
27 apk del openssl openssl-dev;
28 apk add libressl libressl-dev;
29 autoreconf -ivf;
30 - ./configure;
30 + ./configure --disable-dependency-trackiong;
31 make;'
32 clang-checks:
33 name: Clang
@@ -51,7 +51,7 @@ jobs:
51 - name: Prepare environment
52 run: ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata
53 - name: Build netdata
54 - run: ./netdata-installer.sh --dont-start-it --disable-telemetry --dont-wait --install /tmp/install
54 + run: ./netdata-installer.sh --dont-start-it --disable-telemetry --dont-wait --install /tmp/install --one-time-build
55 - name: Check that repo is clean
56 run: |
57 git status --porcelain=v1 > /tmp/porcelain
.github/workflows/tests.yml
+1 -1
@@ -57,7 +57,7 @@ jobs:
57 - name: Configure
58 run: |
59 autoreconf -ivf
60 - ./configure --disable-ml
60 + ./configure --disable-ml --disable-dependency-tracking
61 # XXX: Work-around for bug with libbson-1.0 in Ubuntu 18.04
62 # See: https://bugs.launchpad.net/ubuntu/+source/libmongoc/+bug/1790771
63 # https://jira.mongodb.org/browse/CDRIVER-2818
contrib/debian/rules
+1 -1
@@ -41,7 +41,7 @@ override_dh_auto_configure:
41 autoreconf -ivf
42 dh_auto_configure -- --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib \
43 --libexecdir=/usr/libexec --with-user=netdata --with-math --with-zlib --with-webdir=/var/lib/netdata/www \
44 - $(EBPF_CONFIG)
44 + --disable-dependency-tracking $(EBPF_CONFIG)
45
46 override_dh_install:
47 cp -v $(BASE_CONFIG) debian/netdata.conf
netdata-installer.sh
+2 -1
@@ -343,6 +343,7 @@ while [ -n "${1}" ]; do
343 "--enable-ebpf") NETDATA_DISABLE_EBPF=0 ;;
344 "--disable-ebpf") NETDATA_DISABLE_EBPF=1 NETDATA_CONFIGURE_OPTIONS="$(echo "${NETDATA_CONFIGURE_OPTIONS%--disable-ebpf)}" | sed 's/$/ --disable-ebpf/g')" ;;
345 "--skip-available-ram-check") SKIP_RAM_CHECK=1 ;;
346 + "--one-time-build") NETDATA_CONFIGURE_OPTIONS="$(echo "${NETDATA_CONFIGURE_OPTIONS%--disable-dependency-tracking)}" | sed 's/$/ --disable-dependency-tracking/g')" ;;
347 "--disable-cloud")
348 if [ -n "${NETDATA_REQUIRE_CLOUD}" ]; then
349 echo "Cloud explicitly enabled, ignoring --disable-cloud."
@@ -711,7 +712,7 @@ build_judy() {
712 run ${env_cmd} autoheader &&
713 run ${env_cmd} automake --add-missing --force --copy --include-deps &&
714 run ${env_cmd} autoconf &&
714 - run ${env_cmd} ./configure &&
715 + run ${env_cmd} ./configure --disable-dependency-tracking &&
716 run ${env_cmd} ${make} ${MAKEOPTS} -C src &&
717 run ${env_cmd} ar -r src/libJudy.a src/Judy*/*.o; then
718 cd - > /dev/null || return 1
netdata.spec.in
+2 -1
@@ -272,7 +272,8 @@ autoreconf -ivf
272 --libdir="%{_libdir}" \
273 --with-zlib \
274 --with-math \
275 - --with-user=netdata
275 + --with-user=netdata \
276 + --disable-dependency-tracking
277
278 # Build step
279 %{__make} %{?_smp_mflags}
packaging/bundle-judy.sh
+1 -1
@@ -14,7 +14,7 @@ aclocal || exit 1
14 autoheader || exit 1
15 automake --add-missing --force --copy --include-deps || exit 1
16 autoconf || exit 1
17 -./configure || exit 1
17 +./configure --disable-dependncy-tracking || exit 1
18 make -C src || exit 1
19 ar -r src/libJudy.a src/Judy*/*.o || exit 1
20 cd "${OLDPWD}" || exit 1
packaging/docker/Dockerfile
+1 -1
@@ -27,7 +27,7 @@ RUN chmod +x netdata-installer.sh && \
27 cp -rp /deps/* /usr/local/ && \
28 /bin/echo -e "INSTALL_TYPE='oci'\nPREBUILT_ARCH='$(uname -m)'" > ./system/.install-type && \
29 ./netdata-installer.sh --dont-wait --dont-start-it --use-system-protobuf ${EXTRA_INSTALL_OPTS} \
30 - "$([ "$RELEASE_CHANNEL" = stable ] && echo --stable-channel)"
30 + --one-time-build "$([ "$RELEASE_CHANNEL" = stable ] && echo --stable-channel)"
31
32 # files to one directory
33 RUN mkdir -p /app/usr/sbin/ \
packaging/makeself/jobs/50-bash-5.1.16.install.sh
+2 -1
@@ -20,7 +20,8 @@ run ./configure \
20 --enable-array-variables \
21 --disable-progcomp \
22 --disable-profiling \
23 - --disable-nls
23 + --disable-nls \
24 + --disable-dependency-tracking
25
26 run make clean
27 run make -j "$(nproc)"
packaging/makeself/jobs/50-curl-7.82.0.install.sh
+2 -1
@@ -37,7 +37,8 @@ run ./configure \
37 --enable-ipv6 \
38 --enable-cookies \
39 --with-ca-fallback \
40 - --with-openssl
40 + --with-openssl \
41 + --disable-dependency-tracking
42
43 # Curl autoconf does not honour the curl_LDFLAGS environment variable
44 run sed -i -e "s/LDFLAGS =/LDFLAGS = -all-static/" src/Makefile
packaging/makeself/jobs/50-fping-5.1.install.sh
+2 -1
@@ -17,7 +17,8 @@ export PKG_CONFIG_PATH="/openssl-static/lib/pkgconfig"
17 run ./configure \
18 --prefix="${NETDATA_INSTALL_PATH}" \
19 --enable-ipv4 \
20 - --enable-ipv6
20 + --enable-ipv6 \
21 + --disable-dependency-tracking
22
23 cat > doc/Makefile << EOF
24 all:
packaging/makeself/jobs/70-netdata-git.install.sh
+2 -1
@@ -32,7 +32,8 @@ run ./netdata-installer.sh \
32 --dont-start-it \
33 --require-cloud \
34 --use-system-protobuf \
35 - --dont-scrub-cflags-even-though-it-may-break-things
35 + --dont-scrub-cflags-even-though-it-may-break-things \
36 + --one-time-build
37
38 # shellcheck disable=SC2015
39 [ "${GITHUB_ACTIONS}" = "true" ] && echo "::group::Finishing netdata install" || true