Skip to content
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
1 change: 1 addition & 0 deletions .devcontainer
Submodule .devcontainer added at 6c07d0
78 changes: 78 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
CMakeLists.txt text eol=lf
Dockerfile text eol=lf
.gitattributes text eol=lf
*.c text eol=lf
*.cfg text eol=lf
*.cls text eol=lf
*.cmake text eol=lf
*.conf text eol=lf
*.cpp text eol=lf
*.cs text eol=lf
*.css text eol=lf
*.csv text eol=lf
*.cu text eol=lf
*.cuh text eol=lf
*.cuhpp text eol=lf
*.cuhpp linguist-detectable
*.cuhpp linguist-language=C++
*.dae text eol=lf
*.dockerfile text eol=lf
*.dot text eol=lf
*.eps text eol=lf
*.fbs text eol=lf
*.h text eol=lf
*.h.in text eol=lf
*.hpp text eol=lf
*.hpp.in text eol=lf
*.hrc text eol=lf
*.html text eol=lf
*.js text eol=lf
*.json text eol=lf
*.less text eol=lf
*.lua text eof=lf
*.md text eol=lf
*.pjd text eol=lf
*.proto text eol=lf
*.rc text eol=lf
*.rch text eol=lf
*.scss text eol=lf
*.sh text eol=lf
*.svg text eol=lf
*.tex text eol=lf
*.ts text eol=lf
*.txt text eol=lf
*.type text eol=lf
*.xml text eol=lf
*.xpm text eol=lf
*.xsd text eol=lf
*.yml text eol=lf
.*rc text eol=lf
####################
*.csproj.in text eol=crlf
*.filters text eol=crlf
*.m text eol=crlf
*.resx text eol=crlf
*.rst text eol=crlf
*.sln text eol=crlf
*.sql text eol=crlf
*.vcproj text eol=crlf
*.vcxproj text eol=crlf
####################
*.bin binary
*.bmp binary
*.db binary
*.doc binary
*.eap binary
*.gif binary
*.ico binary
*.jpeg binary
*.jpg binary
*.mp3 binary
*.ntf binary
*.pdf binary
*.png binary
*.rtf binary
*.vsd binary
*.xcf binary
*.xlsx binary
*.zip binary
30 changes: 30 additions & 0 deletions .github/workflows/xpbuild.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Build
on:
push:
branches: [ "dev" ]
pull_request:
branches: [ "dev" ]
workflow_dispatch:
jobs:
linux:
uses: externpro/externpro/.github/workflows/build-linux.yml@25.05.1
with:
cmake-workflow-preset: LinuxRelease
runon: ubuntu-latest
secrets: inherit
linux-arm64:
uses: externpro/externpro/.github/workflows/build-linux.yml@25.05.1
with:
cmake-workflow-preset: LinuxRelease
runon: ubuntu-24.04-arm
secrets: inherit
macos:
uses: externpro/externpro/.github/workflows/build-macos.yml@25.05.1
with:
cmake-workflow-preset: DarwinRelease
secrets: inherit
windows:
uses: externpro/externpro/.github/workflows/build-windows.yml@25.05.1
with:
cmake-workflow-preset: WindowsRelease
secrets: inherit
20 changes: 20 additions & 0 deletions .github/workflows/xprelease.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Release
on:
workflow_dispatch:
inputs:
workflow_run_url:
description: 'URL of the workflow run containing artifacts to upload (e.g., https://github.com/owner/repo/actions/runs/123456789)'
required: true
type: string
jobs:
# Upload build artifacts as release assets
release-from-build:
uses: externpro/externpro/.github/workflows/release-from-build.yml@25.05.1
with:
workflow_run_url: ${{ github.event.inputs.workflow_run_url }}
artifact_pattern: "*.tar.xz"
permissions:
contents: write
id-token: write
attestations: write
secrets: inherit
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.env
_bld*/
docker-compose.override.yml
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule ".devcontainer"]
path = .devcontainer
url = https://github.com/externpro/externpro
19 changes: 12 additions & 7 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,22 +1,27 @@
cmake_minimum_required(VERSION 3.31)
set(CMAKE_PROJECT_TOP_LEVEL_INCLUDES .devcontainer/cmake/xproinc.cmake)
project(wxInclude)
include(GNUInstallDirs)
include(xpflags)
xpFindPkg(PKGS boost)
add_executable(${CMAKE_PROJECT_NAME} wxInclude.cpp)
target_link_libraries(${CMAKE_PROJECT_NAME} PRIVATE Boost::filesystem Boost::program_options Boost::timer)
string(TOLOWER ${PROJECT_NAME} prj)
install(TARGETS ${CMAKE_PROJECT_NAME} EXPORT ${prj}-targets
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
set(exe ${CMAKE_PROJECT_NAME})
if(DEFINED XP_NAMESPACE)
set(nameSpace NAMESPACE ${XP_NAMESPACE}::)
string(PREPEND exe "${XP_NAMESPACE}::")
endif()
if(NOT DEFINED XP_INSTALL_CMAKEDIR)
set(XP_INSTALL_CMAKEDIR ${CMAKE_INSTALL_DATADIR}/cmake)
endif()
install(EXPORT ${prj}-targets DESTINATION ${XP_INSTALL_CMAKEDIR} ${nameSpace})
string(TOLOWER ${PROJECT_NAME} prj)
set(targetsFile ${prj}-targets)
xpPackageDevel(TARGETS_FILE ${targetsFile} EXE ${exe})
install(TARGETS ${CMAKE_PROJECT_NAME} EXPORT ${targetsFile}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
)
install(EXPORT ${targetsFile} DESTINATION ${XP_INSTALL_CMAKEDIR} ${nameSpace})
add_executable(decompressor decompress.cpp)
target_link_libraries(decompressor PRIVATE Boost::filesystem Boost::iostreams)
8 changes: 8 additions & 0 deletions CMakePresets.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"version": 8,
"include": [
".devcontainer/cmake/presets/xpLinuxNinja.json",
".devcontainer/cmake/presets/xpDarwinNinja.json",
".devcontainer/cmake/presets/xpWindowsVs2022.json"
]
}
13 changes: 13 additions & 0 deletions CMakePresetsBase.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"version": 8,
"configurePresets": [
{
"name": "config-base",
"hidden": true,
"binaryDir": "${sourceDir}/_bld-${presetName}",
"cacheVariables": {
"XP_NAMESPACE": "xpro"
}
}
]
}
1 change: 1 addition & 0 deletions docker-compose.sh
1 change: 1 addition & 0 deletions docker-compose.yml