blob: 08966c631b01eb1694549eb988ab9bbe5b052c6f [file] [log] [blame]
temporal40ee5512008-07-10 02:12:20 +00001#!/bin/sh
2
3# Run this script to generate the configure script and other files that will
4# be included in the distribution. These files are not checked in because they
5# are automatically generated.
6
kenton@google.comfccb1462009-12-18 02:11:36 +00007set -e
8
temporal40ee5512008-07-10 02:12:20 +00009# Check that we're being run from the right directory.
kenton@google.com2fd12082009-05-01 21:41:32 +000010if test ! -f src/google/protobuf/stubs/common.h; then
temporal40ee5512008-07-10 02:12:20 +000011 cat >&2 << __EOF__
12Could not find source code. Make sure you are running this script from the
13root of the distribution tree.
14__EOF__
15 exit 1
16fi
17
kenton@google.comfccb1462009-12-18 02:11:36 +000018# Check that gtest is present. Usually it is already there since the
19# directory is set up as an SVN external.
20if test ! -e gtest; then
Feng Xiao5fd12b82014-12-11 15:17:04 -080021 echo "Google Test not present. Fetching gtest-1.7.0 from the web..."
22 curl -O https://googletest.googlecode.com/files/gtest-1.7.0.zip
23 unzip -q gtest-1.7.0.zip
24 rm gtest-1.7.0.zip
25 mv gtest-1.7.0 gtest
kenton@google.comfccb1462009-12-18 02:11:36 +000026fi
27
kenton@google.com6cbe32f2009-07-31 21:20:02 +000028set -ex
kenton@google.combbbd4d32009-04-22 01:34:07 +000029
kenton@google.com6cbe32f2009-07-31 21:20:02 +000030# Temporary hack: Must change C runtime library to "multi-threaded DLL",
31# otherwise it will be set to "multi-threaded static" when MSVC upgrades
32# the project file to MSVC 2005/2008. vladl of Google Test says gtest will
33# probably change their default to match, then this will be unnecessary.
34# One of these mappings converts the debug configuration and the other
35# converts the release configuration. I don't know which is which.
36sed -i -e 's/RuntimeLibrary="5"/RuntimeLibrary="3"/g;
37 s/RuntimeLibrary="4"/RuntimeLibrary="2"/g;' gtest/msvc/*.vcproj
temporal40ee5512008-07-10 02:12:20 +000038
kenton@google.comcf3f6382008-09-30 22:01:45 +000039# TODO(kenton): Remove the ",no-obsolete" part and fix the resulting warnings.
40autoreconf -f -i -Wall,no-obsolete
temporal40ee5512008-07-10 02:12:20 +000041
temporal40ee5512008-07-10 02:12:20 +000042rm -rf autom4te.cache config.h.in~
43exit 0