Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# abcmake - Simple CMake for Simple Projects

![version](https://img.shields.io/badge/version-5.1.2-green)
![version](https://img.shields.io/badge/version-5.2.0-green)
[![Build Test](https://github.com/an-dr/abcmake/actions/workflows/test.yml/badge.svg)](https://github.com/an-dr/abcmake/actions/workflows/test.yml)

`abcmake` or **Andrei's Build CMake subsystem** is a CMake module to work with C/C++ project of a predefined standard structure in order to simplify the build process.
Expand Down Expand Up @@ -73,7 +73,7 @@ If you want to use the module in your project, you can use the badge:
- `add_component(TARGETNAME [INCLUDE_DIR SOURCE_DIR SHARED])` - Add a component as a library. It will scan the same default directories as *add_main_component*.
- `target_link_component (TARGETNAME COMPONENTPATH)` - Add a component to the target. Can be used for linking components between each other.
- `target_sources_directory(TARGETNAME SOURCE_DIR)` - Add all sources from the directory

- `set_abcmake_project_structure([COMPONENTS_DIR] [INCLUDE_DIR] [SOURCE_DIR] [INSTALL_DIR])` - Set the project structure. Must be called before any other extension function. The values are distributed to all subprojects automatically if not overwritten my other commands. Default values are **components**, **include**, **src**, and **../install**.

## Real Life Example (abcmake v5.1.1)

Expand Down
76 changes: 6 additions & 70 deletions abcmake.code-workspace
Original file line number Diff line number Diff line change
Expand Up @@ -36,72 +36,8 @@
"problemMatcher": []

},
// Cmake build
{
"label": "project: Configure",
"type": "shell",
"command": "cmake",
"args": [
"-G",
"Ninja",
"-B",
"build",
"-S ."
],
"group": {
"kind": "build",
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}/tests/project",
"env": {
"ABCMAKE_PATH": "${workspaceFolder}/src"
}
},
"problemMatcher": []
},
// Cmake build
{
"label": "project: Build",
"type": "shell",
"command": "cmake",
"args": [
"--build",
"build",
"--target",
"all",
"--config",
"Release"
],
"group": {
"kind": "build",
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}/tests/project"
},
"problemMatcher": [],
},
// Install to workspace/install
{
"label": "project: Install",
"type": "shell",
"command": "cmake",
"args": [
"--install",
"build",
],
"group": {
"kind": "build",
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}/tests/project",
},
"problemMatcher": [],
},
{
"label": "test_interdep: Configure",
"label": "project_custom: Configure",
"type": "shell",
"command": "cmake",
"args": [
Expand All @@ -116,7 +52,7 @@
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}/tests/test_interdep",
"cwd": "${workspaceFolder}/tests/project_custom",
"env": {
"ABCMAKE_PATH": "${workspaceFolder}/src"
}
Expand All @@ -125,7 +61,7 @@
},
// Cmake build
{
"label": "test_interdep: Build",
"label": "project_custom: Build",
"type": "shell",
"command": "cmake",
"args": [
Expand All @@ -141,13 +77,13 @@
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}/tests/test_interdep"
"cwd": "${workspaceFolder}/tests/project_custom"
},
"problemMatcher": [],
},
// Install to workspace/install
{
"label": "test_interdep: Install",
"label": "project_custom: Install",
"type": "shell",
"command": "cmake",
"args": [
Expand All @@ -159,7 +95,7 @@
"isDefault": true
},
"options": {
"cwd": "${workspaceFolder}/tests/test_interdep",
"cwd": "${workspaceFolder}/tests/project_custom",
},
"problemMatcher": [],
}
Expand Down
Loading