diff options
author | Bill Hoffman <bill.hoffman@kitware.com> | 2015-11-16 20:31:10 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-11-18 15:02:48 (GMT) |
commit | 1c1ace2db012919f23b6de5400ab192b9277dfc6 (patch) | |
tree | b501ccdff182a3c16ef419cf27d8da66993a87dd /Source/bindexplib.h | |
parent | 30b0db7bb5482258ccdb96d2f0b7aadb5d3b23ac (diff) | |
download | CMake-1c1ace2db012919f23b6de5400ab192b9277dfc6.zip CMake-1c1ace2db012919f23b6de5400ab192b9277dfc6.tar.gz CMake-1c1ace2db012919f23b6de5400ab192b9277dfc6.tar.bz2 |
De-duplicate symbols listed in generated module definition files
MS tools have a limit on the number of symbols that can be listed
in a `.def` file. If multiple `.obj` files provide a symbol then
avoid listing it more than once in the generated `.def` file to
avoid counting toward the limit.
Diffstat (limited to 'Source/bindexplib.h')
-rw-r--r-- | Source/bindexplib.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/Source/bindexplib.h b/Source/bindexplib.h new file mode 100644 index 0000000..8661a4a --- /dev/null +++ b/Source/bindexplib.h @@ -0,0 +1,29 @@ +/*============================================================================ + CMake - Cross Platform Makefile Generator + Copyright 2000-2009 Kitware, Inc., Insight Software Consortium + + Distributed under the OSI-approved BSD License (the "License"); + see accompanying file Copyright.txt for details. + + This software is distributed WITHOUT ANY WARRANTY; without even the + implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + See the License for more information. +============================================================================*/ + +#ifndef bindexplib_h +#define bindexplib_h + +#include "cmStandardIncludes.h" + + +class bindexplib +{ +public: + bindexplib() {} + bool AddObjectFile(const char* filename); + void WriteFile(FILE* file); +private: + std::set<std::string> Symbols; + std::set<std::string> DataSymbols; +}; +#endif |