Improves README.
This commit is contained in:
		
							
								
								
									
										63
									
								
								README
									
									
									
									
									
								
							
							
						
						
									
										63
									
								
								README
									
									
									
									
									
								
							@@ -68,18 +68,19 @@ much more active and have the latest features, but the latter provides much
 | 
			
		||||
more stability and predictability. Choose whichever fits your needs best, and
 | 
			
		||||
proceed with the following Subversion commands:
 | 
			
		||||
 | 
			
		||||
  $ svn checkout http://googletest.googlecode.com/svn/trunk/ gtest-svn
 | 
			
		||||
  svn checkout http://googletest.googlecode.com/svn/trunk/ gtest-svn
 | 
			
		||||
 | 
			
		||||
or for a release version X.Y.*'s branch:
 | 
			
		||||
 | 
			
		||||
  $ svn checkout http://googletest.googlecode.com/svn/branches/release-X.Y/ gtest-X.Y-svn
 | 
			
		||||
  svn checkout http://googletest.googlecode.com/svn/branches/release-X.Y/ \
 | 
			
		||||
    gtest-X.Y-svn
 | 
			
		||||
 | 
			
		||||
Next you will need to prepare the GNU Autotools build system, if you
 | 
			
		||||
are using Linux, Mac OS X, or Cygwin. Enter the target directory of
 | 
			
		||||
the checkout command you used ('gtest-svn' or 'gtest-X.Y-svn' above)
 | 
			
		||||
and proceed with the following command:
 | 
			
		||||
 | 
			
		||||
  $ autoreconf -fvi
 | 
			
		||||
  autoreconf -fvi
 | 
			
		||||
 | 
			
		||||
Once you have completed this step, you are ready to build the library. Note
 | 
			
		||||
that you should only need to complete this step once. The subsequent `make'
 | 
			
		||||
@@ -91,7 +92,7 @@ fail. You may need to explicitly specify a version to use. For instance, if you
 | 
			
		||||
have both GNU Automake 1.4 and 1.9 installed and `automake' would invoke the
 | 
			
		||||
1.4, use instead:
 | 
			
		||||
 | 
			
		||||
  $ AUTOMAKE=automake-1.9 ACLOCAL=aclocal-1.9 autoreconf -fvi
 | 
			
		||||
  AUTOMAKE=automake-1.9 ACLOCAL=aclocal-1.9 autoreconf -fvi
 | 
			
		||||
 | 
			
		||||
Make sure you're using the same version of automake and aclocal.
 | 
			
		||||
 | 
			
		||||
@@ -107,9 +108,9 @@ Once downloaded expand the archive using whichever tools you prefer for that
 | 
			
		||||
type. This will always result in a new directory with the name "gtest-X.Y.Z"
 | 
			
		||||
which contains all of the source code. Here are some examples in Linux:
 | 
			
		||||
 | 
			
		||||
  $ tar -xvzf gtest-X.Y.Z.tar.gz
 | 
			
		||||
  $ tar -xvjf gtest-X.Y.Z.tar.bz2
 | 
			
		||||
  $ unzip gtest-X.Y.Z.zip
 | 
			
		||||
  tar -xvzf gtest-X.Y.Z.tar.gz
 | 
			
		||||
  tar -xvjf gtest-X.Y.Z.tar.bz2
 | 
			
		||||
  unzip gtest-X.Y.Z.zip
 | 
			
		||||
 | 
			
		||||
Building the Source
 | 
			
		||||
-------------------
 | 
			
		||||
@@ -126,9 +127,9 @@ either approach by simply substituting the shell variable SRCDIR with "." for
 | 
			
		||||
building inside the source directory, and the relative path to the source
 | 
			
		||||
