mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-08-26 00:56:45 +00:00
Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| bddb51bf1a | |||
| 308c7ebb7a |
@@ -52,7 +52,7 @@ jobs:
|
|||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
curl -X 'POST' \
|
curl -XPOST \
|
||||||
'https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/pulls' \
|
'https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/pulls' \
|
||||||
-H 'accept: application/json' \
|
-H 'accept: application/json' \
|
||||||
-H 'Authorization: Bearer ${{ secrets.CI_FJ_TOKEN }}' \
|
-H 'Authorization: Bearer ${{ secrets.CI_FJ_TOKEN }}' \
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
name: update-deps
|
name: Update Dependencies
|
||||||
|
|
||||||
on:
|
on:
|
||||||
# saturday at noon
|
# saturday at noon
|
||||||
@@ -7,7 +7,7 @@ on:
|
|||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
tx-update:
|
update-deps:
|
||||||
runs-on: source
|
runs-on: source
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -24,18 +24,21 @@ jobs:
|
|||||||
git remote set-url origin ci:eden-emu/eden.git
|
git remote set-url origin ci:eden-emu/eden.git
|
||||||
|
|
||||||
DATE=$(date +"%b %d")
|
DATE=$(date +"%b %d")
|
||||||
|
TIMESTAMP=$(date +"%s")
|
||||||
echo "DATE=$DATE" >> "$GITHUB_ENV"
|
echo "DATE=$DATE" >> "$GITHUB_ENV"
|
||||||
|
echo "TIMESTAMP=$TIMESTAMP" >> "$GITHUB_ENV"
|
||||||
|
|
||||||
git switch -c update-deps-$DATE
|
git switch -c update-deps-$TIMESTAMP
|
||||||
tools/cpmutil.sh package update -ac
|
tools/cpmutil.sh package update -ac
|
||||||
git push
|
git push
|
||||||
|
|
||||||
- name: Create PR
|
- name: Create PR
|
||||||
run: |
|
run: |
|
||||||
|
set -x
|
||||||
TITLE="[externals] Dependency update for $DATE"
|
TITLE="[externals] Dependency update for $DATE"
|
||||||
BODY="$(git show -s --format='%b')"
|
BODY="$(git show -s --format='%b')"
|
||||||
BASE=master
|
BASE=master
|
||||||
HEAD=update-deps-$DATE
|
HEAD=update-deps-$TIMESTAMP
|
||||||
|
|
||||||
cat << EOF > data.json
|
cat << EOF > data.json
|
||||||
{
|
{
|
||||||
@@ -46,7 +49,7 @@ jobs:
|
|||||||
}
|
}
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
curl -X 'POST' \
|
curl -XPOST \
|
||||||
'https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/pulls' \
|
'https://git.eden-emu.dev/api/v1/repos/eden-emu/eden/pulls' \
|
||||||
-H 'accept: application/json' \
|
-H 'accept: application/json' \
|
||||||
-H 'Authorization: Bearer ${{ secrets.CI_FJ_TOKEN }}' \
|
-H 'Authorization: Bearer ${{ secrets.CI_FJ_TOKEN }}' \
|
||||||
|
|||||||
+38
-28
@@ -128,7 +128,8 @@ function(AddDependentPackages)
|
|||||||
message(FATAL_ERROR "Partial dependency installation detected "
|
message(FATAL_ERROR "Partial dependency installation detected "
|
||||||
"for the following packages:\n${package_names}\n"
|
"for the following packages:\n${package_names}\n"
|
||||||
"You can solve this in one of two ways:\n"
|
"You can solve this in one of two ways:\n"
|
||||||
"1. Install the following packages to your system if available:"
|
"1. Install or upgrade the following packages "
|
||||||
|
"to your system if available:"
|
||||||
"\n\t${bundled_names}\n"
|
"\n\t${bundled_names}\n"
|
||||||
"2. Set the following variables to ON:"
|
"2. Set the following variables to ON:"
|
||||||
"\n\t${system_names}\n"
|
"\n\t${system_names}\n"
|
||||||
@@ -247,9 +248,9 @@ function(AddJsonPackage)
|
|||||||
|
|
||||||
set(multiValueArgs OPTIONS)
|
set(multiValueArgs OPTIONS)
|
||||||
|
|
||||||
set(options MODULE)
|
set(optionArgs MODULE)
|
||||||
|
|
||||||
cmake_parse_arguments(JSON "${options}" "${oneValueArgs}" "${multiValueArgs}"
|
cmake_parse_arguments(JSON "${optionArgs}" "${oneValueArgs}" "${multiValueArgs}"
|
||||||
"${ARGN}")
|
"${ARGN}")
|
||||||
|
|
||||||
list(LENGTH ARGN argnLength)
|
list(LENGTH ARGN argnLength)
|
||||||
@@ -278,11 +279,11 @@ function(AddJsonPackage)
|
|||||||
|
|
||||||
parse_object(${object})
|
parse_object(${object})
|
||||||
|
|
||||||
if(ci)
|
if (JSON_MODULE)
|
||||||
if (JSON_MODULE)
|
set(EXTRA_ARGS MODULE)
|
||||||
set(EXTRA_ARGS MODULE)
|
endif()
|
||||||
endif()
|
|
||||||
|
|
||||||
|
if(ci)
|
||||||
AddCIPackage(
|
AddCIPackage(
|
||||||
VERSION ${version}
|
VERSION ${version}
|
||||||
NAME ${name}
|
NAME ${name}
|
||||||
@@ -313,23 +314,24 @@ function(AddJsonPackage)
|
|||||||
FORCE_BUNDLED_PACKAGE "${JSON_FORCE_BUNDLED_PACKAGE}"
|
FORCE_BUNDLED_PACKAGE "${JSON_FORCE_BUNDLED_PACKAGE}"
|
||||||
SOURCE_SUBDIR "${source_subdir}"
|
SOURCE_SUBDIR "${source_subdir}"
|
||||||
|
|
||||||
GIT_VERSION ${git_version}
|
GIT_VERSION "${git_version}"
|
||||||
GIT_HOST ${git_host}
|
GIT_HOST "${git_host}"
|
||||||
|
|
||||||
ARTIFACT ${artifact}
|
ARTIFACT "${artifact}"
|
||||||
TAG ${tag})
|
TAG "${tag}"
|
||||||
|
${EXTRA_ARGS})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# pass stuff to parent scope
|
# pass stuff to parent scope
|
||||||
Propagate(${package}_ADDED)
|
Propagate(${package}_ADDED)
|
||||||
Propagate(${package}_SOURCE_DIR)
|
Propagate(${package}_SOURCE_DIR)
|
||||||
Propagate(${package}_BINARY_DIR)
|
Propagate(${package}_BINARY_DIR)
|
||||||
|
Propagate(CMAKE_PREFIX_PATH)
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
function(AddPackage)
|
function(AddPackage)
|
||||||
cpm_set_policies()
|
cpm_set_policies()
|
||||||
|
set(EXTRA_ARGS "")
|
||||||
# TODO(crueter): git clone?
|
|
||||||
|
|
||||||
#[[
|
#[[
|
||||||
URL configurations, descending order of precedence:
|
URL configurations, descending order of precedence:
|
||||||
@@ -374,7 +376,9 @@ function(AddPackage)
|
|||||||
|
|
||||||
set(multiValueArgs OPTIONS PATCHES)
|
set(multiValueArgs OPTIONS PATCHES)
|
||||||
|
|
||||||
cmake_parse_arguments(PKG_ARGS "" "${oneValueArgs}" "${multiValueArgs}"
|
set(optionArgs MODULE)
|
||||||
|
|
||||||
|
cmake_parse_arguments(PKG_ARGS "${optionArgs}" "${oneValueArgs}" "${multiValueArgs}"
|
||||||
"${ARGN}")
|
"${ARGN}")
|
||||||
|
|
||||||
if(NOT DEFINED PKG_ARGS_NAME)
|
if(NOT DEFINED PKG_ARGS_NAME)
|
||||||
@@ -558,6 +562,12 @@ function(AddPackage)
|
|||||||
VERSION ${PKG_ARGS_VERSION})
|
VERSION ${PKG_ARGS_VERSION})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (PKG_ARGS_MODULE)
|
||||||
|
set(PKG_ARGS_DOWNLOAD_ONLY ON)
|
||||||
|
elseif (NOT DEFINED PKG_ARGS_DOWNLOAD_ONLY)
|
||||||
|
set(PKG_ARGS_DOWNLOAD_ONLY OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
CPMAddPackage(
|
CPMAddPackage(
|
||||||
NAME ${PKG_ARGS_NAME}
|
NAME ${PKG_ARGS_NAME}
|
||||||
URL ${pkg_url}
|
URL ${pkg_url}
|
||||||
@@ -607,13 +617,14 @@ function(AddPackage)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
# pass stuff to parent scope
|
# pass stuff to parent scope
|
||||||
set(${PKG_ARGS_NAME}_ADDED "${${PKG_ARGS_NAME}_ADDED}"
|
Propagate(${PKG_ARGS_NAME}_ADDED)
|
||||||
PARENT_SCOPE)
|
Propagate(${PKG_ARGS_NAME}_SOURCE_DIR)
|
||||||
set(${PKG_ARGS_NAME}_SOURCE_DIR "${${PKG_ARGS_NAME}_SOURCE_DIR}"
|
Propagate(${PKG_ARGS_NAME}_BINARY_DIR)
|
||||||
PARENT_SCOPE)
|
|
||||||
set(${PKG_ARGS_NAME}_BINARY_DIR "${${PKG_ARGS_NAME}_BINARY_DIR}"
|
|
||||||
PARENT_SCOPE)
|
|
||||||
|
|
||||||
|
if (PKG_ARGS_MODULE)
|
||||||
|
list(PREPEND CMAKE_PREFIX_PATH "${${ARTIFACT_PACKAGE}_SOURCE_DIR}")
|
||||||
|
Propagate(CMAKE_PREFIX_PATH)
|
||||||
|
endif()
|
||||||
endfunction()
|
endfunction()
|
||||||
|
|
||||||
# TODO(crueter): we could do an AddMultiArchPackage, multiplatformpackage?
|
# TODO(crueter): we could do an AddMultiArchPackage, multiplatformpackage?
|
||||||
@@ -706,6 +717,10 @@ function(AddCIPackage)
|
|||||||
set(ARTIFACT
|
set(ARTIFACT
|
||||||
"${ARTIFACT_NAME}-${pkgname}-${ARTIFACT_VERSION}.${ARTIFACT_EXT}")
|
"${ARTIFACT_NAME}-${pkgname}-${ARTIFACT_VERSION}.${ARTIFACT_EXT}")
|
||||||
|
|
||||||
|
if (PKG_ARGS_MODULE)
|
||||||
|
set(EXTRA_ARGS MODULE)
|
||||||
|
endif()
|
||||||
|
|
||||||
AddPackage(
|
AddPackage(
|
||||||
NAME ${ARTIFACT_PACKAGE}
|
NAME ${ARTIFACT_PACKAGE}
|
||||||
REPO ${ARTIFACT_REPO}
|
REPO ${ARTIFACT_REPO}
|
||||||
@@ -716,16 +731,11 @@ function(AddCIPackage)
|
|||||||
KEY "${pkgname}-${ARTIFACT_VERSION}"
|
KEY "${pkgname}-${ARTIFACT_VERSION}"
|
||||||
HASH_SUFFIX sha512sum
|
HASH_SUFFIX sha512sum
|
||||||
FORCE_BUNDLED_PACKAGE ON
|
FORCE_BUNDLED_PACKAGE ON
|
||||||
DOWNLOAD_ONLY ${PKG_ARGS_MODULE})
|
${EXTRA_ARGS})
|
||||||
|
|
||||||
set(${ARTIFACT_PACKAGE}_ADDED TRUE PARENT_SCOPE)
|
set(${ARTIFACT_PACKAGE}_ADDED TRUE PARENT_SCOPE)
|
||||||
set(${ARTIFACT_PACKAGE}_SOURCE_DIR
|
Propagate(${ARTIFACT_PACKAGE}_SOURCE_DIR)
|
||||||
"${${ARTIFACT_PACKAGE}_SOURCE_DIR}" PARENT_SCOPE)
|
Propagate(CMAKE_PREFIX_PATH)
|
||||||
|
|
||||||
if (PKG_ARGS_MODULE)
|
|
||||||
list(PREPEND CMAKE_PREFIX_PATH "${${ARTIFACT_PACKAGE}_SOURCE_DIR}")
|
|
||||||
Propagate(CMAKE_PREFIX_PATH)
|
|
||||||
endif()
|
|
||||||
else()
|
else()
|
||||||
find_package(${ARTIFACT_PACKAGE} ${ARTIFACT_MIN_VERSION} REQUIRED)
|
find_package(${ARTIFACT_PACKAGE} ${ARTIFACT_MIN_VERSION} REQUIRED)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -83,8 +83,13 @@ for pkg in $packages; do
|
|||||||
echo "-- Package $PACKAGE"
|
echo "-- Package $PACKAGE"
|
||||||
|
|
||||||
# TODO(crueter): Support for Forgejo updates w/ forgejo_token
|
# TODO(crueter): Support for Forgejo updates w/ forgejo_token
|
||||||
# Use gh-cli to avoid ratelimits lmao
|
# Use gh-cli to avoid ratelimits, if available
|
||||||
TAGS=$(gh api --method GET "/repos/$REPO/tags")
|
endpoint="/repos/$REPO/tags"
|
||||||
|
if command -v gh >/dev/null 2>&1; then
|
||||||
|
TAGS=$(gh api --method GET "$endpoint")
|
||||||
|
else
|
||||||
|
TAGS=$(curl -sfL "https://api.github.com$endpoint")
|
||||||
|
fi
|
||||||
|
|
||||||
# filter out some commonly known annoyances
|
# filter out some commonly known annoyances
|
||||||
# TODO add more
|
# TODO add more
|
||||||
@@ -105,6 +110,12 @@ for pkg in $packages; do
|
|||||||
filter_out beta
|
filter_out beta
|
||||||
filter_out rc
|
filter_out rc
|
||||||
|
|
||||||
|
# openssl
|
||||||
|
if [ "$PACKAGE" = openssl ]; then
|
||||||
|
filter_out rsaref
|
||||||
|
filter_in "openssl-"
|
||||||
|
fi
|
||||||
|
|
||||||
# Add package-specific overrides here, e.g. here for fmt:
|
# Add package-specific overrides here, e.g. here for fmt:
|
||||||
[ "$PACKAGE" != fmt ] || filter_out v0.11
|
[ "$PACKAGE" != fmt ] || filter_out v0.11
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user