Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev #7

Merged
merged 10 commits into from
Aug 25, 2024
Merged
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
19 changes: 19 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Set the default behavior, in case people don't have core.autocrlf set.
* text=auto

# Explicitly declare text files you want to always be normalized and converted
# to native line endings on checkout.
# *.c text
# *.h text

# Declare files that will always have CRLF line endings on checkout.
*.sln text eol=crlf
*.vcproj text eol=crlf

# Declare files that will always have LF line endings on checkout.
*.sh text eol=lf
id_dsa text eol=lf

# Denote all files that are truly binary and should not be modified.
*.png binary
*.jpg binary
114 changes: 57 additions & 57 deletions .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
@@ -1,57 +1,57 @@
name: CMake

on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
WS_DIR: /__w/ceutil/ceutil
INSTALL_DIR: /usr/local

jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest
container: yan9a/cebian:latest

steps:
- uses: actions/checkout@v3

- name: Configure CMake for Lib
run: cmake -B ${{env.WS_DIR}}/build -S ${{env.WS_DIR}} -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_DIR}}

- name: Build Lib
run: cmake --build ${{env.WS_DIR}}/build --config ${{env.BUILD_TYPE}}

- name: Install Lib
run: cmake --install ${{env.WS_DIR}}/build --config ${{env.BUILD_TYPE}}

- name: Configure CMake for unit tests
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
# run: pwd && cmake -B ${{env.WS_DIR}}/test/build -S ${{env.WS_DIR}}/test -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
run: cmake -B ${{env.WS_DIR}}/test/build -S ${{env.WS_DIR}}/test -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}

- name: Build unit tests
# Build your program with the given configuration
run: cmake --build ${{env.WS_DIR}}/test/build --config ${{env.BUILD_TYPE}}

- name: Run unit tests
#working-directory: ${{github.workspace}}/mytests/build
working-directory: ${{env.WS_DIR}}/test/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}}

- name: Configure CMake for examples
run: cmake -B ${{env.WS_DIR}}/examples/build -S ${{env.WS_DIR}}/examples -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}

- name: Build examples
# Build your program with the given configuration
run: cmake --build ${{env.WS_DIR}}/examples/build --config ${{env.BUILD_TYPE}}
name: CMake
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
WS_DIR: /__w/ceutil/ceutil
INSTALL_DIR: /usr/local
jobs:
build:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest
container: yan9a/cebian:latest
steps:
- uses: actions/checkout@v3
- name: Configure CMake for Lib
run: cmake -B ${{env.WS_DIR}}/build -S ${{env.WS_DIR}} -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_INSTALL_PREFIX=${{env.INSTALL_DIR}}
- name: Build Lib
run: cmake --build ${{env.WS_DIR}}/build --config ${{env.BUILD_TYPE}}
- name: Install Lib
run: cmake --install ${{env.WS_DIR}}/build --config ${{env.BUILD_TYPE}}
- name: Configure CMake for unit tests
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
# See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
# run: pwd && cmake -B ${{env.WS_DIR}}/test/build -S ${{env.WS_DIR}}/test -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
run: cmake -B ${{env.WS_DIR}}/test/build -S ${{env.WS_DIR}}/test -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
- name: Build unit tests
# Build your program with the given configuration
run: cmake --build ${{env.WS_DIR}}/test/build --config ${{env.BUILD_TYPE}}
- name: Run unit tests
#working-directory: ${{github.workspace}}/mytests/build
working-directory: ${{env.WS_DIR}}/test/build
# Execute tests defined by the CMake configuration.
# See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
run: ctest -C ${{env.BUILD_TYPE}}
# - name: Configure CMake for examples
# run: cmake -B ${{env.WS_DIR}}/examples/build -S ${{env.WS_DIR}}/examples -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
# - name: Build examples
# # Build your program with the given configuration
# run: cmake --build ${{env.WS_DIR}}/examples/build --config ${{env.BUILD_TYPE}}
94 changes: 47 additions & 47 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,47 +1,47 @@
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app

out/
build/
buildw/
cmake-build-debug/
ceutil/
.vs/
.vscode/
.idea/
x64/
*.log
*.vcxproj.user
Testing/
Debug/
Release/
# Prerequisites
*.d
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
*.smod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
out/
build/
buildw/
cmake-build-debug/
ceutil/
.vs/
.vscode/
.idea/
x64/
*.log
*.vcxproj.user
Testing/
Debug/
Release/
10 changes: 5 additions & 5 deletions CMakeCPack.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
include(InstallRequiredSystemLibraries)
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE")
# set(CPACK_PROJECT_NAME ${PROJECT_NAME})
# set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)
include(InstallRequiredSystemLibraries)
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE")
# set(CPACK_PROJECT_NAME ${PROJECT_NAME})
# set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)
Loading
Loading