summaryrefslogtreecommitdiffstats
path: root/Source/bindexplib.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Format include directive blocks and ordering with clang-formatBrad King2016-04-291-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sort include directives within each block (separated by a blank line) in lexicographic order (except to prioritize `sys/types.h` first). First run `clang-format` with the config file: --- SortIncludes: false ... Commit the result temporarily. Then run `clang-format` again with: --- SortIncludes: true IncludeCategories: - Regex: 'sys/types.h' Priority: -1 ... Commit the result temporarily. Start a new branch and cherry-pick the second commit. Manually resolve conflicts to preserve indentation of re-ordered includes. This cleans up the include ordering without changing any other style. Use the following command to run `clang-format`: $ git ls-files -z -- \ '*.c' '*.cc' '*.cpp' '*.cxx' '*.h' '*.hh' '*.hpp' '*.hxx' | egrep -z -v '(Lexer|Parser|ParserHelper)\.' | egrep -z -v '^Source/cm_sha2' | egrep -z -v '^Source/(kwsys|CursesDialog/form)/' | egrep -z -v '^Utilities/(KW|cm).*/' | egrep -z -v '^Tests/Module/GenerateExportHeader' | egrep -z -v '^Tests/RunCMake/CommandLine/cmake_depends/test_UTF-16LE.h' | xargs -0 clang-format -i This selects source files that do not come from a third-party. Inspired-by: Daniel Pfeifer <daniel@pfeifer-mail.de>
* Fix auto export symbols for Dlls containing /bigobj for 64bit builds.Bill Hoffman2015-11-191-1/+1
| | | | | | | This fixes a bug where 64 bit builds with /bigobj incorrectly determined that the object files were not 64 bit. This manifested itself with printf type functions showing up as undefined because the leading underscore was being removed and should not be removed.
* De-duplicate symbols listed in generated module definition filesBill Hoffman2015-11-181-20/+41
| | | | | | | 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.
* Windows: Fix 64-bit DLL module definition file generation on VS 2015Bill Hoffman2015-09-141-4/+15
| | | | | | | | With 64-bit Windows builds, there is no need to remove the leading underscore from all the symbols. This is because it does not have one in the .obj file unless it is really in the name. This did not cause any trouble until VS 2015 which has some system functions that have a leading underscore that end up in the .def file.
* bindexplib: Add support for "/bigobj" format objectsBill Hoffman2015-07-061-118/+176
|
* bindexplib: Fix treatment of some symbolsBill Hoffman2015-07-061-3/+16
|
* bindexplib: Teach DumpFile to return errorsBill Hoffman2015-07-061-7/+10
| | | | This will allow callers to know if it worked.
* bindexplib: Build source as part of CMakeLibBill Hoffman2015-07-061-4/+7
|
* bindexplib: Wrap long linesBill Hoffman2015-07-061-11/+22
|
* bindexplib: Drop code that CMake does not needBill Hoffman2015-07-061-425/+8
|
* bindexplib: Add copyright/license notice blockBill Hoffman2015-07-061-0/+18
|
* bindexplib: Import original implementation from CERNBill Hoffman2015-07-061-0/+739
Download the original implementation provided by root.cern.ch with the following session: $ wget https://raw.githubusercontent.com/gordonwatts/root-vc-port/f0ee59af/build/win/bindexplib/bindexplib.cxx $ sha1sum bindexplib.cxx fa6efafb2c58a0644bd0f6a56fe02ee0d55c7fcd bindexplib.cxx $ sed -i 's/ *$//;s/'$'\t''/ /' bindexplib.cxx