8aaf4d2a40
* Make language instructions' documentation links clickable
See 86208c52
.
* Add a `git submodules` check to autogen.sh
Running `./autogen.sh && make` happens to work without initializing git
submodules - but autogen.sh writes to what is supposed to be a git
submodules directory, so trying to later initialize git submodules
fails.
This change makes building a bit more reliable for people who miss this
step.
* Revise third_party googletest logic
As discussed in PR, instead of requiring that `git submodule --init` be
run, correctly handle the case where it isn't run.
45 lines
1.2 KiB
Bash
Executable File
45 lines
1.2 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Run this script to generate the configure script and other files that will
|
|
# be included in the distribution. These files are not checked in because they
|
|
# are automatically generated.
|
|
|
|
set -e
|
|
|
|
if [ ! -z "$@" ]; then
|
|
for argument in "$@"; do
|
|
case $argument in
|
|
# make curl silent
|
|
"-s")
|
|
curlopts="-s"
|
|
;;
|
|
esac
|
|
done
|
|
fi
|
|
|
|
# Check that we're being run from the right directory.
|
|
if test ! -f src/google/protobuf/stubs/common.h; then
|
|
cat >&2 << __EOF__
|
|
Could not find source code. Make sure you are running this script from the
|
|
root of the distribution tree.
|
|
__EOF__
|
|
exit 1
|
|
fi
|
|
|
|
set -ex
|
|
|
|
# The absence of a m4 directory in googletest causes autoreconf to fail when
|
|
# building under the CentOS docker image. It's a warning in regular build on
|
|
# Ubuntu/gLinux as well. (This is only needed if git submodules have been
|
|
# initialized, which is typically only needed for testing; see the installation
|
|
# instructions for details.)
|
|
if test -d third_party/googletest; then
|
|
mkdir -p third_party/googletest/m4
|
|
fi
|
|
|
|
# TODO(kenton): Remove the ",no-obsolete" part and fix the resulting warnings.
|
|
autoreconf -f -i -Wall,no-obsolete
|
|
|
|
rm -rf autom4te.cache config.h.in~
|
|
exit 0
|