directory otherwise.
 | 
			
		||||
 | 
			
		||||
  $ ${SRCDIR}/configure  # Standard GNU configure script, --help for more info
 | 
			
		||||
  $ make  # Standard makefile following GNU conventions
 | 
			
		||||
  $ make check  # Builds and runs all tests - all should pass
 | 
			
		||||
  ${SRCDIR}/configure  # Standard GNU configure script, --help for more info
 | 
			
		||||
  make  # Standard makefile following GNU conventions
 | 
			
		||||
  make check  # Builds and runs all tests - all should pass
 | 
			
		||||
 | 
			
		||||
Other programs will only be able to use Google Test's functionality if you
 | 
			
		||||
install it in a location which they can access, in Linux this is typically
 | 
			
		||||
@@ -136,7 +137,7 @@ under '/usr/local'. The following command will install all of the Google Test
 | 
			
		||||
libraries, public headers, and utilities necessary for other programs and
 | 
			
		||||
libraries to leverage it:
 | 
			
		||||
 | 
			
		||||
  $ sudo make install  # Not necessary, but allows use by other programs
 | 
			
		||||
  sudo make install  # Not necessary, but allows use by other programs
 | 
			
		||||
 | 
			
		||||
Should you need to remove Google Test from your system after having installed
 | 
			
		||||
it, run the following command, and it will back out its changes.  However, note
 | 
			
		||||
@@ -146,7 +147,7 @@ Google Test on your system, and are working from a VCS checkout, make sure you
 | 
			
		||||
run this *before* updating your checkout of the source in order to uninstall
 | 
			
		||||
the same version which you installed.
 | 
			
		||||
 | 
			
		||||
  $ sudo make uninstall  # Must be run against the exact same build as "install"
 | 
			
		||||
  sudo make uninstall  # Must be run against the exact same build as "install"
 | 
			
		||||
 | 
			
		||||
Your project can build against Google Test simply by leveraging the
 | 
			
		||||
'gtest-config' script. This script can be invoked directly out of the 'scripts'
 | 
			
		||||
@@ -154,13 +155,13 @@ subdirectory of the build tree, and it will be installed in the binary
 | 
			
		||||
directory specified during the 'configure'. Here are some examples of its use,
 | 
			
		||||
see 'gtest-config --help' for more detailed information.
 | 
			
		||||
 | 
			
		||||
  $ gtest-config --min-version=1.0 || echo "Insufficient Google Test version."
 | 
			
		||||
  gtest-config --min-version=1.0 || echo "Insufficient Google Test version."
 | 
			
		||||
 | 
			
		||||
  $ g++ $(gtest-config --cppflags --cxxflags) -o foo.o -c foo.cpp
 | 
			
		||||
  $ g++ $(gtest-config --ldflags --libs) -o foo foo.o
 | 
			
		||||
  g++ $(gtest-config --cppflags --cxxflags) -o foo.o -c foo.cpp
 | 
			
		||||
  g++ $(gtest-config --ldflags --libs) -o foo foo.o
 | 
			
		||||
 | 
			
		||||
    # When using a built but not installed Google Test:
 | 
			
		||||
  $ g++ $(../../my_gtest_build/scripts/gtest-config ...) ...
 | 
			
		||||
  # When using a built but not installed Google Test:
 | 
			
		||||
  g++ $(../../my_gtest_build/scripts/gtest-config ...) ...
 | 
			
		||||
 | 
			
		||||
### Windows ###
 | 
			
		||||
Open the gtest.sln file in the msvc/ folder using Visual Studio, and
 | 
			
		||||
@@ -173,7 +174,7 @@ target. The universal binary framework will end up in your selected build
 | 
			
		||||
directory (selected in the Xcode "Preferences..." -> "Building" pane and
 | 
			
		||||
defaults to xcode/build). Alternatively, at the command line, enter:
 | 
			
		||||
 | 
			
		||||
 $ xcodebuild
 | 
			
		||||
  xcodebuild
 | 
			
		||||
 
 | 
			
		||||
This will build the "Release" configuration of the gtest.framework, but you can
 | 
			
		||||
select the "Debug" configuration with a command line option. See the
 | 
			
		||||
