Skip to content

Commit 22f0e5e

Browse files
committed
added an init implementation for lazy
1 parent 6235b21 commit 22f0e5e

38 files changed

+3018
-610
lines changed

.github/CODEOWNERS

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,6 @@
11
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
22
# Codeowners for reviews on PRs
33

4-
# Note(river):
5-
# **Please understand how codeowner file work before uncommenting anything in this section:**
6-
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
7-
#
8-
# For projects using exemplar as a template and intend to reuse its infrastructure,
9-
# River (@wusatosi) helped create most of the original infrastructure under the scope described below,
10-
# they are more than happy to help out with any PRs downstream,
11-
# as well as to sync any useful change upstream to exemplar.
12-
#
134
# Github Actions:
145
# .github/workflows/ @wusatosi # Add other project owners here
156
#

.github/workflows/ci_tests.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -119,17 +119,17 @@ jobs:
119119
# Portable commands only
120120
cmake --build build --config Release --verbose
121121
cmake --build build --config Release --target all_verify_interface_header_sets
122-
cmake --install build --config Release --prefix /opt/beman.exemplar
123-
ls -R /opt/beman.exemplar
122+
cmake --install build --config Release --prefix /opt/beman.lazy
123+
ls -R /opt/beman.lazy
124124
- name: Test Release
125125
run: ctest --test-dir build --build-config Release
126126
- name: Build Debug
127127
run: |
128128
# Portable commands only
129129
cmake --build build --config Debug --verbose
130130
cmake --build build --config Debug --target all_verify_interface_header_sets
131-
cmake --install build --config Debug --prefix /opt/beman.exemplar
132-
ls -R /opt/beman.exemplar
131+
cmake --install build --config Debug --prefix /opt/beman.lazy
132+
ls -R /opt/beman.lazy
133133
- name: Test Debug
134134
run: ctest --test-dir build --build-config Debug
135135

@@ -139,9 +139,9 @@ jobs:
139139
matrix:
140140
args:
141141
- name: "Disable build testing"
142-
arg: "-DBEMAN_EXEMPLAR_BUILD_TESTS=OFF"
142+
arg: "-DBEMAN_LAZY_BUILD_TESTS=OFF"
143143
- name: "Disable example building"
144-
arg: "-DBEMAN_EXEMPLAR_BUILD_EXAMPLES=OFF"
144+
arg: "-DBEMAN_LAZY_BUILD_EXAMPLES=OFF"
145145
name: "CMake: ${{ matrix.args.name }}"
146146
steps:
147147
- uses: actions/checkout@v4
@@ -164,15 +164,15 @@ jobs:
164164
# Portable commands only
165165
cmake --build build --config Release --verbose
166166
cmake --build build --config Release --target all_verify_interface_header_sets
167-
cmake --install build --config Release --prefix /opt/beman.exemplar
168-
ls -R /opt/beman.exemplar
167+
cmake --install build --config Release --prefix /opt/beman.lazy
168+
ls -R /opt/beman.lazy
169169
- name: Build Debug
170170
run: |
171171
# Portable commands only
172172
cmake --build build --config Debug --verbose
173173
cmake --build build --config Debug --target all_verify_interface_header_sets
174-
cmake --install build --config Debug --prefix /opt/beman.exemplar
175-
ls -R /opt/beman.exemplar
174+
cmake --install build --config Debug --prefix /opt/beman.lazy
175+
ls -R /opt/beman.lazy
176176
177177
compiler-test:
178178
runs-on: ubuntu-24.04
@@ -240,8 +240,8 @@ jobs:
240240
run: |
241241
cmake --build build --config Debug --verbose
242242
cmake --build build --config Debug --target all_verify_interface_header_sets
243-
cmake --install build --config Debug --prefix /opt/beman.exemplar
244-
find /opt/beman.exemplar -type f
243+
cmake --install build --config Debug --prefix /opt/beman.lazy
244+
find /opt/beman.lazy -type f
245245
- name: Test Debug
246246
run: ctest --test-dir build --build-config Debug
247247

CMakeLists.txt

Lines changed: 15 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -3,52 +3,45 @@
33
cmake_minimum_required(VERSION 3.25)
44

55
project(
6-
beman.exemplar # CMake Project Name, which is also the name of the top-level
6+
beman.lazy # CMake Project Name, which is also the name of the top-level
77
# targets (e.g., library, executable, etc.).
8-
DESCRIPTION "A Beman library exemplar"
8+
DESCRIPTION "A Beman library lazy (coroutine task)"
99
LANGUAGES CXX
1010
)
1111

1212
enable_testing()
1313

1414
# [CMAKE.SKIP_TESTS]
1515
option(
16-
BEMAN_EXEMPLAR_BUILD_TESTS
16+
BEMAN_LAZY_BUILD_TESTS
1717
"Enable building tests and test infrastructure. Default: ON. Values: { ON, OFF }."
1818
${PROJECT_IS_TOP_LEVEL}
1919
)
2020

2121
# [CMAKE.SKIP_EXAMPLES]
2222
option(
23-
BEMAN_EXEMPLAR_BUILD_EXAMPLES
23+
BEMAN_LAZY_BUILD_EXAMPLES
2424
"Enable building examples. Default: ON. Values: { ON, OFF }."
2525
${PROJECT_IS_TOP_LEVEL}
2626
)
2727

2828
include(FetchContent)
2929
include(GNUInstallDirs)
3030

31-
if(BEMAN_EXEMPLAR_BUILD_TESTS)
32-
# Fetch GoogleTest
33-
FetchContent_Declare(
34-
googletest
35-
GIT_REPOSITORY https://github.com/google/googletest.git
36-
GIT_TAG
37-
f8d7d77c06936315286eb55f8de22cd23c188571 # release-1.14.0
38-
EXCLUDE_FROM_ALL
39-
)
40-
block()
41-
set(INSTALL_GTEST OFF) # Disable GoogleTest installation
42-
FetchContent_MakeAvailable(googletest)
43-
endblock()
44-
endif()
31+
FetchContent_Declare(
32+
execution26
33+
# for local development, use SOURCE_DIR <path-to>/execution26
34+
GIT_REPOSITORY https://github.com/bemanproject/execution26
35+
GIT_TAG ba3abd3
36+
)
37+
FetchContent_MakeAvailable(execution26)
4538

46-
add_subdirectory(src/beman/exemplar)
39+
add_subdirectory(src/beman/lazy)
4740

48-
if(BEMAN_EXEMPLAR_BUILD_TESTS)
49-
add_subdirectory(tests/beman/exemplar)
41+
if(BEMAN_LAZY_BUILD_TESTS)
42+
add_subdirectory(tests/beman/lazy)
5043
endif()
5144

52-
if(BEMAN_EXEMPLAR_BUILD_EXAMPLES)
45+
if(BEMAN_LAZY_BUILD_EXAMPLES)
5346
add_subdirectory(examples)
5447
endif()

0 commit comments

Comments
 (0)