diff --git a/.devcontainer b/.devcontainer index f159fd7..2659643 160000 --- a/.devcontainer +++ b/.devcontainer @@ -1 +1 @@ -Subproject commit f159fd751d458175dfa5e2ee2651ee53e7508933 +Subproject commit 26596433a6e75f82174ae25041825c8a58d43d04 diff --git a/.github/workflows/xpbuild.yml b/.github/workflows/xpbuild.yml index fb55758..70e7cbb 100644 --- a/.github/workflows/xpbuild.yml +++ b/.github/workflows/xpbuild.yml @@ -1,4 +1,7 @@ name: Build +permissions: + contents: read + pull-requests: write on: push: branches: [ "dev" ] @@ -7,24 +10,21 @@ on: workflow_dispatch: jobs: linux: - uses: externpro/externpro/.github/workflows/build-linux.yml@25.05.1 - with: - cmake-workflow-preset: LinuxRelease - runon: ubuntu-latest + permissions: + contents: read + pull-requests: write + packages: write + uses: externpro/externpro/.github/workflows/build-linux.yml@25.07.1 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 + uses: externpro/externpro/.github/workflows/build-macos.yml@25.07.1 + secrets: inherit with: cmake-workflow-preset: DarwinRelease - secrets: inherit windows: - uses: externpro/externpro/.github/workflows/build-windows.yml@25.05.1 + uses: externpro/externpro/.github/workflows/build-windows.yml@25.07.1 + secrets: inherit with: cmake-workflow-preset: WindowsRelease - secrets: inherit diff --git a/.github/workflows/xprelease.yml b/.github/workflows/xprelease.yml index f868a82..dbac778 100644 --- a/.github/workflows/xprelease.yml +++ b/.github/workflows/xprelease.yml @@ -9,10 +9,9 @@ on: jobs: # Upload build artifacts as release assets release-from-build: - uses: externpro/externpro/.github/workflows/release-from-build.yml@25.05.1 + uses: externpro/externpro/.github/workflows/release-from-build.yml@25.07.1 with: workflow_run_url: ${{ github.event.inputs.workflow_run_url }} - artifact_pattern: "*.tar.xz" permissions: contents: write id-token: write diff --git a/CMakeLists.txt b/CMakeLists.txt index b252442..fdcd9a1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,9 +1,6 @@ cmake_minimum_required(VERSION 3.31) set(CMAKE_PROJECT_TOP_LEVEL_INCLUDES .devcontainer/cmake/xproinc.cmake) project(nasm VERSION 2.14.02) -include(xpflags) -include(GNUInstallDirs) -set(XP_INSTALL_CMAKEDIR ${CMAKE_INSTALL_DATADIR}/cmake) include(ExternalProject) set_property(DIRECTORY PROPERTY "EP_BASE" ${CMAKE_BINARY_DIR}/epbase) if(WIN32 AND NOT UNIX) @@ -19,9 +16,12 @@ if(WIN32 AND NOT UNIX) /LICENSE /share/LICENSE INSTALL_COMMAND "" ) - xpPackageDevel(EXE_PATH bin/nasm) + set(exePath EXE_PATH bin/nasm) ExternalProject_Get_Property(${PROJECT_NAME} INSTALL_DIR) install(DIRECTORY ${INSTALL_DIR}/ DESTINATION . USE_SOURCE_PERMISSIONS) -else() - xpPackageDevel() endif() +xpExternPackage(${exePath} BASE v0 XPDIFF "bin" + WEB "https://www.nasm.us/" + DESC "The Netwide Assembler - an 80x86 and x86-64 assembler (MSW-only)" + LICENSE "[BSD-2-Clause](https://www.nasm.us/ 'BSD 2-Clause Simplified License')" + ) diff --git a/CMakePresetsBase.json b/CMakePresetsBase.json index 09653d8..085cdc3 100644 --- a/CMakePresetsBase.json +++ b/CMakePresetsBase.json @@ -6,5 +6,11 @@ "hidden": true, "binaryDir": "${sourceDir}/_bld-${presetName}" } + ], + "buildPresets": [ + { + "name": "build-base", + "hidden": true + } ] }