8000 Merge remote-tracking branch 'docopt/master' · rmpowell77/docopt.cpp@a4f83ae · GitHub
[go: up one dir, main page]

Skip to content

Commit a4f83ae

Browse files
committed
Merge remote-tracking branch 'docopt/master'
2 parents a8f12fe + 80f78e3 commit a4f83ae

File tree

4 files changed

+195
-166
lines changed

4 files changed

+195
-166
lines changed

.travis.yml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,29 @@ sudo: false # Use the new container infrastructure
33

44
matrix:
55
include:
6+
- os: linux
7+
env:
8+
- COMPILER=g++-5 STDLIB=libc++
9+
addons:
10+
apt:
11+
sources: ['ubuntu-toolchain-r-test', 'george-edison55-precise-backports']
12+
packages: ["g++-5", "cmake-data", "cmake"]
13+
614
- os: linux
715
env:
816
- COMPILER=clang++-3.6 STDLIB=libc++
917
addons:
1018
apt:
11-
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.6']
12-
packages: ["clang-3.6"]
19+
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.6', 'george-edison55-precise-backports']
20+
packages: ["clang-3.6", "cmake-data", "cmake"]
1321

1422
- os: linux
1523
env:
1624
- COMPILER=clang++-3.7 STDLIB=libc++
1725
addons:
1826
apt:
19-
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7']
20-
packages: ["clang-3.7"]
27+
sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7', 'george-edison55-precise-backports']
28+
packages: ["clang-3.7", "cmake-data", "cmake"]
2129

2230
- os: osx
2331
osx_image: xcode6.4
@@ -39,7 +47,7 @@ before_install:
3947
4048
- CMAKE_CXX_FLAGS+=" -Wall"
4149

42-
- if [[ "${WITH_CPP14}" == "true" ]]; then CMAKE_OPTIONS+=" -DWITH_CPP14=1"; fi
50+
- if [[ "${WITH_CPP14}" == "true" ]]; then CMAKE_OPTIONS+=" -DCMAKE_CXX_STANDARD=14"; fi
4351
- if [[ "${STDLIB}" == "libc++" ]]; then CMAKE_CXX_FLAGS+=" -stdlib=libc++"; fi
4452

4553
- sh ${COMPILER} --version || true

CMakeLists.txt

Lines changed: 36 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,43 @@
1-
cmake_minimum_required(VERSION 2.6.4)
1+
cmake_minimum_required(VERSION 3.1)
22

33
option(WITH_TESTS "Build tests." OFF)
44
option(WITH_EXAMPLE "Build example." OFF)
55
option(WITH_STATIC "Build static libs." ON)
6-
option(WITH_CPP11 "Build with C++11." ON)
7-
option(WITH_CPP14 "Build with C++14." OFF)
86

97
project(docopt.cpp)
108
include_directories("${PROJECT_SOURCE_DIR}")
119

10+
########################################################################
11+
# Compiler properties
12+
13+
# C++ standard
14+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
15+
set(CMAKE_CXX_EXTENSIONS OFF)
16+
if(NOT CMAKE_CXX_STANDARD)
17+
set(CMAKE_CXX_STANDARD 11)
18+
endif()
19+
20+
# Suppression of "unknown pragma" warning on GCC
21+
if(CMAKE_COMPILER_IS_GNUCXX)
22+
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-pragmas") # Code uses #pragma mark
23+
endif()
24+
1225
########################################################################
1326
# docopt
1427

1528
set(DOCOPT_SRC
16-
docopt.cpp
17-
docopt.h
18-
docopt_private.h
19-
docopt_util.h
20-
docopt_value.h
21-
)
29+
docopt.cpp
30+
docopt.h
31+
docopt_private.h
32+
docopt_util.h
33+
docopt_value.h
34+
)
2235
if(WITH_STATIC)
2336
add_library(docopt_s STATIC ${DOCOPT_SRC})
37+
target_include_directories(docopt_s PUBLIC "${PROJECT_SOURCE_DIR}")
2438
endif()
2539
add_library(docopt SHARED ${DOCOPT_SRC})
26-
27-
if(WITH_CPP14)
28-
add_definitions("-std=c++14")
29-
elseif(WITH_CPP11)
30-
add_definitions("-std=c++11")
31-
endif()
40+
target_include_directories(docopt PUBLIC "${PROJECT_SOURCE_DIR}")
3241

3342
########################################################################
3443
# tests
@@ -47,9 +56,9 @@ if (WITH_TESTS)
4756
add_executable(run_testcase run_testcase.cpp)
4857
target_link_libraries(run_testcase docopt)
4958
configure_file(
50-
"${PROJECT_SOURCE_DIR}/run_tests.py"
51-
"${CMAKE_CURRENT_BINARY_DIR}/run_tests"
52-
ESCAPE_QUOTES
59+
"${PROJECT_SOURCE_DIR}/run_tests.py"
60+
"${CMAKE_CURRENT_BINARY_DIR}/run_tests"
61+
ESCAPE_QUOTES
5362
)
5463
add_test("Testcases docopt" ${TESTPROG})
5564
endif()
@@ -58,19 +67,19 @@ endif()
5867
# installation
5968

6069
INSTALL(TARGETS
61-
docopt
62-
DESTINATION lib)
70+
docopt
71+
DESTINATION lib)
6372
if(WITH_STATIC)
6473
INSTALL(TARGETS
65-
docopt_s
66-
DESTINATION lib)
74+
docopt_s
75+
DESTINATION lib)
6776
endif()
6877
INSTALL(FILES
69-
docopt.h
70-
docopt_private.h
71-
docopt_util.h
72-
docopt_value.h
73-
DESTINATION include/docopt)
78+
docopt.h
79+
docopt_private.h
80+
docopt_util.h
81+
docopt_value.h
82+
DESTINATION include/docopt)
7483
SET(CPACK_PACKAGE_NAME "docopt")
7584
SET(CPACK_DEBIAN_PACKAGE_DEPENDS "")
7685
SET(CPACK_RPM_PACKAGE_REQUIRES "")

0 commit comments

Comments
 (0)
0