| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
Set target property RUNTIME_OUTPUT_DIRECTORY explicitly on ProcessFwd9x
and EncodeExecutable so that we know exactly where the executables will
exist on disk.
|
|
|
|
| |
Remove code left for supporting earlier CMake versions.
|
|
|
|
|
| |
Do not set KWSYS_INSTALL_LIBRARY_RULE just because the parent project set
KWSYS_INSTALL_EXPORT_NAME. Require KWSYS_INSTALL_LIB_DIR to be set too.
|
|
|
|
|
| |
A parent project may now set KWSYS_INSTALL_EXPORT_NAME to specify the
EXPORT name for install(TARGETS) commands.
|
|
|
|
|
|
| |
Add option KWSYS_TEST_BOGUS_FAILURES that can be set by a containing
project or in the CMake cache to list tests known to fail consistently
on a buggy system.
|
|
|
|
|
|
| |
If any of the KWSys Process tests take more than a minute or two then
something is wrong. There is no need to wait for a long default
timeout.
|
|
|
|
|
|
| |
Since commit "Provide unix-sytle command line parsing" (2009-07-13) the
reference to KWSYS_C_HAS_PTRDIFF_T in System.c has been meaningless
because the macro was never passed to the compiler!
|
|
|
|
|
| |
Define KWSYS_DO_NOT_CLEAN_PUTENV only for the implementation. It does
not need to be configured in the interface of "Configure.hxx".
|
|
|
|
|
|
|
|
| |
The DynamicLoader::LibPrefix and DynamicLoader::LibExtension methods
previously hard-coded the module name components for each platform. Set
them from the CMAKE_SHARED_MODULE_PREFIX and CMAKE_SHARED_MODULE_SUFFIX
CMake variables instead. This ensures consistency in a program that
uses these methods to construct the file names for its own modules.
|
|
|
|
|
|
|
|
|
|
| |
The TestSharedForward executable and TestDynload module do not actually
link to a KWSys library, but it is nice to build them after the
libraries just like all other test binaries.
This also works around a universal binary bug in Xcode 2.x. It forgets
to create the output directory for the executable before linking it. We
avoid the problem by putting the library in the directory first.
|
|
|
|
|
|
| |
KWSys should not set variables outside its namespace. It can honor the
EXECUTABLE_OUTPUT_PATH set by a host project, but tere is no need for it
to set a default in the host project cache.
|
|
|
|
|
| |
Under -O3 optimization this compiler breaks our testProcess.c source file.
We force -O0 for the file to avoid the problem.
|
|
|
|
|
|
| |
The commit "Enable loose loop constructs in KWSys" set the minimum
required CMake version to 2.4.5. This regressed the setting of CMP0003,
so we restore it in this commit.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The FundamentalType header needs to know type sizes at preprocessing
time. This commit teaches it to avoid using CHECK_TYPE_SIZE because the
macro does not work for types whose size varies across architectuers in
Mac OS X universal binaries. Fortunately the Mac compilers provide just
enough information to detect the needed type sizes during preprocessing.
We now use preprocessor macros instead of configuration tests whenever
they are available. As a side effect this reduces the number of
try-compiles needed with GCC.
See issue #9913.
|
|
|
|
|
|
|
| |
In KWSys IOStream we need to detect whether 'long long' exists but we do
not need its size. We avoid using CHECK_TYPE_SIZE because it does not
work for types whose size varies across architectuers in Mac OS X
universal binaries. See issue #9913.
|
|
|
|
|
| |
We set CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS in KWSys's CMakeLists.txt file
to enable simpler endif() syntax for CMake 2.4.
|
|
|
|
|
|
|
| |
This converts the KWSys license to a pure 3-clause OSI-approved BSD
License. We drop the previous license clause requiring modified
versions to be plainly marked. We also update the KWSys copyright to
cover the full development time range.
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds KWSys configuration option KWSYS_INSTALL_DOC_DIR to
specify the directory for installation of documentation. We use it to
put the KWSys Copyright.txt file at the location
${KWSYS_INSTALL_DOC_DIR}/${KWSYS_NAMESPACE}/Copyright.txt
in the project installation tree. This helps containing projects meet
the license requirement to distribute the copyright and license with
binary forms.
|
| |
|
|
|
|
|
|
|
|
| |
The 'binary' openmode does not exist on all compilers. We define macro
<kwsys>_ios_binary, where <kwsys> is the KWSys namespace, to refer to
std::ios::binary if it exists and 0 otherwise. Sample usage:
kwsys_ios::ifstream fin(fn, kwsys_ios::ios::in | kwsys_ios_binary);
|
|
|
|
|
|
|
|
|
|
|
| |
Some AIX/gcc version combinations the <cstdio> header breaks when large
file support is enabled. See this GCC issue for details:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20366
We work around the problem by enhancing the configuration check for
large file support to include <cstdio> when available. This will cause
LFS to be disabled when the above problem occurs.
|
|
|
|
|
|
|
|
| |
The Compaq compiler (on VMS) includes 'String.c' in source files that
use the stl string while looking for template definitions. This was the
true cause of double-inclusion of the 'kwsysPrivate.h' header. We work
around the problem by conditionally compiling the entire source file on
a condition only true when really building the source.
|
|
|
|
|
| |
This provides an API for parent projects to use to specify values to be
set in the LABELS properties of KWSys libraries, executables, and tests.
|
|
|
|
|
| |
This adds the configured KWSys header files to the library targets that
implement their APIs so that they show up in IDE project files.
|
|
|
|
|
| |
The SystemInformation component of KWSys requires Process and
FundamentalType.
|
|
|
|
|
|
| |
KWSys component dependencies must be enforced before any tests for
enabled components are done. This moves the dependency enforcement code
to be as early as possible.
|
|
|
|
|
| |
This tests the basic capability of running another executable from the
build tree.
|
|
|
|
|
|
|
| |
- Tells CMake about the KWSYS_HEADER macro.
- Enables implicit dependencies of private source files.
- When a CMake new enough to support the property is required
the "#if 0" hack can be removed from the source files.
|
|
|
|
| |
the upcoming CMake 2.6 release.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
preprocessor access to a dated version. The 'datestamp' will be updated automatically every day by a script.
|
| |
|
|
|
|
| |
tested from KWStyle with vs8 to make sure the warnings are really gone. Remove the deprecation defs from CMakeLists and guard the defs in the header so we do not redefine them if they are already defined.
|
| |
|
| |
|
| |
|
|
|
|
| |
testAutoPtr.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
install rules.
|