summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorzhanyong.wan <zhanyong.wan@861a406c-534a-0410-8894-cb66d6ee9925>2010-03-05 21:41:43 (GMT)
committerzhanyong.wan <zhanyong.wan@861a406c-534a-0410-8894-cb66d6ee9925>2010-03-05 21:41:43 (GMT)
commitf3feb338efcc84fb0ba740543d8c061f8541cf6b (patch)
treed84f989f4082f7d7f721f192913cebe94e4bfba7
parent1ec9268dfd09dbefa24f4a049f04b79ebdac1905 (diff)
downloadgoogletest-f3feb338efcc84fb0ba740543d8c061f8541cf6b.zip
googletest-f3feb338efcc84fb0ba740543d8c061f8541cf6b.tar.gz
googletest-f3feb338efcc84fb0ba740543d8c061f8541cf6b.tar.bz2
Removes the old DLL solution.
-rw-r--r--Makefile.am5
-rw-r--r--msvc/gtest.def122
-rwxr-xr-xscripts/generate_gtest_def.py169
3 files changed, 2 insertions, 294 deletions
diff --git a/Makefile.am b/Makefile.am
index 72bb71c..015269c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -13,7 +13,6 @@ EXTRA_DIST = \
make/Makefile \
scripts/fuse_gtest_files.py \
scripts/gen_gtest_pred_impl.py \
- scripts/generate_gtest_def.py \
scripts/test/Makefile
# gtest source files that we don't compile directly.
@@ -122,8 +121,7 @@ EXTRA_DIST += \
msvc/gtest_prod_test-md.vcproj \
msvc/gtest_prod_test.vcproj \
msvc/gtest_unittest-md.vcproj \
- msvc/gtest_unittest.vcproj \
- msvc/gtest.def
+ msvc/gtest_unittest.vcproj
# xcode project files
EXTRA_DIST += \
@@ -141,6 +139,7 @@ EXTRA_DIST += \
# xcode sample files
EXTRA_DIST += \
xcode/Samples/FrameworkSample/Info.plist \
+ xcode/Samples/FrameworkSample/runtests.sh \
xcode/Samples/FrameworkSample/widget_test.cc \
xcode/Samples/FrameworkSample/widget.cc \
xcode/Samples/FrameworkSample/widget.h \
diff --git a/msvc/gtest.def b/msvc/gtest.def
deleted file mode 100644
index 5938713..0000000
--- a/msvc/gtest.def
+++ /dev/null
@@ -1,122 +0,0 @@
-; This file is auto-generated. DO NOT EDIT DIRECTLY.
-; For more information, see scripts/generate_gtest_def.py.
-
-LIBRARY
-
-EXPORTS
- ??0AssertHelper@internal@testing@@QAE@W4Type@TestPartResult@2@PBDH1@Z
- ??0AssertionResult@testing@@QAE@ABV01@@Z
- ??0ExitedWithCode@testing@@QAE@H@Z
- ??0GTestLog@internal@testing@@QAE@W4GTestLogSeverity@12@PBDH@Z
- ??0HasNewFatalFailureHelper@internal@testing@@QAE@XZ
- ??0ScopedFakeTestPartResultReporter@testing@@QAE@W4InterceptMode@01@PAVTestPartResultArray@1@@Z
- ??0ScopedTrace@internal@testing@@QAE@PBDHABVMessage@2@@Z
- ??0SingleFailureChecker@internal@testing@@QAE@PBVTestPartResultArray@2@W4Type@TestPartResult@2@PBD@Z
- ??0Test@testing@@IAE@XZ
- ??1AssertHelper@internal@testing@@QAE@XZ
- ??1GTestLog@internal@testing@@QAE@XZ
- ??1HasNewFatalFailureHelper@internal@testing@@UAE@XZ
- ??1RE@internal@testing@@QAE@XZ
- ??1ScopedFakeTestPartResultReporter@testing@@UAE@XZ
- ??1ScopedTrace@internal@testing@@QAE@XZ
- ??1SingleFailureChecker@internal@testing@@QAE@XZ
- ??1Test@testing@@UAE@XZ
- ??4AssertHelper@internal@testing@@QBEXABVMessage@2@@Z
- ??6Message@testing@@QAEAAV01@ABV?$basic_string@_WU?$char_traits@_W@std@@V?$allocator@_W@2@@std@@@Z
- ??7AssertionResult@testing@@QBE?AV01@XZ
- ??RExitedWithCode@testing@@QBE_NH@Z
- ?AddEnvironment@UnitTest@testing@@AAEPAVEnvironment@2@PAV32@@Z
- ?AlwaysTrue@internal@testing@@YA_NXZ
- ?Append@TestEventListeners@testing@@QAEXPAVTestEventListener@2@@Z
- ?AssertionFailure@testing@@YA?AVAssertionResult@1@ABVMessage@1@@Z
- ?AssertionFailure@testing@@YA?AVAssertionResult@1@XZ
- ?AssertionSuccess@testing@@YA?AVAssertionResult@1@XZ
- ?CmpHelperSTRCASEEQ@internal@testing@@YA?AVAssertionResult@2@PBD000@Z
- ?CmpHelperSTRCASENE@internal@testing@@YA?AVAssertionResult@2@PBD000@Z
- ?CmpHelperSTREQ@internal@testing@@YA?AVAssertionResult@2@PBD000@Z
- ?CmpHelperSTREQ@internal@testing@@YA?AVAssertionResult@2@PBD0PB_W1@Z
- ?CmpHelperSTRNE@internal@testing@@YA?AVAssertionResult@2@PBD000@Z
- ?CmpHelperSTRNE@internal@testing@@YA?AVAssertionResult@2@PBD0PB_W1@Z
- ?Compare@String@internal@testing@@QBEHABV123@@Z
- ?Create@DeathTest@internal@testing@@SA_NPBDPBVRE@23@0HPAPAV123@@Z
- ?DoubleLE@testing@@YA?AVAssertionResult@1@PBD0NN@Z
- ?DoubleNearPredFormat@internal@testing@@YA?AVAssertionResult@2@PBD00NNN@Z
- ?EqFailure@internal@testing@@YA?AVAssertionResult@2@PBD0ABVString@12@1_N@Z
- ?ExitedUnsuccessfully@internal@testing@@YA_NH@Z
- ?FLAGS_gtest_also_run_disabled_tests@testing@@3_NA
- ?FLAGS_gtest_break_on_failure@testing@@3_NA
- ?FLAGS_gtest_catch_exceptions@testing@@3_NA
- ?FLAGS_gtest_color@testing@@3VString@internal@1@A
- ?FLAGS_gtest_filter@testing@@3VString@internal@1@A
- ?FLAGS_gtest_output@testing@@3VString@internal@1@A
- ?FLAGS_gtest_print_time@testing@@3_NA
- ?FLAGS_gtest_random_seed@testing@@3HA
- ?FLAGS_gtest_repeat@testing@@3HA
- ?FLAGS_gtest_shuffle@testing@@3_NA
- ?FLAGS_gtest_stack_trace_depth@testing@@3HA
- ?FLAGS_gtest_throw_on_failure@testing@@3_NA
- ?Failed@TestResult@testing@@QBE_NXZ
- ?Failed@UnitTest@testing@@QBE_NXZ
- ?FloatLE@testing@@YA?AVAssertionResult@1@PBD0MM@Z
- ?Format@String@internal@testing@@SA?AV123@PBDZZ
- ?FormatForFailureMessage@internal@testing@@YA?AVString@12@D@Z
- ?GetBoolAssertionFailureMessage@internal@testing@@YA?AVString@12@ABVAssertionResult@2@PBD11@Z
- ?GetInstance@UnitTest@testing@@SAPAV12@XZ
- ?GetTestCase@UnitTest@testing@@QBEPBVTestCase@2@H@Z
- ?GetTestInfo@TestCase@testing@@QBEPBVTestInfo@2@H@Z
- ?GetTestPartResult@TestResult@testing@@QBEABVTestPartResult@2@H@Z
- ?GetTestProperty@TestResult@testing@@QBEABVTestProperty@2@H@Z
- ?GetTestTypeId@internal@testing@@YAPBXXZ
- ?HasFatalFailure@Test@testing@@SA_NXZ
- ?HasFatalFailure@TestResult@testing@@QBE_NXZ
- ?HasNonfatalFailure@Test@testing@@SA_NXZ
- ?HasNonfatalFailure@TestResult@testing@@QBE_NXZ
- ?Init@RE@internal@testing@@AAEXPBD@Z
- ?InitGoogleTest@testing@@YAXPAHPAPAD@Z
- ?InitGoogleTest@testing@@YAXPAHPAPA_W@Z
- ?IsHRESULTFailure@internal@testing@@YA?AVAssertionResult@2@PBDJ@Z
- ?IsHRESULTSuccess@internal@testing@@YA?AVAssertionResult@2@PBDJ@Z
- ?IsTrue@internal@testing@@YA_N_N@Z
- ?LastMessage@DeathTest@internal@testing@@SAPBDXZ
- ?MakeAndRegisterTestInfo@internal@testing@@YAPAVTestInfo@2@PBD000PBXP6AXXZ2PAVTestFactoryBase@12@@Z
- ?Passed@UnitTest@testing@@QBE_NXZ
- ?RecordProperty@Test@testing@@SAXPBD0@Z
- ?Release@TestEventListeners@testing@@QAEPAVTestEventListener@2@PAV32@@Z
- ?ReportInvalidTestCaseType@internal@testing@@YAXPBD0H@Z
- ?Run@UnitTest@testing@@QAEHXZ
- ?SetUp@Test@testing@@MAEXXZ
- ?ShowCStringQuoted@String@internal@testing@@SA?AV123@PBD@Z
- ?ShowWideCStringQuoted@String@internal@testing@@SA?AV123@PB_W@Z
- ?StrStreamToString@internal@testing@@YA?AVString@12@PAV?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z
- ?TearDown@Test@testing@@MAEXXZ
- ?VerifyRegisteredTestNames@TypedTestCasePState@internal@testing@@QAEPBDPBDH0@Z
- ?comment@TestInfo@testing@@QBEPBDXZ
- ?current_test_case@UnitTest@testing@@QBEPBVTestCase@2@XZ
- ?current_test_info@UnitTest@testing@@QBEPBVTestInfo@2@XZ
- ?disabled_test_count@TestCase@testing@@QBEHXZ
- ?disabled_test_count@UnitTest@testing@@QBEHXZ
- ?elapsed_time@UnitTest@testing@@QBE_JXZ
- ?failed_test_case_count@UnitTest@testing@@QBEHXZ
- ?failed_test_count@TestCase@testing@@QBEHXZ
- ?failed_test_count@UnitTest@testing@@QBEHXZ
- ?g_linked_ptr_mutex@internal@testing@@3VMutex@12@A
- ?listeners@UnitTest@testing@@QAEAAVTestEventListeners@2@XZ
- ?name@TestInfo@testing@@QBEPBDXZ
- ?original_working_dir@UnitTest@testing@@QBEPBDXZ
- ?parameterized_test_registry@UnitTest@testing@@QAEAAVParameterizedTestCaseRegistry@internal@2@XZ
- ?random_seed@UnitTest@testing@@QBEHXZ
- ?result@TestInfo@testing@@QBEPBVTestResult@2@XZ
- ?should_run@TestInfo@testing@@QBE_NXZ
- ?successful_test_case_count@UnitTest@testing@@QBEHXZ
- ?successful_test_count@TestCase@testing@@QBEHXZ
- ?successful_test_count@UnitTest@testing@@QBEHXZ
- ?test_case_comment@TestInfo@testing@@QBEPBDXZ
- ?test_case_name@TestInfo@testing@@QBEPBDXZ
- ?test_case_to_run_count@UnitTest@testing@@QBEHXZ
- ?test_property_count@TestResult@testing@@QBEHXZ
- ?test_to_run_count@TestCase@testing@@QBEHXZ
- ?test_to_run_count@UnitTest@testing@@QBEHXZ
- ?total_part_count@TestResult@testing@@QBEHXZ
- ?total_test_case_count@UnitTest@testing@@QBEHXZ
- ?total_test_count@TestCase@testing@@QBEHXZ
- ?total_test_count@UnitTest@testing@@QBEHXZ
diff --git a/scripts/generate_gtest_def.py b/scripts/generate_gtest_def.py
deleted file mode 100755
index 048ef59..0000000
--- a/scripts/generate_gtest_def.py
+++ /dev/null
@@ -1,169 +0,0 @@
-#!/usr/bin/env python
-#
-# Copyright 2009 Google Inc. All Rights Reserved.
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions are
-# met:
-#
-# * Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# * Redistributions in binary form must reproduce the above
-# copyright notice, this list of conditions and the following disclaimer
-# in the documentation and/or other materials provided with the
-# distribution.
-# * Neither the name of Google Inc. nor the names of its
-# contributors may be used to endorse or promote products derived from
-# this software without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-"""Generates the gtest.def file to build Google Test as a DLL on Windows.
-
-SYNOPSIS
- Put diagnostic messages from building gtest_dll_test_.exe into
- BUILD_RESULTS_FILE and invoke
-
- generate_gtest_def.py <BUILD_RESULTS_FILE
-
- Reads output of VC++ linker and re-generates the src/gtest.def file
- required for building gtest as a DLL.
-
- Use this script if you modify Google Test's source code and Visual
- Studio linker starts complaining about unresolved external symbols.
- You may have to repeate the build/re-generate cycle several times
- because VC++ limits the number of unresolved external symbols it can
- report at a time.
-
-EXAMPLES
- scons\scons.py | scripts\generate_gtest_def.py
-
-This tool is experimental. Please report any problems to
-googletestframework@googlegroups.com. You can read
-http://code.google.com/p/googletest/wiki/GoogleTestAdvancedGuide for more
-information.
-"""
-
-__author__ = 'vladl@google.com (Vlad Losev)'
-
-import os
-import re
-import sets
-import sys
-
-# We assume that this file is in the scripts/ directory in the Google
-# Test root directory.
-GTEST_DEF_PATH = os.path.join(os.path.dirname(__file__), '../msvc/gtest.def')
-
-# Locates the header of the EXPORTS section.
-EXPORTS_SECTION_REGEX = re.compile(r'^EXPORTS\s*$', re.IGNORECASE)
-
-# Determines if a line looks like an export definition in the EXPORTS
-# section of a module definition file.
-EXPORT_REGEX = re.compile(r'^\s+(\S+)')
-
-# Determines if a given line contains an error message about unresolved
-# linker symbol.
-IS_UNRESOLVED_SYMBOL_REGEX = re.compile(r'\bunresolved external symbol\b')
-
-# Fetches the symbol name from a line that contains an unresolved linker
-# symbol message.
-UNRESOLVED_SYMBOL_REGEX = re.compile(r'^.*?"[^"]+" \((\S+)\)')
-
-
-def ReadDefExports(stream):
- """Reads contents of a def file and returns a list of exported symbols."""
-
- is_export = False
- exports = sets.Set()
- for line in stream:
- if EXPORTS_SECTION_REGEX.match(line):
- is_export = True
- elif EXPORT_REGEX.match(line):
- if is_export:
- exports.add(EXPORT_REGEX.match(line).group(1))
- else:
- is_export = False
-
- return exports
-
-
-def ReadUnresolvedExternals(stream):
- """Reads linker output and returns list of unresolved linker symbols."""
-
- unresolved = sets.Set()
-
- for line in stream:
- if IS_UNRESOLVED_SYMBOL_REGEX.search(line):
- unresolved.add(UNRESOLVED_SYMBOL_REGEX.match(line).group(1))
-
- return unresolved
-
-
-def AdjustExports(exports, unresolved):
- """Adjusts exports list based on the list of unresolved symbols."""
-
- if unresolved & exports:
- # There are symbols that are listed as exported but are also reported
- # unresolved. This is most likely because they have been removed from
- # Google Test but their mentions in gtest.def constitute references. We
- # need to remove such symbols from the EXPORTS section. Also, their
- # presence means that the Google Test DLL has failed to link and
- # consequently linking of the test .exe was not attempted, meaning that
- # at this time, there will be no unresolved externals that need to be
- # added to the exports list.
- exports -= unresolved
- else:
- # Finding unresolved exports means that the Google Test DLL had link
- # errors and the build script did not build gtest_dll_test_.exe. The user
- # has to build the test once again and run this script on the diagnostic
- # output of the build.
- exports |= unresolved
-
- return exports
-
-
-def WriteGtestDefFile(stream, exports):
- """Writes contents of gtest.def given a list of exported symbols."""
-
- stream.write('; This file is auto-generated. DO NOT EDIT DIRECTLY.\n'
- '; For more information, see scripts/generate_gtest_def.py.\n'
- '\nLIBRARY\n'
- '\nEXPORTS\n')
- for symbol in sorted(exports):
- stream.write(' %s\n' % symbol)
-
-
-def main():
- unresolved = ReadUnresolvedExternals(sys.stdin)
- if unresolved:
- try:
- gtest_def = open(GTEST_DEF_PATH, 'r')
- exports = ReadDefExports(gtest_def)
- gtest_def.close()
- except IOError:
- exports = sets.Set()
-
- exports = AdjustExports(exports, unresolved)
- WriteGtestDefFile(open(GTEST_DEF_PATH, 'w'), exports)
- sys.stderr.write('Updated gtest.def. Please clean the .dll file\n'
- 'produced by your Google Test DLL build, run the build\n'
- 'again and pass its diagnostic output to this script\n'
- 'unless the build succeeds.\n')
- else:
- sys.stderr.write('The build diagnostic output indicates no unresolved\n'
- 'externals. gtest.def is likely up to date and\n'
- 'has not been updated.\n')
-
-if __name__ == '__main__':
- main()