Codebase list ignition-cmake / a927d09
Update upstream source from tag 'upstream/2.5.0' Update to upstream version '2.5.0' with Debian dir 05199326f0c6b7f2c47f17124bb4127883831604 Jose Luis Rivero 3 years ago
39 changed file(s) with 645 addition(s) and 203 deletion(s). Raw diff Collapse all Expand all
0 # More info:
1 # https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners
2
3 * @mxgrey
0 name: Ubuntu CI
1
2 on: [push]
3
4 jobs:
5 bionic-ci:
6 runs-on: ubuntu-latest
7 name: Ubuntu Bionic CI
8 steps:
9 - name: Checkout
10 uses: actions/checkout@v2
11 - name: Compile and test
12 id: ci
13 uses: ignition-tooling/action-ignition-ci@master
14 with:
15 cmake-args: '-DBUILDSYSTEM_TESTING=True'
16 codecov-token: ${{ secrets.CODECOV_TOKEN }}
17 focal-ci:
18 runs-on: ubuntu-latest
19 name: Ubuntu Focal CI
20 steps:
21 - name: Checkout
22 uses: actions/checkout@v2
23 - name: Compile and test
24 id: ci
25 uses: ignition-tooling/action-ignition-ci@focal
26 with:
27 cmake-args: '-DBUILDSYSTEM_TESTING=True'
28 codecov-token: ${{ secrets.CODECOV_TOKEN }}
29
0 name: PR Collection Labeler
1
2 on: pull_request
3
4 jobs:
5 pr_collection_labeler:
6 runs-on: ubuntu-latest
7 steps:
8 - name: Add collection labels
9 if: github.event.action == 'opened'
10 uses: ignition-tooling/pr-collection-labeler@v1
11 with:
12 github-token: ${{ secrets.GITHUB_TOKEN }}
0 on:
1 issues:
2 types: [opened]
3 pull_request:
4 types: [opened]
5 name: Ticket opened
6 jobs:
7 assign:
8 name: Add ticket to inbox
9 runs-on: ubuntu-latest
10 steps:
11 - name: Add ticket to inbox
12 uses: technote-space/create-project-card-action@v1
13 with:
14 PROJECT: Core development
15 COLUMN: Inbox
16 GITHUB_TOKEN: ${{ secrets.TRIAGE_TOKEN }}
17 CHECK_ORG_PROJECT: true
18
0 # CMake folders
1 build
2 build_*
3
4 # OS generated files
5 .DS_Store
6 *.swp
+0
-4
.hg_archival.txt less more
0 repo: d8ed439c5f00b7073f27f16aebb168da9b398751
1 node: 65f0d7e6fa06fc88770baa1c45c5946862513f2f
2 branch: ign-cmake2
3 tag: ignition-cmake2_2.2.0
+0
-6
.hgignore less more
0 syntax: glob
1
2 build
3 build_*
4 .DS_Store
5 *.swp
+0
-42
.hgtags less more
0 89c84e5e4239a768fae09623e0af34e625bda3d5 ignition-cmake_0.1.0
1 b8ab79d564633d12f69757fb58fd2c8c8430f2b8 ignition-cmake_0.1.0
2 835c374fc1cd53846b0c8855e2b9c2ddc6d4f7c9 ignition-cmake_0.1.1
3 8a614c5dca581b2051775eb3215045b6e1b40f00 ignition-cmake_0.2.0~pre1
4 5987e896a79b3900f17cfb7ed87f90008771eb7f ignition-cmake_0.2.0~pre2
5 a9ee47ab2290f5a26d15d62ba96826410d7f181b ignition-cmake_0.2.0~pre3
6 f47ce6d7b7f24f5aa84dfa1f24052a9045e196ae ignition-cmake_0.2.0
7 a57270bf1527e0fc1a25c14baa98e3309f6e5470 ignition-cmake_0.3.0
8 a57270bf1527e0fc1a25c14baa98e3309f6e5470 ignition-cmake_0.3.0
9 309842f8529921a349523e202c2f15373f0dfccd ignition-cmake_0.3.0
10 328c885439b5d8dc1fcc7763b318dff950b47424 ignition-cmake_0.4.0
11 1f49f8a81dd8a9f9e348227221cc7b32e1aaac10 ignition-cmake_0.4.1
12 e801b90db6b02c1cc5e7763868a60517065dab7d ignition-cmake_0.5.0
13 e801b90db6b02c1cc5e7763868a60517065dab7d ignition-cmake_0.5.0
14 a0b4a2c429151666a44403e4d1ca5b97bd6e2a61 ignition-cmake_0.5.0
15 a0b4a2c429151666a44403e4d1ca5b97bd6e2a61 ignition-cmake_0.5.0
16 d882634ff8f43d27b7f82f96720bae17793b1d6d ignition-cmake_0.5.0
17 98e21198b31044a5aa1076aad786f1d8bdacb2d5 ignition-cmake_0.6.0
18 a93e1ac2472b6f754ed780546547ce1ca32733c2 ignition-cmake_0.6.1
19 b1546552301defafb51f74930243b7c9d85c7331 ignition-cmake1_1.0.0~pre1
20 9178e5dccaa22ac5efb0f2ed2812af5768d5e585 ignition-cmake1_1.0.0~pre2
21 fe7fce8b28bedb690d688b1b0a783854c114330e ignition-cmake1_1.0.0~pre3
22 b837ad6133799a5a0f5056c7d6e8a9212f5bb3a1 ignition-cmake1_1.1.0~pre2
23 13307cdf49284ad04387b037f41c558e7a7fbe5d ignition-cmake1_1.1.0~pre3
24 699267228537b0ec7ee14d889800049091c7a2ac ignition-cmake1_1.0.0
25 699267228537b0ec7ee14d889800049091c7a2ac ignition-cmake1_1.0.0
26 632d31e3366314340dd291c3bca0815615defdd2 ignition-cmake1_1.0.0
27 959b3e086c82438897cc2c5a4e79c02e9f8d19d9 ignition-cmake1_1.1.0
28 292763b9f318f68b1d4966eae7db38de09bd321f ignition-cmake2_2.0.0~gz11~v1
29 b48129c495f6d349c264d6c46664f12448bcf793 ignition-cmake2_2.0.0~gz11~v2
30 776c2bfe1d181720597333b340122f5abdb2fabe ignition-cmake2_2.0.0~pre1
31 776c2bfe1d181720597333b340122f5abdb2fabe ignition-cmake2_2.0.0~pre1
32 fcd769e1474b9cbc4ca7f41d957274a7d1e85608 ignition-cmake2_2.0.0~pre1
33 6614724da9e404b914a5633dba43e186ec1b5a61 ignition-cmake2_2.0.0~pre2
34 2cf2f7c986d46f887f67fd5dd6109b978bb6ebb6 ignition-cmake2_2.0.0~pre3
35 24ebc7e4d4488df0212f8ed7f26e596357a278e3 ignition-cmake2_2.0.0~pre4
36 1ff49389e33c988b52d36acf7a0ba502dfb77823 ignition-cmake2_2.0.0
37 7ebeb8166de523f542a53835ce4a883fe3cbf5bb ignition-cmake2_2.1.0~pre1
38 b1fa274b2d5ba9bfc0b6aa269aa2a613d265862e ignition-cmake2_2.1.0~pre2
39 5431a889ed95cd2817f68ef3261415d35f76acfe ignition-cmake2_2.1.0
40 02065e48ea4fed70a4652607c39cdb8eb763d9af ignition-cmake2_2.1.1
41 8093f0df9e9e30486f68bc6e8e827bb743569729 ignition-cmake2_2.2.0
22 #============================================================================
33 # Initialize the project
44 #============================================================================
5 project(ignition-cmake2 VERSION 2.2.0)
5 project(ignition-cmake2 VERSION 2.5.0)
66
77 #--------------------------------------
88 # Initialize the IGNITION_CMAKE_DIR variable with the location of the cmake
2020 #--------------------------------------
2121 # Set up the project
2222 ign_configure_project()
23
24 #--------------------------------------
25 # Set project-specific options
26 option(BUILDSYSTEM_TESTING "Enable extended buildsystem testing" FALSE)
2327
2428 #--------------------------------------
2529 # Install the ignition documentation files
147151 include(CTest)
148152 if (BUILD_TESTING)
149153 add_subdirectory(test)
154 endif()
150155
156 if (BUILD_TESTING AND BUILDSYSTEM_TESTING)
151157 #============================================================================
152158 # Build examples
153159 #============================================================================
0 See the [Ignition Robotics contributing guide](https://bitbucket.org/ignitionrobotics/ign-gazebo/src/default/CONTRIBUTING.md).
0 See the [Ignition Robotics contributing guide](https://ignitionrobotics.org/docs/all/contributing).
00 ## Ignition CMake 2.x
11
2 ### Ignition CMake 2.X.X (20XX-XX-XX)
3
4 ### Ignition CMake 2.5.0 (2020-09-05)
5
6 1. Add additional input directories to parse when generating documentation
7 * [Pull request 111](https://github.com/ignitionrobotics/ign-cmake/pull/111)
8
9 ### Ignition CMake 2.4.0 (2020-08-20)
10
11 1. Added an option to include generated code in the ign_create_docs function
12 * [Pull request 108](https://github.com/ignitionrobotics/ign-cmake/pull/108)
13
14 ### Ignition CMake 2.3.0 (2020-08-07)
15
16 1. New macros to help with filter google-test in some platforms
17 * [Pull request 102](https://github.com/ignitionrobotics/ign-cmake/pull/102)
18
19 1. Disable long-running buildsystem tests by default
20 * [Pull request 97](https://github.com/ignitionrobotics/ign-cmake/pull/97)
21
22 1. Fix use of FindYAML.cmake and FindJSONCPP without pkg-config
23 * [Pull request 79](https://github.com/ignitionrobotics/ign-cmake/pull/79)
24
25 1. Fix use of FindIgnOGRE2 on Windows if OGRE2 is not found
26 * [Pull request 94](https://github.com/ignitionrobotics/ign-cmake/pull/94)
27 * Thanks to Silvio Traversaro
28
29 1. FindUUID: Export include path as expected by Ignition Libraries #104
30 * [Pull request 104](https://github.com/ignitionrobotics/ign-cmake/pull/104)
31 * Thanks to Silvio Traversaro
32
33 1. Make the OGRE plugin path discovery portable
34 * [Pull request 101](https://github.com/ignitionrobotics/ign-cmake/pull/101)
35 * Thanks to Sean Yen
36
237 ### Ignition CMake 2.2.0
338
439 1. Fix use of FindZIP without pkg-config.
5 * [Pull request 182](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/182)
40 * [BitBucket pull request 182](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/182)
641
742 1. Use mathjax to render equations.
8 * [Pull request 181](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/181)
43 * [BitBucket pull request 181](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/181)
944
1045 1. Reduce example names to fix build on Windows
11 * [Pull request 180](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/180)
46 * [BitBucket pull request 180](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/180)
1247
1348 1. Fix doxygen deprecation filter
14 * [Pull request 160](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/160)
49 * [BitBucket pull request 160](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/160)
1550
1651 1. Change the diamond link icon to a material design link
17 * [Pull request 159](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/159)
52 * [BitBucket pull request 159](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/159)
1853
1954 1. Set viewport for doxygen pages.
20 * [Pull request 167](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/167)
55 * [BitBucket pull request 167](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/167)
2156
2257 1. Use upstream `CURL::libcurl` imported target in FindIgnCURL.cmake if available.
23 * [Pull request 175](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/175)
58 * [BitBucket pull request 175](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/175)
2459
2560 1. Avoid hardcoding /machine:x64 flag on 64-bit on MSVC.
26 * [Pull request 171](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/171)
27 * [Pull request 168](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/168)
61 * [BitBucket pull request 171](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/171)
62 * [BitBucket pull request 168](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/168)
2863
2964 1. FindIgnOGRE2: fix include paths for new directory structure.
30 * [Pull request 170](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/170)
31 * [Pull request 157](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/157)
65 * [BitBucket pull request 170](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/170)
66 * [BitBucket pull request 157](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/157)
3267
3368 1. Support for custom vcpkg ogre2 windows port (backport of PR 155).
34 * [Pull request 161](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/161)
35 * [Pull request 155](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/155)
69 * [BitBucket pull request 161](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/161)
70 * [BitBucket pull request 155](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/155)
3671
3772 1. IgnConfigureBuild: only `add_subdirectory(test)` if `BUILD_TESTING` is ON
38 * [Pull request 169](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/169)
73 * [BitBucket pull request 169](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/169)
3974
4075 1. Add FindIgnBullet cmake module.
41 * [Pull request 162](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/162)
76 * [BitBucket pull request 162](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/162)
4277
4378 ### Ignition CMake 2.1.1 (2019-08-07)
4479
4580 1. Turn on doxygen warnings, add CI script to check for doxygen warnings.
46 * [Pull request 158](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/158)
81 * [BitBucket pull request 158](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/158)
4782
4883 ### Ignition CMake 2.1.0 (2019-05-17)
4984
5085 1. Fixes for vcpkg ogre 1.11 version
51 * [Pull request 152](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/152)
86 * [BitBucket pull request 152](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/152)
5287
5388 1. Add benchmark aggregation functionality
54 * [Pull request 148](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/148)
55 * [Pull request 149](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/149)
89 * [BitBucket pull request 148](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/148)
90 * [BitBucket pull request 149](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/149)
5691
5792 1. Use `PRIVATE_FOR` to skip cmake dependencies in addition to pkg-config
58 * [Pull request 147](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/147)
93 * [BitBucket pull request 147](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/147)
5994
6095 1. `upload_doc.sh`: actually use dry-run, and allow the user to pass in a 'y' or 'n'
61 * [Pull request 146](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/146)
96 * [BitBucket pull request 146](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/146)
6297
6398 1. Set favicon
64 * [Pull request 145](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/145)
99 * [BitBucket pull request 145](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/145)
65100
66101 1. Fix tagfile generation by preventing the inclusion of tutorials
67 * [Pull request 142](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/142)
102 * [BitBucket pull request 142](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/142)
68103
69104 1. Update datainstall dir
70 * [Pull request 141](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/141)
105 * [BitBucket pull request 141](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/141)
71106
72107 1. Allow tests to build without automatic linking against project lib
73 * [Pull request 140](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/140)
108 * [BitBucket pull request 140](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/140)
74109
75110 ### Ignition CMake 2.0.0 (2019-01-31)
76111
77112 1. Require cmake 3.10.2, support `CXX_STANDARD` 17
78 * [Pull request 68](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/68)
79
80 * [Full list of pull requests]( https://bitbucket.org/ignitionrobotics/ign-cmake/branches/compare/ignition-cmake2_2.0.0%0Dign-cmake1#pull-requests)
113 * [BitBucket pull request 68](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/68)
114
115 * [Full list of changes](https://github.com/ignitionrobotics/ign-cmake/compare/ignition-cmake2_2.0.0...ign-cmake1)
81116
82117 ## Ignition CMake 1.x
83118
84119 1. Set viewport for doxygen pages.
85 * [Pull request 167](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/167)
120 * [BitBucket pull request 167](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/167)
86121
87122 1. Use upstream `CURL::libcurl` imported target in FindIgnCURL.cmake if available.
88 * [Pull request 175](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/175)
123 * [BitBucket pull request 175](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/175)
89124
90125 1. Avoid hardcoding /machine:x64 flag on 64-bit on MSVC.
91 * [Pull request 171](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/171)
92 * [Pull request 168](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/168)
126 * [BitBucket pull request 171](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/171)
127 * [BitBucket pull request 168](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/168)
93128
94129 1. IgnConfigureBuild: only `add_subdirectory(test)` if `BUILD_TESTING` is ON
95 * [Pull request 165](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/165)
130 * [BitBucket pull request 165](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/165)
96131
97132 1. Fix race condition in test for issue 48
98 * [Pull request 136](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/136)
99 * [Issue 48](https://bitbucket.org/ignitionrobotics/ign-cmake/issue/48)
133 * [BitBucket pull request 136](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/136)
134 * [Issue 48](https://github.com/ignitionrobotics/ign-cmake/issue/48)
100135
101136 1. Account for inter-component dependencies when importing targets
102 * [Pull request 131](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/131)
103 * [Issue 48](https://bitbucket.org/ignitionrobotics/ign-cmake/issue/48)
137 * [BitBucket pull request 131](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/131)
138 * [Issue 48](https://github.com/ignitionrobotics/ign-cmake/issue/48)
104139
105140 ### Ignition CMake 1.1.0
106141
108143
109144 ### Ignition CMake 1.0.0
110145
111 * [Full list of pull requests](https://bitbucket.org/ignitionrobotics/ign-cmake/branches/compare/ignition-cmake1_1.0.0%0Dign-cmake0#pull-requests)
146 * [Full list of changes](https://github.com/ignitionrobotics/ign-cmake/compare/ignition-cmake1_1.0.0...ign-cmake0)
112147
113148 ## Ignition CMake 0.x
114149
115150 1. Set viewport for doxygen pages.
116 * [Pull request 167](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/167)
151 * [BitBucket pull request 167](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/167)
117152
118153 1. Use upstream `CURL::libcurl` imported target in FindIgnCURL.cmake if available.
119 * [Pull request 175](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/175)
154 * [BitBucket pull request 175](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/175)
120155
121156 1. Avoid hardcoding /machine:x64 flag on 64-bit on MSVC.
122 * [Pull request 168](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/168)
157 * [BitBucket pull request 168](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/168)
123158
124159 1. IgnConfigureBuild: only `add_subdirectory(test)` if `BUILD_TESTING` is ON
125 * [Pull request 163](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/163)
160 * [BitBucket pull request 163](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/163)
126161
127162 1. IgnConfigureProject.cmake: fix small typo PKCONFIG -> PKGCONFIG
128 * [Pull request 118](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/118)
163 * [BitBucket pull request 118](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/118)
129164
130165 ### Ignition CMake 0.6.1
131166
132167 1. Fix duplicated imported target error
133 * [Pull request 110](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/110)
134 * [Issue 47](https://bitbucket.org/ignitionrobotics/ign-cmake/issue/47)
168 * [BitBucket pull request 110](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/110)
169 * [Issue 47](https://github.com/ignitionrobotics/ign-cmake/issue/47)
135170
136171 ### Ignition CMake 0.6.0
137172
138173 1. Properly mark internal CMake cache variables as advanced
139 * [Pull request 68](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/68)
174 * [BitBucket pull request 68](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/68)
140175
141176 1. Make line coverage by default, add separate coverage-branch target
142 * [Pull request 66](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/66)
177 * [BitBucket pull request 66](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/66)
143178
144179 1. Refactor variable names in example test junit templates
145 * [Pull request 57](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/57)
180 * [BitBucket pull request 57](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/57)
146181
147182 1. Suport for `CMAKE_BUILD_TYPE` None
148 * [Pull request 54](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/54)
183 * [BitBucket pull request 54](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/54)
149184
150185 ### Ignition CMake 0.5.0
151186
152187 1. FindJSONCPP: fix target when pkg-config is successful
153 * [Pull request 50](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/50)
188 * [BitBucket pull request 50](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/50)
154189
155190 1. Add branch coverage
156 * [Pull request 46](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/46)
191 * [BitBucket pull request 46](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/46)
157192
158193 1. Add FindOptiX.cmake
159 * [Pull request 34](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests/34)
194 * [BitBucket pull request 34](https://osrf-migration.github.io/ignition-gh-pages/#!/ignitionrobotics/ign-cmake/pull-requests/34)
160195
161196 ### Ignition CMake 0.4.1
162197
163 * [Full list of pull requests](https://bitbucket.org/ignitionrobotics/ign-cmake/branches/compare/ignition-cmake_0.4.1%0Dignition-cmake_0.4.0#pull-requests)
198 * [Full list of changes](https://github.com/ignitionrobotics/ign-cmake/compare/ignition-cmake_0.4.1...ignition-cmake_0.4.0)
164199
165200 ### Ignition CMake 0.4.0
166201
11
22 **Maintainer:** grey AT openrobotics.org
33
4 [![Bitbucket open issues](https://img.shields.io/bitbucket/issues-raw/ignitionrobotics/ign-cmake.svg)](https://bitbucket.org/ignitionrobotics/ign-cmake/issues)
5 [![Bitbucket open pull requests](https://img.shields.io/bitbucket/pr-raw/ignitionrobotics/ign-cmake.svg)](https://bitbucket.org/ignitionrobotics/ign-cmake/pull-requests)
4 [![GitHub open issues](https://img.shields.io/github/issues-raw/ignitionrobotics/ign-cmake.svg)](https://github.com/ignitionrobotics/ign-cmake/issues)
5 [![GitHub open pull requests](https://img.shields.io/github/issues-pr-raw/ignitionrobotics/ign-cmake.svg)](https://github.com/ignitionrobotics/ign-cmake/pulls)
66 [![Discourse topics](https://img.shields.io/discourse/https/community.gazebosim.org/topics.svg)](https://community.gazebosim.org)
77 [![Hex.pm](https://img.shields.io/hexpm/l/plug.svg)](https://www.apache.org/licenses/LICENSE-2.0)
88
99 Build | Status
1010 -- | --
11 Test coverage | [![codecov](https://codecov.io/bb/ignitionrobotics/ign-cmake/branch/default/graph/badge.svg)](https://codecov.io/bb/ignitionrobotics/ign-cmake)
12 Ubuntu Bionic | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_cmake-ci-default-bionic-amd64)](https://build.osrfoundation.org/job/ignition_cmake-ci-default-bionic-amd64)
13 Homebrew | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_cmake-ci-default-homebrew-amd64)](https://build.osrfoundation.org/job/ignition_cmake-ci-default-homebrew-amd64)
14 Windows | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_cmake-ci-default-windows7-amd64)](https://build.osrfoundation.org/job/ignition_cmake-ci-default-windows7-amd64)
11 Test coverage | [![codecov](https://codecov.io/gh/ignitionrobotics/ign-cmake/branch/master/graph/badge.svg)](https://codecov.io/gh/ignitionrobotics/ign-cmake)
12 Ubuntu Bionic | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_cmake-ci-master-bionic-amd64)](https://build.osrfoundation.org/job/ignition_cmake-ci-master-bionic-amd64)
13 Homebrew | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_cmake-ci-master-homebrew-amd64)](https://build.osrfoundation.org/job/ignition_cmake-ci-master-homebrew-amd64)
14 Windows | [![Build Status](https://build.osrfoundation.org/buildStatus/icon?job=ignition_cmake-ci-master-windows7-amd64)](https://build.osrfoundation.org/job/ignition_cmake-ci-master-windows7-amd64)
1515
1616 # Table of Contents
1717
18 [Features](#markdown-header-features)
18 [Features](#features)
1919
20 [Install](#markdown-header-install)
20 [Install](#install)
2121
22 * [Binary Install](#markdown-header-binary-install)
22 * [Binary Install](#binary-install)
2323
24 * [Source Install](#markdown-header-source-install)
24 * [Source Install](#source-install)
2525
26 * [Prerequisites](#markdown-header-prerequisites)
26 * [Prerequisites](#prerequisites)
2727
28 * [Building from Source](#markdown-header-building-from-source)
28 * [Building from Source](#building-from-source)
2929
30 [Usage](#markdown-header-usage)
30 [Usage](#usage)
3131
32 [Documentation](#markdown-header-documentation)
32 [Documentation](#documentation)
3333
34 [Testing](#markdown-header-testing)
34 [Testing](#testing)
3535
36 [Folder Structure](#markdown-header-folder-structure)
36 [Folder Structure](#folder-structure)
3737
38 [Code of Conduct](#markdown-header-code-of-conduct)
38 [Code of Conduct](#code-of-conduct)
3939
40 [Contributing](#markdown-header-code-of-contributing)
40 [Contributing](#code-of-contributing)
4141
42 [Versioning](#markdown-header-versioning)
42 [Versioning](#versioning)
4343
44 [License](#markdown-header-license)
44 [License](#license)
4545
4646 # Features
4747
5151
5252 # Install
5353
54 We recommend following the [Binary Install](#markdown-header-binary-install) instructions to get up and running as quickly and painlessly as possible.
54 We recommend following the [Binary Install](#binary-install) instructions to get up and running as quickly and painlessly as possible.
5555
56 The [Source Install](#markdown-header-source-install) instructions should be used if you need the very latest software improvements, you need to modify the code, or you plan to make a contribution.
56 The [Source Install](#source-install) instructions should be used if you need the very latest software improvements, you need to modify the code, or you plan to make a contribution.
5757
5858 ## Binary Install
5959
8080 To build and install from source, you can clone the repo and use cmake to install the modules as though this is a regular cmake project:
8181
8282 ```
83 $ hg clone https://bitbucket.org/ignitionrobotics/ign-cmake
83 $ git clone https://github.com/ignitionrobotics/ign-cmake
8484 $ cd ign-cmake
8585 $ mkdir build
8686 $ cd build
9797
9898 # Documentation
9999
100 Documentation for `ignition-cmake` can be found within the source code, and also in the [MIGRATION.md guide](https://bitbucket.org/ignitionrobotics/ign-cmake/src/default/MIGRATION.md).
100 Documentation for `ignition-cmake` can be found within the source code, and also in the [MIGRATION.md guide](https://github.com/ignitionrobotics/ign-cmake/blob/master/MIGRATION.md).
101101
102102 # Testing
103103
104 A fuller suite of tests in the `examples` directory can be enabled by building with `BUILDSYSTEM_TESTING` enabled.
104105 Tests can be run by building the `test` target. From your build directory you can run:
105106
106107 ```
108 $ cmake .. -DBUILDSYSTEM_TESTING=1
107109 $ make test
108110 ```
109111
121123 # Contributing
122124
123125 Please see
124 [CONTRIBUTING.md](https://bitbucket.org/ignitionrobotics/ign-gazebo/src/406665896aa40bb42f14cf61d48b3d94f2fc5dd8/CONTRIBUTING.md?at=default&fileviewer=file-view-default).
126 [CONTRIBUTING.md](https://ignitionrobotics.org/docs/all/contributing).
125127
126128 # Code of Conduct
127129
128130 Please see
129 [CODE_OF_CONDUCT.md](https://bitbucket.org/ignitionrobotics/ign-gazebo/src/406665896aa40bb42f14cf61d48b3d94f2fc5dd8/CODE_OF_CONDUCT.md?at=default&fileviewer=file-view-default).
131 [CODE_OF_CONDUCT.md](https://github.com/ignitionrobotics/ign-gazebo/blob/master/CODE_OF_CONDUCT.md).
130132
131133 # Versioning
132134
134136
135137 # License
136138
137 This library is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). See also the [LICENSE](https://bitbucket.org/ignitionrobotics/ign-cmake/src/571d06fcbcc530919cbaa6111872b708f5bc0a4b/LICENSE) file.
139 This library is licensed under [Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0). See also the [LICENSE](https://github.com/ignitionrobotics/ign-cmake/blob/master/LICENSE) file.
+0
-18
appveyor.yml less more
0 os:
1 - Visual Studio 2017
2 - Visual Studio 2015
3
4 environment:
5 CTEST_OUTPUT_ON_FAILURE: 1
6
7 build_script:
8 - md build
9 - cd build
10 - cmake .. -DCMAKE_CXX_FLAGS="-WX"
11 - cmake --build .
12
13 after_build:
14 - cmake --build . --target INSTALL
15
16 test_script:
17 - cmake --build . --target RUN_TESTS
+0
-19
bitbucket-pipelines.yml less more
0 # This is a sample build configuration for C++.
1 # Check our guides at https://confluence.atlassian.com/x/VYk8Lw for more examples.
2 # Only use spaces to indent your .yml configuration.
3 # -----
4 # You can specify a custom docker image from Docker Hub as your build environment.
5 image: ubuntu:bionic
6
7 pipelines:
8 default:
9 - step:
10 script: # Modify the commands below to build your repository.
11 - apt-get update
12 - apt-get -y install cmake build-essential lcov pkg-config cppcheck
13 - mkdir build
14 - cd build
15 - cmake ..
16 - make
17 - make test
18 - make install
1515 ########################################
1616 # Find avcodec
1717 include(IgnPkgConfig)
18 ign_pkg_check_modules(AVCODEC libavcodec)
18 ign_pkg_check_modules_quiet(AVCODEC libavcodec)
19
20 if(NOT AVCODEC_FOUND)
21 include(IgnManualSearch)
22 ign_manual_search(AVCODEC
23 HEADER_NAMES "libavcodec/avcodec.h"
24 LIBRARY_NAMES "avcodec")
25 endif()
26
27 include(FindPackageHandleStandardArgs)
28 find_package_handle_standard_args(
29 AVCODEC
30 REQUIRED_VARS AVCODEC_FOUND)
1919 set(av_patch ${AVDEVICE_FIND_VERSION_PATCH})
2020
2121 include(IgnPkgConfig)
22 ign_pkg_check_modules(AVDEVICE "libavdevice >= ${av_major}.${av_minor}.${av_patch}")
22 ign_pkg_check_modules_quiet(AVDEVICE "libavdevice >= ${av_major}.${av_minor}.${av_patch}")
23
24 if(NOT AVDEVICE_FOUND)
25 include(IgnManualSearch)
26 ign_manual_search(AVDEVICE
27 HEADER_NAMES "libavdevice/avdevice.h"
28 LIBRARY_NAMES "avdevice")
29
30 # Version check
31 if(AVDEVICE_FOUND)
32 file(READ "${AVDEVICE_INCLUDE_DIRS}/libavdevice/version.h" ver_file)
33
34 string(REGEX MATCH "LIBAVDEVICE_VERSION_MAJOR[ \t\r\n]+([0-9]*)" _ ${ver_file})
35 set(ver_major ${CMAKE_MATCH_1})
36
37 string(REGEX MATCH "LIBAVDEVICE_VERSION_MINOR[ \t\r\n]+([0-9]*)" _ ${ver_file})
38 set(ver_minor ${CMAKE_MATCH_1})
39
40 string(REGEX MATCH "LIBAVDEVICE_VERSION_MICRO[ \t\r\n]+([0-9]*)" _ ${ver_file})
41 set(ver_patch ${CMAKE_MATCH_1})
42
43 set(AVDEVICE_VERSION "${ver_major}.${ver_minor}.${ver_patch}")
44
45 if(AVDEVICE_VERSION VERSION_LESS AVDEVICE_FIND_VERSION)
46 set(AVDEVICE_FOUND FALSE)
47 endif()
48 endif()
49 endif()
50
51 include(FindPackageHandleStandardArgs)
52 find_package_handle_standard_args(
53 AVDEVICE
54 REQUIRED_VARS AVDEVICE_FOUND)
1515 ########################################
1616 # Find AV format
1717 include(IgnPkgConfig)
18 ign_pkg_check_modules(AVFORMAT libavformat)
18 ign_pkg_check_modules_quiet(AVFORMAT libavformat)
19
20 if(NOT AVFORMAT_FOUND)
21 include(IgnManualSearch)
22 ign_manual_search(AVFORMAT
23 HEADER_NAMES "libavformat/avformat.h"
24 LIBRARY_NAMES "avformat")
25 endif()
26
27 include(FindPackageHandleStandardArgs)
28 find_package_handle_standard_args(
29 AVFORMAT
30 REQUIRED_VARS AVFORMAT_FOUND)
1515 ########################################
1616 # Find avutil
1717 include(IgnPkgConfig)
18 ign_pkg_check_modules(AVUTIL libavutil)
18 ign_pkg_check_modules_quiet(AVUTIL libavutil)
19
20 if(NOT AVUTIL_FOUND)
21 include(IgnManualSearch)
22 ign_manual_search(AVUTIL
23 HEADER_NAMES "libavutil/avutil.h"
24 LIBRARY_NAMES "avutil")
25 endif()
26
27 include(FindPackageHandleStandardArgs)
28 find_package_handle_standard_args(
29 AVUTIL
30 REQUIRED_VARS AVUTIL_FOUND)
7272 endif(NOT FreeImage_INCLUDE_DIRS)
7373 mark_as_advanced(FreeImage_INCLUDE_DIRS)
7474
75 find_library(FreeImage_LIBRARIES freeimage)
75 find_library(FreeImage_LIBRARIES NAMES freeimage FreeImage)
7676 if(FreeImage_LIBRARIES)
7777 set(FreeImage_FOUND true)
7878 else()
5555 macro(append_library VAR LIB)
5656 if(EXISTS "${LIB}")
5757 list(APPEND ${VAR} ${LIB})
58 else()
59 message(FATAL_ERROR "Library does not exist: ${LIB}")
6058 endif()
6159 endmacro()
6260
8785 set(${OUTPUT_VAR} "${LIB_DEBUG}")
8886 elseif(LIB_RELEASE)
8987 set(${OUTPUT_VAR} "${LIB_RELEASE}")
90 else()
91 message(FATAL_ERROR "Can not find libraries in ${LIBRARY_STR}")
9288 endif()
9389 endmacro()
9490
3737 if(JSONCPP_FOUND)
3838 ign_pkg_config_entry(JSONCPP jsoncpp)
3939 else()
40 ign_pkg_check_modules(JSONCPP jsoncpp)
40 ign_pkg_check_modules_quiet(JSONCPP jsoncpp)
4141 set(JSONCPP_TARGET JSONCPP::JSONCPP)
4242
4343 # If that failed, then fall back to manual detection.
6969 include(IgnImportTarget)
7070 ign_import_target(JSONCPP)
7171 endif()
72
73 include(FindPackageHandleStandardArgs)
74 find_package_handle_standard_args(
75 JSONCPP
76 REQUIRED_VARS JSONCPP_FOUND)
7772 endif()
73 include(FindPackageHandleStandardArgs)
74 find_package_handle_standard_args(
75 JSONCPP
76 REQUIRED_VARS JSONCPP_FOUND)
7877 endif()
7978 endif()
1515 ########################################
1616 # Find libswscale format
1717 include(IgnPkgConfig)
18 ign_pkg_check_modules(SWSCALE libswscale)
18 ign_pkg_check_modules_quiet(SWSCALE libswscale)
19
20 if(NOT SWSCALE_FOUND)
21 include(IgnManualSearch)
22 ign_manual_search(SWSCALE
23 HEADER_NAMES "libswscale/swscale.h"
24 LIBRARY_NAMES "swscale")
25 endif()
26
27 include(FindPackageHandleStandardArgs)
28 find_package_handle_standard_args(
29 SWSCALE
30 REQUIRED_VARS SWSCALE_FOUND)
1616 # Find uuid
1717 if (UNIX)
1818 include(IgnPkgConfig)
19 ign_pkg_check_modules(UUID uuid)
19 ign_pkg_check_modules_quiet(UUID uuid)
20
21 if(NOT UUID_FOUND)
22 include(IgnManualSearch)
23 ign_manual_search(UUID
24 HEADER_NAMES "uuid.h"
25 LIBRARY_NAMES "uuid libuuid"
26 PATH_SUFFIXES "uuid")
27 endif()
28
29 # The pkg-config or the manual search will place
30 # <uuid_install_prefix>/include/uuid in INTERFACE_INCLUDE_DIRECTORIES,
31 # but some projects exepect to use <uuid_install_prefix>/include, so
32 # we add it as well.
33 # See https://github.com/ignitionrobotics/ign-cmake/issues/103
34 if(TARGET UUID::UUID)
35 get_property(uuid_include_dirs
36 TARGET UUID::UUID
37 PROPERTY INTERFACE_INCLUDE_DIRECTORIES)
38
39 set(uuid_include_dirs_extended ${uuid_include_dirs})
40
41 foreach(include_dir IN LISTS uuid_include_dirs)
42 if(include_dir MATCHES "uuid$")
43 get_filename_component(include_dir_parent ${include_dir} DIRECTORY)
44 list(APPEND uuid_include_dirs_extended ${include_dir_parent})
45 endif()
46 endforeach()
47
48 list(REMOVE_DUPLICATES uuid_include_dirs_extended)
49
50 set_property(
51 TARGET UUID::UUID
52 PROPERTY INTERFACE_INCLUDE_DIRECTORIES
53 ${uuid_include_dirs_extended})
54 endif()
55
56 include(FindPackageHandleStandardArgs)
57 find_package_handle_standard_args(
58 UUID
59 REQUIRED_VARS UUID_FOUND)
2060 endif()
5151 "but you requested version ${YAML_FIND_VERSION}.")
5252 else()
5353 include(IgnPkgConfig)
54 ign_pkg_check_modules(YAML yaml-0.1)
54 ign_pkg_check_modules_quiet(YAML yaml-0.1)
5555
5656 # If that failed, then fall back to manual detection.
5757 if(NOT YAML_FOUND)
8686 INTERFACE_COMPILE_DEFINITIONS "YAML_DECLARE_STATIC"
8787 )
8888 endif()
89
90 include(FindPackageHandleStandardArgs)
91 find_package_handle_standard_args(
92 YAML
93 REQUIRED_VARS YAML_FOUND)
9489 endif()
90
91 include(FindPackageHandleStandardArgs)
92 find_package_handle_standard_args(
93 YAML
94 REQUIRED_VARS YAML_FOUND)
9595 endif()
2323 #################################################
2424 # ign_create_docs(
2525 # [API_MAINPAGE_MD <api_markdown_mainpage>]
26 # [AUTOGENERATED_DOC <generated doc dir>]
2627 # [TUTORIALS_MAINPAGE_MD <tutorials_markdown_mainpage>]
28 # [ADDITIONAL_INPUT_DIRS <directory_list>]
2729 # [TAGFILES <tagfile_list>])
2830 #
2931 # This function will configure doxygen templates and install them.
3032 #
3133 # API_MAINPAGE_MD: Optional. Specify a Markdown page to use as the main page
3234 # for API documentation.
35 # AUTOGENERATED_DOC: Optional. Directory with the generated code.
3336 # TUTORIALS_MAINPAGE_MD: Optional. Specify a Markdown page to use as the
3437 # main page for tutorial documentation.
38 # ADDITIONAL_INPUT_DIRS: Optional. Specify additional input directories to parse when generating documentation.
3539 # TAGFILES: Optional. Specify tagfiles for doxygen to use. It should be a list of strings like:
3640 # "${IGNITION-<DESIGNATION>_DOXYGEN_TAGFILE} = ${IGNITION-<DESIGNATION>_API_URL}"
3741 function(ign_create_docs)
3943 #------------------------------------
4044 # Define the expected arguments
4145 set(options)
42 set(oneValueArgs API_MAINPAGE_MD TUTORIALS_MAINPAGE_MD)
43 set(multiValueArgs "TAGFILES")
46 set(oneValueArgs API_MAINPAGE_MD AUTOGENERATED_DOC TUTORIALS_MAINPAGE_MD)
47 set(multiValueArgs "TAGFILES" "ADDITIONAL_INPUT_DIRS")
4448
4549 #------------------------------------
4650 # Parse the arguments
106110 ign_add_manpage_target()
107111
108112 set(IGNITION_DOXYGEN_API_MAINPAGE_MD ${ign_create_docs_API_MAINPAGE_MD})
113 set(IGNITION_DOXYGEN_AUTOGENERATED_DOC ${ign_create_docs_AUTOGENERATED_DOC})
109114 set(IGNITION_DOXYGEN_TUTORIALS_MAINPAGE_MD
110115 ${ign_create_docs_TUTORIALS_MAINPAGE_MD})
111116
113118
114119 foreach(tagfile ${ign_create_docs_TAGFILES})
115120 ign_string_append(IGNITION_DOXYGEN_TAGFILES "\"${tagfile}\"" DELIM " \\\\\\\\\n ")
121 endforeach()
122
123 set(IGNITION_DOXYGEN_ADDITIONAL_INPUT_DIRS " ")
124
125 foreach(dir ${ign_create_docs_ADDITIONAL_INPUT_DIRS})
126 ign_string_append(IGNITION_DOXYGEN_ADDITIONAL_INPUT_DIRS "${dir}")
116127 endforeach()
117128
118129 find_package(Doxygen)
133144 # about the spaces between input files/directories. If you put each cmake
134145 # variable on a separate line to make this `set` command more readable,
135146 # then doxygen will not generate the correct/complete output.
136 set(IGNITION_DOXYGEN_INPUT "${IGNITION_DOXYGEN_API_MAINPAGE_MD} ${IGNITION_DOXYGEN_TUTORIALS_DIR} ${IGNITION_DOXYGEN_TUTORIALS_MAINPAGE_MD} ${ign_doxygen_component_input_dirs}")
147 set(IGNITION_DOXYGEN_INPUT "${IGNITION_DOXYGEN_API_MAINPAGE_MD} ${IGNITION_DOXYGEN_AUTOGENERATED_DOC} ${IGNITION_DOXYGEN_TUTORIALS_DIR} ${IGNITION_DOXYGEN_TUTORIALS_MAINPAGE_MD} ${ign_doxygen_component_input_dirs} ${IGNITION_DOXYGEN_ADDITIONAL_INPUT_DIRS}")
137148 configure_file(${IGNITION_CMAKE_DOXYGEN_DIR}/api.in
138149 ${CMAKE_BINARY_DIR}/api.dox @ONLY)
139150
147158 set(IGNITION_DOXYGEN_GENHTML "NO")
148159 set(IGNITION_DOXYGEN_GENTAGFILE
149160 "${CMAKE_BINARY_DIR}/${PROJECT_NAME_LOWER}.tag.xml")
150 set(IGNITION_DOXYGEN_INPUT "${ign_doxygen_component_input_dirs}")
161 set(IGNITION_DOXYGEN_INPUT "${ign_doxygen_component_input_dirs} ${IGNITION_DOXYGEN_AUTOGENERATED_DOC}")
151162 configure_file(${IGNITION_CMAKE_DOXYGEN_DIR}/api.in
152163 ${CMAKE_BINARY_DIR}/api_tagfile.dox @ONLY)
153164
0 #===============================================================================
1 # Copyright (C) 2020 Open Source Robotics Foundation
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 #
15 ########################################
16 # ign_manual_search(<package> [INTERFACE]
17 # [HEADER_NAMES <header_names>]
18 # [LIBRARY_NAMES <library_names>]
19 # [TARGET_NAME <target_name>]
20 # [PATH_SUFFIXES <path_suffixes>]])
21 #
22 # This macro will find a library based on the name of one of its headers,
23 # and the library name.
24 # It is used inside Find***.cmake scripts, typicall as fallback for a
25 # ign_pkg_check_modules_quiet call.
26 # It will create an imported target for the library
27 #
28 # INTERFACE: Optional. Use INTERFACE when the target does not actually provide
29 # a library that needs to be linked against (e.g. it is a header-only
30 # library, or the target is just used to specify compiler flags).
31 #
32 # HEADER_NAMES: Optional. Explicitly specify the header names to search with find_path.
33 # Default is <package>.h.
34 #
35 # LIBRARY_NAMES: Optional. Explicitly specify the names of the library to search with find_library.
36 # Default is <package>.
37 #
38 # TARGET_NAME: Optional. Explicitly specify the desired imported target name.
39 # Default is <package>::<package>.
40 #
41 # PATH_SUFFIXES: Optional. Parameter forwarded to the find_path and find_library calls.
42 #
43 macro(ign_manual_search package)
44
45 #------------------------------------
46 # Define the expected arguments
47 set(options INTERFACE)
48 set(oneValueArgs "TARGET_NAME")
49 set(multiValueArgs "HEADER_NAMES" "LIBRARY_NAMES" "PATH_SUFFIXES")
50
51 #------------------------------------
52 # Parse the arguments
53 _ign_cmake_parse_arguments(ign_manual_search "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
54
55 if(ign_manual_search_INTERFACE)
56 set(_ign_manual_search_interface_option INTERFACE)
57 else()
58 set(_ign_manual_search_interface_option) # Intentionally blank
59 endif()
60
61 if(NOT ign_manual_search_HEADER_NAMES)
62 set(ign_manual_search_HEADER_NAMES "${package}.h")
63 endif()
64
65 if(NOT ign_manual_search_LIBRARY_NAMES)
66 set(ign_manual_search_LIBRARY_NAMES "${package}")
67 endif()
68
69 if(NOT ign_manual_search_TARGET_NAME)
70 set(ign_manual_search_TARGET_NAME "${package}::${package}")
71 endif()
72
73 find_path(${package}_INCLUDE_DIRS
74 NAMES ${ign_manual_search_HEADER_NAMES}
75 PATH_SUFFIXES ${ign_manual_search_PATH_SUFFIXES})
76 find_library(${package}_LIBRARIES
77 NAMES ${ign_manual_search_LIBRARY_NAMES}
78 PATH_SUFFIXES ${ign_manual_search_PATH_SUFFIXES})
79
80 mark_as_advanced(${package}_INCLUDE_DIRS)
81 mark_as_advanced(${package}_LIBRARIES)
82
83 set(${package}_FOUND true)
84
85 if(NOT ${package}_INCLUDE_DIRS)
86 set(${package}_FOUND false)
87 endif()
88
89 if(NOT ${package}_LIBRARIES)
90 set(${package}_FOUND false)
91 endif()
92
93 if(${package}_FOUND)
94 include(IgnImportTarget)
95 ign_import_target(${package} ${_ign_pkg_check_modules_interface_option}
96 TARGET_NAME ${ign_pkg_check_modules_TARGET_NAME})
97 endif()
98
99 endmacro()
398398
399399 # Append the entry as a string onto the project-wide variable for
400400 # whichever requirement type we selected
401 ign_string_append(PROJECT_${${PACKAGE_NAME}_PKGCONFIG_TYPE} ${${PACKAGE_NAME}_PKGCONFIG_ENTRY})
401 ign_string_append(PROJECT_${PROJECT_${PACKAGE_NAME}_PKGCONFIG_TYPE} ${${PACKAGE_NAME}_PKGCONFIG_ENTRY})
402402
403403 endif()
404404
1111 prerelease
1212 core_nodep
1313 core_child
14 core_child_private
1415 comp_deps
1516 )
1617 if (NOT CMAKE_GENERATOR MATCHES "Visual Studio")
3637 set(run_codecheck true)
3738 elseif (${example} STREQUAL "core_child")
3839 set(example_tarball_name ignition-core_child-0.1.0.tar.bz2)
40 set(run_codecheck true)
41 elseif (${example} STREQUAL "core_child_private")
42 set(example_tarball_name ignition-core_child_private-0.1.0.tar.bz2)
3943 set(run_codecheck true)
4044 elseif (${example} STREQUAL "comp_deps")
4145 set(example_tarball_name ignition-component_deps-0.1.0.tar.bz2)
147151 # need to exist before they can be used there
148152 foreach (build_type ${build_types})
149153 add_dependencies(core_child_${build_type} core_nodep_${build_type})
154 add_dependencies(core_child_private_${build_type} core_nodep_${build_type})
150155 if (TARGET use_component_depsA_${build_type})
151156 add_dependencies(use_component_depsA_${build_type} comp_deps_${build_type})
152157 endif()
159164 endforeach()
160165
161166 # test that core_child pkg-config file requires core_nodep
167 # and that core_child_private pkg-config file requires core_nodep privately
162168 if (UNIX)
163169 set(TEST_NAME core_child_requires_core_nodep)
164170 string(TIMESTAMP TEST_TIME)
0 cmake_minimum_required(VERSION 3.10.2 FATAL_ERROR)
1 project(ignition-core_child_private VERSION 0.1.0)
2 find_package(ignition-cmake2 REQUIRED)
3 ign_configure_project()
4 ign_find_package(ignition-core_no_deps PRIVATE REQUIRED)
5 ign_configure_build(QUIT_IF_BUILD_ERRORS)
6 ign_create_packages()
7 ign_create_docs(TAGFILES "${IGNITION-CORE_NO_DEPS_DOXYGEN_TAGFILE} = ${IGNITION-CORE_NO_DEPS_API_URL}")
0 ign_get_libsources_and_unittests(sources gtest_sources)
1 ign_create_core_library(SOURCES ${sources} CXX_STANDARD 11)
2 target_link_libraries(${PROJECT_LIBRARY_TARGET_NAME}
3 PRIVATE
4 ignition-core_no_deps::ignition-core_no_deps)
5 ign_build_tests(TYPE UNIT SOURCES ${gtest_sources})
0 /*
1 * Copyright (C) 2020 Open Source Robotics Foundation
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 *
15 */
16
00 #!/bin/bash
1 if pkg-config ignition-core_child --print-requires \
1 TEST_STATUS=0
2
3 echo
4 echo Expect ignition-core_child to require ignition-core_no_deps
5 pkg-config ignition-core_child --print-requires
6 if ! pkg-config ignition-core_child --print-requires \
27 | grep ignition-core_no_deps
38 then
4 echo Successfully detected ignition-core_nodep requirement
9 echo oops
10 TEST_STATUS=1
11 fi
12
13 echo
14 echo Expect ignition-core_child to not privately require ignition-core_no_deps
15 pkg-config ignition-core_child --print-requires-private
16 if pkg-config ignition-core_child --print-requires-private \
17 | grep ignition-core_no_deps
18 then
19 echo oops
20 TEST_STATUS=1
21 fi
22
23 echo
24 echo Expect ignition-core_child_private to privately require ignition-core_no_deps
25 pkg-config ignition-core_child_private --print-requires-private
26 if ! pkg-config ignition-core_child_private --print-requires-private \
27 | grep ignition-core_no_deps
28 then
29 echo oops
30 TEST_STATUS=1
31 fi
32
33 echo
34 echo Expect ignition-core_child_private to not require ignition-core_no_deps
35 pkg-config ignition-core_child_private --print-requires
36 if pkg-config ignition-core_child_private --print-requires \
37 | grep ignition-core_no_deps
38 then
39 echo oops
40 TEST_STATUS=1
41 fi
42
43 echo
44 if [[ $TEST_STATUS -eq 0 ]]
45 then
46 echo Successfully detected ignition-core_nodep requirements
547 cp core_child_requires_core_nodep_pass.xml ../test_results/core_child_requires_core_nodep.xml
648 exit 0
749 else
8 echo Could not detect ignition-core_nodep requirement
50 echo Could not detect all ignition-core_nodep requirements correctly
951 cp core_child_requires_core_nodep_fail.xml ../test_results/core_child_requires_core_nodep.xml
1052 exit 1
1153 fi
0 /*
1 * Copyright (C) 2020 Open Source Robotics Foundation
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 *
15 */
16
17 #ifndef IGNITION_UTILITIES_EXTRATESTMACROS_HH
18 #define IGNITION_UTILITIES_EXTRATESTMACROS_HH
19
20 #include <ignition/utilities/detail/ExtraTestMacros.hh>
21
22 /// \brief Restrict the execution of the test for the Windows platform.
23 /// The test will be compiled on Windows too but will never be run as
24 /// part of the test suite. The macro uses the Disabled_ prefix provided
25 /// by googletest. See
26 /// https://chromium.googlesource.com/external/github.com/google/googletest/+/HEAD/googletest/docs/advanced.md
27 #define IGN_UTILS_TEST_DISABLED_ON_WIN32(TestName) \
28 DETAIL_IGN_UTILS_TEST_DISABLED_ON_WIN32(TestName)
29
30 /// \brief Restrict the execution of the test for the Mac platform.
31 /// The test will be compiled on Windows too but will never be run as
32 /// part of the test suite. The macro uses the Disabled_ prefix provided
33 /// by googletest. See
34 /// https://chromium.googlesource.com/external/github.com/google/googletest/+/HEAD/googletest/docs/advanced.md
35 #define IGN_UTILS_TEST_DISABLED_ON_MAC(TestName) \
36 DETAIL_IGN_UTILS_TEST_DISABLED_ON_MAC(TestName)
37
38 /// \brief Restrict the execution of the test to just the Linux platform
39 /// Other platforms will get the test compiled but it won't be run
40 /// as part of the test suite execution.
41 /// The macro uses the Disabled_ prefix provided by googletest. See
42 /// https://chromium.googlesource.com/external/github.com/google/googletest/+/HEAD/googletest/docs/advanced.md
43 #define IGN_UTILS_TEST_ENABLED_ONLY_ON_LINUX(TestName) \
44 DETAIL_IGN_UTILS_TEST_ENABLED_ONLY_ON_LINUX(TestName)
45
46 #endif
0 /*
1 * Copyright (C) 2020 Open Source Robotics Foundation
2 *
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 *
15 */
16
17 #ifndef IGNITION_UTILITIES_DETAIL_EXTRATESTMACROS_HH
18 #define IGNITION_UTILITIES_DETAIL_EXTRATESTMACROS_HH
19
20 #include <ignition/utilities/SuppressWarning.hh>
21
22 #define DETAIL_IGN_UTILS_ADD_DISABLED_PREFIX(x) DISABLED_##x
23
24 #if defined _WIN32
25
26 #define DETAIL_IGN_UTILS_TEST_DISABLED_ON_WIN32(TestName) \
27 DETAIL_IGN_UTILS_ADD_DISABLED_PREFIX(TestName)
28
29 #else
30
31 #define DETAIL_IGN_UTILS_TEST_DISABLED_ON_WIN32(TestName) \
32 TestName
33
34 #endif
35
36 #if defined __APPLE__
37
38 #define DETAIL_IGN_UTILS_TEST_DISABLED_ON_MAC(TestName) \
39 DETAIL_IGN_UTILS_ADD_DISABLED_PREFIX(TestName)
40
41 #else
42
43 #define DETAIL_IGN_UTILS_TEST_DISABLED_ON_MAC(TestName) \
44 TestName
45
46 #endif
47
48 #if defined __linux__
49
50 #define DETAIL_IGN_UTILS_TEST_ENABLED_ONLY_ON_LINUX(TestName) \
51 TestName
52
53 #else
54
55 #define DETAIL_IGN_UTILS_TEST_ENABLED_ONLY_ON_LINUX(TestName) \
56 DETAIL_IGN_UTILS_ADD_DISABLED_PREFIX(TestName)
57
58 #endif
59
60
61 #endif
33 # that there are no doxygen warnings. For example, if you're using bitbucket
44 # pipelines then you can add the following line to your bitbucket-pipelines.yml
55 # file:
6 # - bash <(curl -s https://bitbucket.org/ignitionrobotics/ign-cmake/raw/9db5e5487bc4b979b2f602d0b43b7074e010a0c8/tools/doc_check.sh)
6 # - bash <(curl -s https://github.com/ignitionrobotics/ign-cmake/raw/master/tools/doc_check.sh)
77 if [ -f ignition-doxygen.warn ]; then
88 if [ -s ignition-doxygen.warn ]; then
99 echo "Error. The following warnings were found in ignition-doxygen.warn."