Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
googletest
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
googletest
Commits
3e1e473c
Commit
3e1e473c
authored
Dec 02, 2008
by
shiqian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adds a Makefile to demonstrate building Google Test with a manually-written Makefile.
parent
389508e3
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
96 additions
and
0 deletions
+96
-0
README
README
+18
-0
Makefile
make/Makefile
+78
-0
No files found.
README
View file @
3e1e473c
...
...
@@ -208,6 +208,24 @@ in the "Variables to be set in the environment:" list, where you replace
when
you
run
your
executable
,
it
will
load
the
framework
and
your
test
will
run
as
expected
.
###
Using
GNU
Make
###
The
make
/
directory
contains
a
Makefile
that
you
can
use
to
build
Google
Test
on
systems
where
GNU
make
is
available
(
e
.
g
.
Linux
,
Mac
OS
X
,
and
Cygwin
).
It
doesn
't try to build Google Test'
s
own
tests
.
Instead
,
it
just
builds
the
Google
Test
library
and
a
sample
test
.
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
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
it
.
###
Using
Your
Own
Build
System
###
If
none
of
the
build
solutions
we
provide
works
for
you
,
or
if
you
prefer
your
own
build
system
,
you
just
need
to
compile
...
...
make/Makefile
0 → 100644
View file @
3e1e473c
# A sample Makefile for building Google Test and using it in user
# tests. Please tweak it to suit your environment and project. You
# may want to move it to your project's root directory.
#
# SYNOPSIS:
#
# make [all] - makes everything.
# make TARGET - makes the given target.
# make clean - removes all files generated by make.
# Please tweak the following variable definitions as needed by your
# project, except GTEST_HEADERS, which you can use in your own targets
# but shouldn't modify.
# Points to the root of Google Test, relative to where this file is.
# Remember to tweak this if you move this file.
GTEST_DIR
=
..
# Where to find user code.
USER_DIR
=
../samples
# Flags passed to the preprocessor.
CPPFLAGS
+=
-I
$(GTEST_DIR)
-I
$(GTEST_DIR)
/include
# Flags passed to the C++ compiler.
CXXFLAGS
+=
-g
# All tests produced by this Makefile. Remember to add new tests you
# created to the list.
TESTS
=
sample1_unittest
# All Google Test headers. Usually you shouldn't change this
# definition.
GTEST_HEADERS
=
$(GTEST_DIR)
/include/gtest/
*
.h
\
$(GTEST_DIR)
/include/gtest/internal/
*
.h
# House-keeping build targets.
all
:
$(TESTS)
clean
:
rm
-f
$(TESTS)
gtest.a gtest_main.a
*
.o
# Builds gtest.a and gtest_main.a.
# Usually you shouldn't tweak such internal variables, indicated by a
# trailing _.
GTEST_SRCS_
=
$(GTEST_DIR)
/src/
*
.cc
$(GTEST_DIR)
/src/
*
.h
$(GTEST_HEADERS)
# For simplicity and to avoid depending on Google Test's
# implementation details, the dependencies specified below are
# conservative and not optimized. This is fine as Google Test
# compiles fast and for ordinary users its source rarely changes.
gtest-all.o
:
$(GTEST_SRCS_)
$(CXX)
$(CPPFLAGS)
$(CXXFLAGS)
-c
$(GTEST_DIR)
/src/gtest-all.cc
gtest_main.o
:
$(GTEST_SRCS_)
$(CXX)
$(CPPFLAGS)
$(CXXFLAGS)
-c
$(GTEST_DIR)
/src/gtest_main.cc
gtest.a
:
gtest-all.o
$(AR)
$(ARFLAGS)
$@
$^
gtest_main.a
:
gtest-all.o gtest_main.o
$(AR)
$(ARFLAGS)
$@
$^
# Builds a sample test. A test should link with either gtest.a or
# gtest_main.a, depending on whether it defines its own main()
# function.
sample1.o
:
$(USER_DIR)/sample1.cc $(USER_DIR)/sample1.h $(GTEST_HEADERS)
$(CXX)
$(CPPFLAGS)
$(CXXFLAGS)
-c
$(USER_DIR)
/sample1.cc
sample1_unittest.o
:
$(USER_DIR)/sample1_unittest.cc
\
$(USER_DIR)/sample1.h $(GTEST_HEADERS)
$(CXX)
$(CPPFLAGS)
$(CXXFLAGS)
-c
$(USER_DIR)
/sample1_unittest.cc
sample1_unittest
:
sample1.o sample1_unittest.o gtest_main.a
$(CXX)
$(CPPFLAGS)
$(CXXFLAGS)
$^
-o
$@
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment