Commit Graph

241 Commits

Author SHA1 Message Date
Henry Schreiner
0eb01b832c Better support for newer CMake's 2018-07-11 07:08:17 -07:00
Victor Zverovich
479ee2a8c6 Fix MSVC build, take 2 2018-07-04 14:24:07 -07:00
Victor Zverovich
6322b47e60 Minor cleanup 2018-06-06 16:51:35 +02:00
Elias Kosunen
691a7a91a1 Add more compilers to CI and increase FMT_PEDANTIC warning levels (#736)
* Add a _lot_ more warnings to FMT_PEDANTIC
Fix these warnings

* Add more compilers to CI
Fix (some) of the compiler errors with them

* Enable -Werror on CI
Increase warning level on MSVC when compiling with FMT_PEDANTIC

* Add VS 2013 and 2015 to Appveyor

* Fix Appveyor tests
Formatting

* Implement requested changes
Fix some of the MSVC warnings
Implement C++11 integer_sequence

* Reintroduce appveyor-build.py

* Remove ranges-test from tests

* Remove (some) explicit warning suppressions
Fix C++ standard setting in CI

* Remove (some) explicit warning suppressions
Fix C++ standard setting in CI

* Fix test builds with C++11

* Enable pedantic warnings on tests

* Fix warnings from edits to master

* Cleanups

* Add C++11 support to ranges.h
Re-enable ranges-test
Fix a Visual Studio error about function not returning a value in printf.h
Fix a bug in .travis.yml
2018-06-06 15:57:59 +02:00
Victor Zverovich
6ebc1a967d Merge locale.h into format-inl.h 2018-05-20 17:16:34 -07:00
sv1990
a68fd44ecc Add ranges.h to FMT_HEADERS in CMakeLists.txt (#738) 2018-05-14 06:16:30 -06:00
Victor Zverovich
3da71d51e0 Move source files to the src directory 2018-03-21 07:50:59 -07:00
Victor Zverovich
7bab90e52d Remove extra comma 2018-03-13 22:45:14 -04:00
Mario Werner
6d21fc43b9 add alias targets with fmt namespace
For the consumer it should not matter if fmt has been added to the
project as subdirectory or via find_package. With the alias targets
the library can be always imported via fmt::fmt.
2018-03-13 13:51:48 -04:00
Victor Zverovich
e02aacc634 Add CMake namespace (#511) 2018-03-13 13:03:18 -04:00
Victor Zverovich
403ae0a23b Add debug postfix for libfmt (#636) 2018-02-10 07:17:40 -08:00
Victor Zverovich
c96d64652b CMakeLists: Use GNUInstallDirs to set install location 2018-02-10 07:00:14 -08:00
Victor Zverovich
94806747df remove 'FMT_CPPFORMAT' CMake option 2018-02-02 18:42:22 -08:00
Victor Zverovich
75005bbcd5 Don't export the -std=c++11 flag from the fmt target 2018-01-27 09:18:20 -08:00
Victor Zverovich
5e4c34b25a Add version macro FMT_VERSION (#411) 2018-01-21 16:36:22 -08:00
Victor Zverovich
9a53a706fc Add support for back_insert_iterator 2018-01-14 13:12:26 -08:00
Victor Zverovich
941663d038 Merge ostream.cc into ostream.h 2017-12-17 09:33:56 -08:00
Victor Zverovich
955062da2e Merge printf.cc into printf.h 2017-12-17 08:36:19 -08:00
Victor Zverovich
94edb1a71c Add a lightweight header for the core API 2017-12-06 07:42:42 -08:00
Victor Zverovich
84bd2f1962 Merge include/fmt/CMakeLists.txt into the main CMake file 2017-12-03 09:59:55 -08:00
Victor Zverovich
170f5c671f Move headers to include/fmt 2017-10-21 07:38:49 -07:00
Victor Zverovich
d5e918b61f Detect C++14 compiler support 2017-09-28 08:57:54 -07:00
Victor Zverovich
dfa631e64a Bump version 2016-06-14 06:33:57 -07:00
Victor Zverovich
fb67a2f660 Fix building source package 2016-05-08 07:28:34 -07:00
Victor Zverovich
e5e4fb370c Update version 2016-05-07 09:50:47 -07:00
Jakub Wilk
e0ac51cbd9 Fix typos 2016-05-01 12:29:21 +02:00
Victor Zverovich
afd67497de cppformat -> fmt 2016-04-24 09:06:12 -07:00
Victor Zverovich
5e1576f79f cppformat -> fmt 2016-04-24 08:17:47 -07:00
Victor Zverovich
848ab63a2a CPPFORMAT_VERSION -> FMT_VERSION 2016-04-24 07:16:33 -07:00
vitaut
e49a4e0aff Bump version and adjust comments 2016-04-12 07:42:47 -04:00
vitaut
18c69c998d Update changelog and version 2016-04-11 19:59:22 -04:00
Mario Werner
620f999e80 ignore the current build directory when packaging
This makes sure that the current build directory is not packaged
with the regular source tree when `make package_source` is used.
2016-04-06 09:49:34 +02:00
vitaut
63d7f3d116 Don't check for C++11 features if C++11 support is disabled 2016-03-18 08:10:06 -07:00
vitaut
21b8279cfe Remove biicode because it has been shut down 2016-02-09 21:25:52 -08:00
vitaut
b8c6192a61 Simplify build config and enable C++11 by default 2016-02-09 08:43:39 -08:00
Mario Werner
6a79a3279b build and test in c++11 and in c++98 mode 2016-02-07 18:23:02 +01:00
Mario Werner
c1a4cd0fa7 check if cppformat is the master project or just used as dependency
Based on that information less intrusive option defaults are choosen.
Additionally, packaging support is omitted.
2016-02-03 11:20:19 +01:00
Mario Werner
c0e926109e use the same warning options like before the PR
Additional notes on how to improve the current state have been added.
2016-02-02 17:14:51 +01:00
Mario Werner
5aa5116edc moved the library definition and the installation into a sub CMakeLists.txt 2016-01-29 16:39:03 +01:00
Mario Werner
b52d0bd9d4 define cppformat cmake targets with proper interface definitions 2016-01-29 13:23:08 +01:00
Mario Werner
0fb474be3a outlined the compiler feature tests to improve script readability 2016-01-29 13:03:47 +01:00
Mario Werner
3019a8c1fd moved code into cppformat subdirectory
Proxy headers have been placed into the project root to emit
deprecation warnings.
2016-01-29 12:49:35 +01:00
vitaut
22f61140d1 Format CMake files, ignore generated files and don't copy header 2016-01-13 07:14:32 -08:00
Mario Werner
3fc3ecd184 reverted removal of CPACK_SOURCE_PACKAGE_FILE_NAME
The use of `CPACK_PACKAGE_NAME` leads to
`cppformat-<version>-Source.zip` as the name for the source package
which is different from the expected `cppformat-<version>.zip`.
2016-01-12 16:48:53 +01:00
Mario Werner
b732455fd3 enable package support for out of source builds 2016-01-12 12:52:05 +01:00
Mario Werner
daf74ae0b1 upgrades to cmake 2.8.12 and adds config and export support
This commit upgrades cmake to 2.8.12 to implement proper cmake
`find_package` support using config and export file generation.
Having this support enables users to use installed cppformat
with a simple `find_package` call. Directly using a version
from a build directory is also supported.

main.cpp:
```
 #include <cppformat/format.h>
int main(int argc, char** argv)
{
  for(int i = 0; i < argc; ++i)
    fmt::print("{}: {}\n",i,argv[i]);
  return 0;
}

```

CMakeLists.txt:
```
cmake_minimum_required(VERSION 2.8.12)

project(cppformat-test)

find_package(cppformat REQUIRED)

add_executable(cppformat-test "main.cpp")
target_link_libraries(cppformat-test cppformat)

```
Configuring when cppformat is installed under `CMAKE_INSTALL_PREFIX`: `cmake <PATH_TO_TEST_SRC>`

Configuring when cppformat is installed `ELSEWHERE`: `cmake -Dcppformat_DIR=<ELSEWHERE>/lib/cmake/cppformat <PATH_TO_TEST_SRC>`

Configuring when cppformat is only built: `cmake -Dcppformat_DIR=<cppformat_BUILD_DIR> <PATH_TO_TEST_SRC>`
2016-01-12 12:47:19 +01:00
vitaut
1cba0aea27 Simplify CMake config and do minor adjustments
for consistency with used coding conventions.
2015-12-10 07:24:23 -08:00
Maciej Dems
c47318afa8 Declarations for shared library in Windows.
Added __declspec(dllimport) and __declspec(dllexport) declarations
when compiled in Windows.
2015-12-10 13:36:18 +01:00
vitaut
00d56e06ef Bump version 2015-12-03 08:15:03 -08:00
vitaut
5f8af5ef1d Update version 2015-12-01 07:33:30 -08:00
vitaut
b83fd00183 Pass version from CMake to Sphinx 2015-11-23 08:10:02 -08:00
vitaut
89cd4a5e17 Set version in one place 2015-11-11 07:22:07 -08:00
Dean Moldovan
9608a98b01 Fix shared library build on OS X 2015-10-18 14:49:17 +02:00
vitaut
005379ac6f Don't include .buildinfo and .doctrees in the source package
Thanks to Dave Johansen.
2015-08-31 08:21:59 -07:00
vitaut
75fdfe3e0e Make options that control target generation more consistent 2015-08-31 06:49:06 -07:00
Alex Martin
06c1859420 add CMake option to toggle doxygen documentation 2015-08-30 14:23:54 +02:00
vitaut
b3714625c0 Fix compilation with FMT_PEDANTIC=ON 2015-08-19 08:03:17 -07:00
vitaut
d07fd577c3 FMT_SOURCE_FILES -> FMT_SOURCES 2015-08-19 07:27:34 -07:00
vitaut
4274f15f0d Move test-specific stuff to test/CMakeLists.txt 2015-08-19 07:27:08 -07:00
Alex Martin
914b97859c add CMake option to toggle tests (on by default) 2015-08-19 10:41:37 +02:00
vitaut
4150fa0f95 Fix formatting 2015-08-18 06:57:31 -07:00
Alex Martin
2161823559 add option to disable install 2015-08-17 18:48:16 +02:00
vitaut
a8d12ade1c Append compile flags instead of overwriting 2015-08-04 07:46:15 -07:00
Radu Popescu
0affb23560 fixed #190 Argument shadowing and Clang pedantic support 2015-08-04 12:52:44 +02:00
vitaut
e498ffbb3d Fix rpmlint warning about unused dependency on libm.so.6 2015-07-10 07:02:50 -07:00
vitaut
7859f81233 Don't use pthreads if they are not available 2015-06-29 07:34:30 -07:00
vitaut
958299dd7f Install format.h to '<prefix>/include/cppformat'
not to '<prefix>/include'. Thanks to Eugene V. Lyubimkin for the patch.
2015-06-23 06:49:35 -07:00
vitaut
b88a17ad9e libformat.{a.so} -> libcppformat.{a.so}
as suggested by Eugene V. Lyubimkin to make the name less generic
2015-06-23 06:40:22 -07:00
vitaut
a5757c86df FMT_EXTRA_TESTS -> FMT_PEDANTIC and use it to control extra warnings 2015-05-12 07:35:29 -07:00
vitaut
5517c8962e Use -std=gnu++11 if -std=c++11 is broken (for MinGW) 2015-05-12 07:13:12 -07:00
vitaut
684495c887 Add header files to gmock target 2015-05-12 06:53:35 -07:00
vitaut
640445fc48 FMT_CPP11_IO_H -> FMT_CPP11_UNISTD_H and enable all build configs 2015-05-11 19:48:30 -07:00
vitaut
e17b743141 Workaround a MinGW bug 2015-05-11 19:37:40 -07:00
vitaut
88f4be3d19 Merge branch 'master' of github.com:cppformat/cppformat 2015-04-18 19:16:16 -07:00
vitaut
c3ebcce89d Make library install dir configurable via FMT_LIB_DIR CMake var 2015-04-18 19:15:36 -07:00
vitaut
0963fd0a4d Workaround a bug in implementation of variadic templates in MSVC11 2015-04-12 14:33:11 -07:00
vitaut
cea64132a2 Detect tuple 2015-04-12 07:02:49 -07:00
vitaut
f6823221d3 Workaround broken tuple in MSVC11 2015-04-12 06:45:40 -07:00
vitaut
fb362ef880 Set .so version for libformat 2015-04-08 07:13:06 -07:00
vitaut
60405cf693 Use /W4 in format-test and only if FMT_EXTRA_TESTS is set
as (1) we don't want to force /W4 on users of the library and (2) some of
the warnings only show up when the formatting functions are used.
2015-03-28 17:29:12 -07:00
vitaut
9c75d0ccf7 Compile with /W4 in MSVC 2015-03-28 13:21:49 -07:00
vitaut
100bc30773 Reset CMAKE_REQUIRED_FLAGS 2015-03-19 07:59:12 -07:00
vitaut
df477565f8 Diagnose clang failures 2015-03-19 07:51:10 -07:00
vitaut
f49ab8e4a9 Detect broken cmath 2015-03-19 07:34:50 -07:00
vitaut
d99c49b970 Merge branch 'master' of github.com:cppformat/cppformat 2015-03-17 07:57:39 -07:00
vitaut
8ed6031457 Add a comment describing the use of -std=c++11 2015-03-17 07:56:55 -07:00
Magnus Bjerke Vik
b739ec893f Fix CMake FMT_INITIALIZER_LIST check failing because of wrong include name. 2015-03-17 10:15:54 +01:00
Victor Zverovich
2d80bcc1cb Bump version 2015-03-06 08:30:30 -08:00
Victor Zverovich
1244f3d58f Move biicode.cmake to support/cmake 2015-03-01 17:00:53 -08:00
Victor Zverovich
07754c047c Place executables in the bin dir 2015-03-01 16:07:18 -08:00
Victor Zverovich
4df5d10e3c Check if initializer lists are supported 2015-03-01 14:14:06 -08:00
Trent Houliston
4da1fa391e Add an install command to the cmake file (to allow make install) 2015-02-24 17:31:30 +11:00
Victor Zverovich
2b35c9e8e7 Move CMake files to support 2015-02-21 16:02:44 -08:00
Victor Zverovich
a92205be9c Remove unused policy setting 2015-02-17 14:42:11 -08:00
carterl
43b9fefbd2 Use static_assert more actively 2015-02-15 03:55:21 +01:00
Carter Li
2eef573656 Use explicitly deleted functions to make types non-copyable 2015-02-14 23:22:14 +08:00
Victor Zverovich
f77350f8fa Disable unnecessary CMake check and comment 2015-02-14 06:18:19 -08:00
Carter Li
e2583ab5f3 Use throw() when noexcept is not supported 2015-02-14 09:58:29 +08:00
Victor Zverovich
c643fdae53 Fix CMake warning 2015-02-12 15:55:21 -08:00
Victor Zverovich
503e87f153 Report CMake version for debugging 2015-02-12 11:41:45 -08:00