Compare commits

...

10 Commits
v0.1 ... v0.3

Author SHA1 Message Date
Lars Melchior
e368fce6c3 Add CPM_RESET (#4)
* added CPM_RESET option

* update readme

* Update README.md
2019-04-09 20:01:27 +02:00
Lars Melchior
f8e571e416 Merge pull request #3 from TheLartians/dev
update parser version
2019-04-09 18:04:44 +02:00
Lars Melchior
e565e35397 Merge branch 'master' into dev 2019-04-09 17:30:48 +02:00
Lars Melchior
702f413801 update Parser lib 2019-04-09 17:30:18 +02:00
Lars Melchior
03b2dd0cb9 Merge pull request #2 from TheLartians/dev
update readme
2019-04-09 17:19:53 +02:00
Lars Melchior
4badcddc5d update readme 2019-04-09 17:10:44 +02:00
Lars Melchior
72371bcc8b Merge pull request #1 from TheLartians/dev
remove test log
2019-04-09 17:07:51 +02:00
Lars Melchior
0798050d6d Merge branch 'master' into dev 2019-04-09 17:00:22 +02:00
Lars Melchior
ffa310199a remove test log 2019-04-09 16:59:49 +02:00
Lars Melchior
cd3cdfd197 Update README.md 2019-04-09 16:49:19 +02:00
5 changed files with 34 additions and 11 deletions

View File

@@ -18,7 +18,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/cmake/CPM.cmake)
CPMAddPackage(
NAME LarsParser
VERSION 1.2
VERSION 1.4
GIT_REPOSITORY https://github.com/TheLartians/Parser.git
GIT_TAG master # optional
)
@@ -29,6 +29,18 @@ add_executable(my-parser my-parser.cpp)
target_link_libraries(cpm-test LarsParser)
```
# Update packages
To update packages, run cmake with the additional option `-DCPM_RESET=ON`. To keep the project working offline after the update, set `-DCPM_RESET=OFF` afterwards.
# Installation
To add CPM to your current project, copy the scripts in the `cmake` directory into you current project project. The command below will perform this automatically.
```bash
wget -qO- https://github.com/TheLartians/CPM/releases/download/v0.3/cmake.zip | bsdtar -xvf-
```
# Limitations
- First version used: in diamond dependency graphs (e.g. `A` depends on `C`(v1.1) and `A` depends on `B` depends on `C`(v1.2)) the first added dependency will be used (in this case `C`@1.1).

View File

@@ -2,10 +2,13 @@ set(_CPM_Dir "${CMAKE_CURRENT_LIST_DIR}")
include(CMakeParseArguments)
include(${_CPM_Dir}/DownloadProject.cmake)
function(CPMHasPackage)
endfunction()
option(CPM_RESET "reset CPM" OFF)
if(${CPM_RESET})
message(STATUS "CPM: resetting packages")
set(CPM_PACKAGES "" CACHE INTERNAL "CPM Packages")
endif()
function(CPMAddPackage)
set(options QUIET)
@@ -16,6 +19,7 @@ function(CPMAddPackage)
VERSION
GIT_TAG
BINARY_DIR
UPDATE_DISCONNECTED
)
set(multiValueArgs "")
@@ -30,7 +34,14 @@ function(CPMAddPackage)
set(CPM_ARGS_BINARY_DIR ${CMAKE_BINARY_DIR}/CPM-projects/${CPM_ARGS_NAME})
endif()
message("test: ${CPM_ARGS_BINARY_DIR}")
if (NOT CPM_ARGS_UPDATE_DISCONNECTED)
if (${CPM_RESET})
set(CPM_ARGS_UPDATE_DISCONNECTED OFF)
else()
set(CPM_ARGS_UPDATE_DISCONNECTED ON)
endif()
endif()
if (NOT CPM_PROJECT_DIR)
set(CPM_PROJECT_DIR "${CPM_ARGS_BINARY_DIR}")

View File

@@ -17,7 +17,7 @@ else()
PROJ @CPM_ARGS_NAME@
GIT_REPOSITORY @CPM_ARGS_GIT_REPOSITORY@
GIT_TAG @CPM_ARGS_GIT_TAG@
UPDATE_DISCONNECTED 1
UPDATE_DISCONNECTED @CPM_ARGS_UPDATE_DISCONNECTED@
GIT_SHALLOW 1
PREFIX @CPM_ARGS_BINARY_DIR@/dl
QUIET

View File

@@ -7,7 +7,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/../../cmake/CPM.cmake)
CPMAddPackage(
NAME LHC
GIT_REPOSITORY https://github.com/TheLartians/LHC.git
VERSION 0.3
VERSION 0.4
)
CPMAddPackage(
@@ -21,14 +21,14 @@ CPMAddPackage(
CPMAddPackage(
NAME LarsParser
GIT_REPOSITORY https://github.com/TheLartians/Parser.git
VERSION 1.3
VERSION 1.4
)
# add project twice
# add project twice (will be ignored)
CPMAddPackage(
NAME LHC
GIT_REPOSITORY https://github.com/TheLartians/LHC.git
VERSION 0.3
VERSION 0.1
)
# add executable

View File

@@ -8,7 +8,7 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/../../cmake/CPM.cmake)
CPMAddPackage(
NAME LarsParser
GIT_REPOSITORY https://github.com/TheLartians/Parser.git
VERSION 1.3
VERSION 1.4
)
# add executable