@@ -185,7 +186,7 @@ if you see some errors. Xcode reports all test failures (even the intentional
 | 
			
		||||
ones) as errors. However, you should see a "Build succeeded" message at the end
 | 
			
		||||
of the build log. To run all of the tests from the command line, enter:
 | 
			
		||||
 | 
			
		||||
  $ xcodebuid -target Check
 | 
			
		||||
  xcodebuid -target Check
 | 
			
		||||
 | 
			
		||||
It is also possible to build and execute individual tests within Xcode. Each
 | 
			
		||||
test has its own Xcode "Target" and Xcode "Executable". To build any of the
 | 
			
		||||
@@ -202,15 +203,15 @@ the Console for the results.
 | 
			
		||||
 | 
			
		||||
Individual tests can be built from the command line using:
 | 
			
		||||
 | 
			
		||||
  $ xcodebuild -target <test_name>
 | 
			
		||||
  xcodebuild -target <test_name>
 | 
			
		||||
 | 
			
		||||
These tests can be executed from the command line by moving to the build
 | 
			
		||||
directory and then (in bash)
 | 
			
		||||
 | 
			
		||||
  $ export DYLD_FRAMEWORK_PATH=`pwd`
 | 
			
		||||
  $ ./<test_name>  # (if it is not a python test, e.g. ./gtest_unittest)
 | 
			
		||||
    OR
 | 
			
		||||
  $ ./<test_name>.py  # (if it is a python test, e.g. ./gtest_color_test.py)
 | 
			
		||||
  export DYLD_FRAMEWORK_PATH=`pwd`
 | 
			
		||||
  ./<test_name>  # (if it is not a python test, e.g. ./gtest_unittest)
 | 
			
		||||
  # OR
 | 
			
		||||
  ./<test_name>.py  # (if it is a python test, e.g. ./gtest_color_test.py)
 | 
			
		||||
 | 
			
		||||
To use the gtest.framework for your own tests, first, add the framework to Xcode
 | 
			
		||||
project. Next, create a new executable target and add the framework to the
 | 
			
		||||
@@ -234,9 +235,9 @@ You can use it as a starting point for your own Makefile.
 | 
			
		||||
If the default settings are correct for your environment, the
 | 
			
		||||
following commands should succeed:
 | 
			
		||||
 | 
			
		||||
  $ cd ${SRCDIR}/make
 | 
			
		||||
  $ make
 | 
			
		||||
  $ ./sample1_unittest
 | 
			
		||||
  cd ${SRCDIR}/make
 | 
			
		||||
  make
 | 
			
		||||
  ./sample1_unittest
 | 
			
		||||
 | 
			
		||||
If you see errors, try to tweak the contents of make/Makefile to make
 | 
			
		||||
them go away.  There are instructions in make/Makefile on how to do
 | 
			
		||||
@@ -248,10 +249,10 @@ prefer your own build system, you just need to compile
 | 
			
		||||
src/gtest-all.cc into a library and link your tests with it.  Assuming
 | 
			
		||||
a Linux-like system and gcc, something like the following will do:
 | 
			
		||||
 | 
			
		||||
  $ cd ${SRCDIR}
 | 
			
		||||
  $ g++ -I. -I./include -c src/gtest-all.cc
 | 
			
		||||
  $ ar -rv libgtest.a gtest-all.o
 | 
			
		||||
  $ g++ -I. -I./include path/to/your_test.cc libgtest.a -o your_test
 | 
			
		||||
  cd ${SRCDIR}
 | 
			
		||||
  g++ -I. -I./include -c src/gtest-all.cc
 | 
			
		||||
  ar -rv libgtest.a gtest-all.o
 | 
			
		||||
  g++ -I. -I./include path/to/your_test.cc libgtest.a -o your_test
 | 
			
		||||
 | 
			
		||||
Regenerating Source Files
 | 
			
		||||
-------------------------
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user