Skip to content

Commit

Permalink
tools: don't gitignore base64 config.h
Browse files Browse the repository at this point in the history
The file is checked into git. Ignoring it causes a very non-obvious way
of breaking tarball builds:

1. Download and unpack tarball
2. Check the sources into git with `git init; git add .; git commit -a`
3. Clean the source tree with `git clean -dfx`
4. Run `./configure && make`
5. Observe build failure because config.h is missing

Fixes: nodejs#47638
PR-URL: nodejs#48174
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yagiz Nizipli <yagiz@nizipli.com>
  • Loading branch information
bnoordhuis authored and Ceres6 committed Aug 14, 2023
1 parent 8afaa94 commit f20633f
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion tools/dep_updaters/update-base64.sh
Expand Up @@ -62,7 +62,11 @@ mv "$WORKSPACE/base64" "$DEPS_DIR/base64/"

# Build configuration is handled by `deps/base64/base64.gyp`, but since `config.h` has to be present for the build
# to work, we create it and leave it empty.
echo "// Intentionally empty" >> "$DEPS_DIR/base64/base64/lib/config.h"
echo "// Intentionally empty" > "$DEPS_DIR/base64/base64/lib/config.h"

# Clear out .gitignore, otherwise config.h is ignored. That's dangerous when
# people check in our tarballs into source control and run `git clean`.
echo "# Intentionally empty" > "$DEPS_DIR/base64/base64/.gitignore"

# update the base64_version.h
cat > "$BASE_DIR/src/base64_version.h" << EOL
Expand Down

0 comments on commit f20633f

Please sign in to comment.