summaryrefslogtreecommitdiffstats
path: root/Tests/Plugin
Commit message (Collapse)AuthorAgeFilesLines
* HP-UX: Drop support for building CMake on HP-UXBrad King2017-08-071-7/+0
| | | | | | | | CMake will soon require both C++11 and libuv to build. Neither of these works on HP-UX, so unfortunately we need to drop support for the platform until someone can get them working. Issue: #17137
* Tests: Compile entire Plugin test with the same language standardBrad King2017-05-261-3/+3
| | | | | | Set `CMAKE_CXX_STANDARD` early so that both KWSys and our test code build with the same language standard. This is important on compilers that have incompatible standard libraries.
* Use string(APPEND) in TestsDaniel Pfeifer2016-07-271-1/+1
| | | | | | | Automate with: find Tests -type f -print0 | xargs -0 perl -i -0pe \ 's/set\(([a-zA-Z0-9_]+)(\s+)"\$\{\1\}([^"])/string(APPEND \1\2"\3/g'
* Tests: Restore fix to Plugin test on Watcom compilerBrad King2016-06-091-1/+3
| | | | | | The fix in commit v3.4.0-rc1~127^2 (Tests: Fix Plugin test on Watcom compiler, 2015-09-03) was reverted accidentally by automated .c_str() removal. Restore it and add a comment explaining why.
* Remove c_str() calls from stream arguments.Daniel Pfeifer2016-06-061-2/+1
| | | | | | Mostly automated: git grep -l '.c_str() <<' | xargs sed -i 's|\.c_str() <<| <<|g'
* Revise C++ coding style using clang-formatKitware Robot2016-05-163-32/+26
| | | | | | | | | | | | | Run the `Utilities/Scripts/clang-format.bash` script to update all our C++ code to a new style defined by `.clang-format`. Use `clang-format` version 3.8. * If you reached this commit for a line in `git blame`, re-run the blame operation starting at the parent of this commit to see older history for the content. * See the parent commit for instructions to rebase a change across this style transition commit.
* Tests: Fix Plugin test include orderBrad King2016-05-031-1/+2
| | | | | | | | Fix the order accidentally broken by commit e1c77472 (Format include directive blocks and ordering with clang-format, 2016-04-29). Include the KWSys header first in its own block so that it is not moved by tools that re-order includes. It must be included first to define large file support macros consistently.
* Format include directive blocks and ordering with clang-formatBrad King2016-04-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Tests: fix Plugin building on Clang/C2Mariusz Pluciński2016-03-101-0/+7
|
* Tests: Fix Plugin test on Watcom compilerBrad King2015-09-031-1/+1
| | | | | | The Watcom compiler does not have stream operators for std::string. Since KWSys no longer provides the operators for us, just use c_str() to avoid the problem and allow the test to compile on Watcom.
* Merge topic 'modules-no-soname'Brad King2015-09-021-1/+1
|\ | | | | | | | | 21d99aa3 Tests: Use a less strict regular expression to look for "SONAME"
| * Tests: Use a less strict regular expression to look for "SONAME"Raphael Kubo da Costa2015-09-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 899458ab (Tests: Cover NO_SONAME property for SHARED libraries, 2015-08-20) introduced a few new ExportImport tests, and the check_lib_{no}soname.cmake scripts that parse readelf(1)'s output. Make the regular expression matching the SONAME line output by readelf less strict, as the output format varies across implementations: GNU binutils' readelf is the only one to write each ELF header within parentheses (which the previous regular expression expected). The new tests were thus failing when either Fedora's elfutils (eu-readelf) or elftoolchain's readelf (present on recent FreeBSD versions) were being used, as they both list the headers without parentheses. The same issue also affected Tests/Plugin's check_mod_soname.cmake, so fix that one as well -- the only reason the test was not failing is that it tested that the regular expression did not match, which was always the case with a non-binutils readelf.
* | Tests: Remove use of include <kwsys/{ios,stl}> and kwsys_{ios,stl}::Brad King2015-08-311-10/+10
|/ | | | We no longer need this compatibility layer for the compilers we support.
* Do not set SONAME for MODULE library targets (#15705)Felix Geyer2015-08-203-31/+12
| | | | | The SONAME field is only useful for shared libraries that application link against.
* HP aCC: record compiler flag for Ansi C++98 support for version 3.80 onwardsRolf Eike Beer2014-04-251-0/+10
| | | | | | Old versions of aCC need a special compiler flag to get full C++98 template support as e.g. CMake itself or the Complex and ComplexOneConfig tests need. The same versions need a special flag to get a proper C++ library, too.
* Refactor the Plugin test.Stephen Kelly2013-10-242-30/+42
| | | | | | | Policy CMP0024 was introduced to disallow the include() of a file generated by export(). Use ExternalProject to test the plugins after building.
* Convert CMake-language commands to lower caseKitware Robot2012-08-131-45/+45
| | | | | | | | | | | | | | | | | Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code: cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-1/+1
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* Test NO_SONAME property (#13155)Brad King2012-04-302-0/+58
| | | | | | | Teach the Plugin test to check that the NO_SONAME target property works as documented. Check that the IMPORTED targets are written with the correct properties. When readelf is available use it to check the actual binary files for SONAME fields.
* ENH: Remove CMAKE_ANSI_CFLAGS from testsBrad King2009-07-081-5/+0
| | | | | As of CMake 2.6 this variable is not defined, and the ANSI flags for the HP compiler are simply hard-coded in the default C flags.
* BUG: Create an exe's implib output dir for VSBrad King2009-06-151-0/+2
| | | | | | | | If an executable marks symbols with __declspec(dllexport) then VS creates an import library for it. However, it forgets to create the directory that will contain the import library if it is different from the location of the executable. We work around this VS bug by creating a pre-build event on the executable target to make the directory.
* ENH: preclean some warningsKen Martin2008-03-251-0/+1
|
* ENH: fix memory leakBill Hoffman2007-09-101-1/+2
|
* ENH: Added function call argument to module function to make sure calling ↵Brad King2007-04-192-4/+14
| | | | convention matches on lookup. Fixed for Watcom.
* COMP: Need to enable ansi C features.Brad King2007-04-181-0/+5
|
* ENH: Fixed Plugin test on Cygwin.Brad King2007-04-171-1/+1
|
* ENH: Configure location of plugin files so that the executable can run with ↵Brad King2007-04-173-1/+16
| | | | any current working directory.
* ENH: Added test for executables with plugins that use an API exported by the ↵Brad King2007-04-174-0/+128
executable itself.