diff --git a/.github/workflows/build-test-package.yml b/.github/workflows/build-test-package.yml
index 537d28c9..ede61aec 100644
--- a/.github/workflows/build-test-package.yml
+++ b/.github/workflows/build-test-package.yml
@@ -16,7 +16,7 @@ jobs:
build-linux:
runs-on: ubuntu-20.04
container:
- image: ghcr.io/howsoai/amalgam-build-container-linux:0.13.0
+ image: ghcr.io/howsoai/amalgam-build-container-linux:1.0.0
credentials:
username: ${{ github.actor }}
password: ${{ github.token }}
@@ -193,12 +193,10 @@ jobs:
- name: Smoke test
run: |
set -e
- BIN=./amalgam/bin
- echo -n "amalgam: " && $BIN/amalgam --version
- echo -n "amalgam-mt: " && $BIN/amalgam-mt --version
- echo -n "amalgam-mt-noavx: " && $BIN/amalgam-mt-noavx --version
- echo -n "amalgam-st: " && $BIN/amalgam-st --version
- echo -n "amalgam-omp: " && $BIN/amalgam-omp --version
+ cd ./amalgam/bin
+ for f in *; do
+ echo -n "$f: " && "./$f" --version
+ done
smoke-test-linux-arm64:
needs: ['build-linux']
@@ -222,11 +220,10 @@ jobs:
commands: |
set -e
PATH=$PATH:/usr/aarch64-linux-gnu
- BIN=./amalgam/bin
- echo -n "amalgam: " && $BIN/amalgam --version
- echo -n "amalgam-mt: " && $BIN/amalgam-mt --version
- echo -n "amalgam-st: " && $BIN/amalgam-st --version
- echo -n "amalgam-omp: " && $BIN/amalgam-omp --version
+ cd ./amalgam/bin
+ for f in *; do
+ echo -n "$f: " && "./$f" --version
+ done
smoke-test-linux-arm64_8a:
needs: ['build-linux']
@@ -250,9 +247,10 @@ jobs:
commands: |
set -e
PATH=$PATH:/usr/aarch64-linux-gnu
- BIN=./amalgam/bin
- echo -n "amalgam: " && $BIN/amalgam --version
- echo -n "amalgam-st: " && $BIN/amalgam-st --version
+ cd ./amalgam/bin
+ for f in *; do
+ echo -n "$f: " && "./$f" --version
+ done
smoke-test-macos-amd64:
needs: ['build-macos']
@@ -268,12 +266,38 @@ jobs:
mkdir ./amalgam
tar -xvf ./amalgam-${{ inputs.version }}-darwin-amd64.tar.gz -C ./amalgam
- # GitHub macos runner does not support AVX
+ # GitHub macOS runner does not support AVX
- name: Smoke test
run: |
set -e
- BIN=./amalgam/bin
- echo -n "amalgam-mt-noavx: " && $BIN/amalgam-mt-noavx --version
+ cd ./amalgam/bin
+ for f in *noavx*; do
+ echo -n "$f: " && "./$f" --version
+ done
+
+ # Turned off until GitHub runners support arm64 macOS
+ smoke-test-macos-arm64:
+ if: false
+ needs: ['build-macos']
+ runs-on: macos-latest
+ steps:
+ - name: Download Artifact
+ uses: actions/download-artifact@v3
+ with:
+ name: amalgam-${{ inputs.version }}-darwin-amd64
+
+ - name: Extract Amalgam
+ run: |
+ mkdir ./amalgam
+ tar -xvf ./amalgam-${{ inputs.version }}-darwin-arm64.tar.gz -C ./amalgam
+
+ - name: Smoke test
+ run: |
+ set -e
+ cd ./amalgam/bin
+ for f in *; do
+ echo -n "$f: " && "./$f" --version
+ done
smoke-test-windows-amd64:
needs: ['build-windows']
@@ -292,9 +316,7 @@ jobs:
- name: Smoke test
run: |
set -e
- BIN=./amalgam/bin
- echo -n "amalgam: " && $BIN/amalgam --version
- echo -n "amalgam-mt: " && $BIN/amalgam-mt --version
- echo -n "amalgam-mt-noavx: " && $BIN/amalgam-mt-noavx --version
- echo -n "amalgam-st: " && $BIN/amalgam-st --version
- echo -n "amalgam-omp: " && $BIN/amalgam-omp --version
+ cd ./amalgam/bin
+ for f in *; do
+ echo -n "$f: " && "./$f" --version
+ done
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d3c7b204..e6f41395 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -280,7 +280,6 @@ endif()
# Additional artifacts/test/etc
#
-include(create_no_suffix_artifacts)
include(create_tests)
include(create_package)
include(create_static_targets)
diff --git a/README.md b/README.md
index b878b524..19b54ba1 100644
--- a/README.md
+++ b/README.md
@@ -73,7 +73,7 @@ Pre-built binaries are provided for specific target systems. They are as statica
An interpreter application and shared library (dll/so/dylib) are built for each release. A versioned tarball is created for each target platform in the build matrix:
-| Platform | Variants 1,2 | Automated Testing | Notes |
+| Platform | Variants 1 | Automated Testing | Notes |
|------------------------------|-------------------------------|:------------------:|-------|
| Windows amd64 | MT, ST, OMP, MT-NoAVX | :heavy_check_mark: | |
| Linux amd64 | MT, ST, OMP, MT-NoAVX, ST-PGC | :heavy_check_mark: | ST-PGC is for testing only, not packaged for release |
@@ -107,8 +107,6 @@ An interpreter application and shared library (dll/so/dylib) are built for each
* Binary postfix: '-st-pgc'
* Interpreter does not use any threads and performs garbage collection at every operation
* Very slow by nature, intended only be used for verification during testing or debugging
-* 2 Most platforms create a bare binary with no postfix
- * These are just clones of their respective MT binary and can be used for better symlinking, cleaner library linking, and simpler CLI usage.
#### Build Tools
diff --git a/build/cmake/create_no_suffix_artifacts.cmake b/build/cmake/create_no_suffix_artifacts.cmake
deleted file mode 100644
index ec83b1ca..00000000
--- a/build/cmake/create_no_suffix_artifacts.cmake
+++ /dev/null
@@ -1,46 +0,0 @@
-#
-# No suffix default targets
-#
-
-# Don't create defaut targets for WASM
-if(NOT IS_WASM)
- # No suffix app target:
- set(NO_SUFFIX_APP_TARGET "${PROJECT_NAME}-mt-app")
- if(IS_ARM64_8A)
- # No mt target on arm64 8-a so default is based off st.
- set(NO_SUFFIX_APP_TARGET "${PROJECT_NAME}-st-app")
- endif()
- set(NO_SUFFIX_APP_NAME "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}${CMAKE_EXECUTABLE_SUFFIX}")
- add_custom_target("create-no-suffix-app" ALL
- COMMENT "Creating default named app"
- COMMAND ${CMAKE_COMMAND} -E copy_if_different "$" "${NO_SUFFIX_APP_NAME}"
- BYPRODUCTS ${NO_SUFFIX_APP_NAME}
- )
- set_target_properties("create-no-suffix-app" PROPERTIES FOLDER "OtherBuildTargets")
- install(FILES ${NO_SUFFIX_APP_NAME} DESTINATION bin PERMISSIONS ${DEFAULT_INSTALL_PERMISSIONS})
-
- # No suffix sharedlib target:
- set(NO_SUFFIX_LIB_TARGET "${PROJECT_NAME}-mt-sharedlib")
- if(IS_ARM64_8A)
- # No mt target on arm64 8-a so default is based off st.
- set(NO_SUFFIX_LIB_TARGET "${PROJECT_NAME}-st-sharedlib")
- endif()
- set(NO_SUFFIX_LIB_NAME "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}${PROJECT_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}")
- add_custom_target("create-no-suffix-sharedlib" ALL
- COMMENT "Creating default named lib"
- COMMAND ${CMAKE_COMMAND} -E copy_if_different "$" "${NO_SUFFIX_LIB_NAME}"
- BYPRODUCTS ${NO_SUFFIX_LIB_NAME}
- )
- set_target_properties("create-no-suffix-sharedlib" PROPERTIES FOLDER "OtherBuildTargets")
- install(FILES ${NO_SUFFIX_LIB_NAME} DESTINATION lib PERMISSIONS ${DEFAULT_INSTALL_PERMISSIONS})
- if(IS_WINDOWS)
- set(NO_SUFFIX_LINKER_LIB_NAME "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}amalgam${CMAKE_STATIC_LIBRARY_SUFFIX}")
- add_custom_target("create-no-suffix-linkinglib" ALL
- COMMENT "Creating default named linking lib"
- COMMAND ${CMAKE_COMMAND} -E copy_if_different "$" "${NO_SUFFIX_LINKER_LIB_NAME}"
- BYPRODUCTS ${NO_SUFFIX_LINKER_LIB_NAME}
- )
- set_target_properties("create-no-suffix-linkinglib" PROPERTIES FOLDER "OtherBuildTargets")
- install(FILES ${NO_SUFFIX_LINKER_LIB_NAME} DESTINATION lib PERMISSIONS ${DEFAULT_INSTALL_PERMISSIONS})
- endif()
-endif()
diff --git a/build/cmake/create_static_targets.cmake b/build/cmake/create_static_targets.cmake
index b78a6415..fc6bdeb8 100644
--- a/build/cmake/create_static_targets.cmake
+++ b/build/cmake/create_static_targets.cmake
@@ -3,7 +3,7 @@
#
# Build files:
-file(GLOB_RECURSE CONFIG_FILES "build/*")
+file(GLOB_RECURSE CONFIG_FILES ".github/*" "build/*")
list(APPEND CONFIG_FILES
.gitignore
CMakeLists.txt