diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml new file mode 100644 index 0000000..8ed5f97 --- /dev/null +++ b/.gitea/workflows/ci.yml @@ -0,0 +1,73 @@ +name: Conan Packaging + +on: + push: + branches: + - '**' + workflow_dispatch: + +env: + CCACHE_BASEDIR: ${{ github.workspace }} + +jobs: + conan-packages: + runs-on: ubuntu-latest + timeout-minutes: 120 + container: + image: git.romainboullard.com/bigfootdev/linuxcppbuilder:${{ github.ref_name }} + env: + ARTIFACTORY_USER: ${{ secrets.ARTIFACTORY_USER }} + ARTIFACTORY_PASSWORD: ${{ secrets.ARTIFACTORY_PASSWORD }} + strategy: + matrix: + package: [ + { name: "eabase", version: "01082025", location: "all", needs_pkg: "" }, + { name: "eastl", version: "3.27.01", location: "all", needs_pkg: "eabase" }, + { name: "pixelmatch-cpp17", version: "1.0.3", location: "all", needs_pkg: "" }, + { name: "lodepng", version: "cci.20250727", location: "all", needs_pkg: "" }, + { name: "stduuid", version: "1.2.3", location: "all", needs_pkg: "" }, + { name: "flatbuffers", version: "25.12.19", location: "all", needs_pkg: "" }, + { name: "vulkan-memory-allocator", version: "3.3.0", location: "all", needs_pkg: "" }, + { name: "vulkan-utility-libraries", version: "1.4.313.0", location: "all", needs_pkg: "" }, + { name: "vulkan-validationlayers", version: "1.4.313.0", location: "all", needs_pkg: "vulkan-utility-libraries" }, + { name: "shaderc", version: "2025.3", location: "all", needs_pkg: "" }, + { name: "unordered_dense", version: "4.8.1", location: "all", needs_pkg: "" }, + { name: "mimalloc", version: "3.1.5", location: "all", needs_pkg: "" }, + { name: "meshoptimizer", version: "1.0", location: "all", needs_pkg: "" }, + { name: "sqlite3", version: "3.51.0", location: "all", needs_pkg: "" }, + { name: "rapidhash", version: "3.0", location: "all", needs_pkg: "" } + ] + steps: + - name: Set BRANCH_NAME + run: echo "BRANCH_NAME=$(echo $GITHUB_REF_NAME | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV + + - name: Install Node.js + run: apt-get update && apt-get install -y nodejs + + - name: Checkout repository + uses: actions/checkout@v6 + with: + submodules: recursive + + - name: Show ccache stats before + run: ccache --zero-stats + + - name: Run Conan packaging + run: | + echo "Building ${{ matrix.package.name }}@${{ matrix.package.version }}" + CONAN_LOGIN_USERNAME=${ARTIFACTORY_USER} \ + CONAN_PASSWORD=${ARTIFACTORY_PASSWORD} \ + conan create ./${{ matrix.package.name }}/${{ matrix.package.location }} \ + --version=${{ matrix.package.version }} \ + --user=bigfootdev \ + --channel=${{ env.BRANCH_NAME }} \ + -pr:b=./clang -pr:h=./clang \ + --build=missing --remote=bigfootpackages + + CONAN_LOGIN_USERNAME=${ARTIFACTORY_USER} \ + CONAN_PASSWORD=${ARTIFACTORY_PASSWORD} \ + conan upload ${{ matrix.package.name }}/${{ matrix.package.version }}@bigfootdev/${{ env.BRANCH_NAME }} \ + --only-recipe --remote=bigfootpackages + + - name: Show ccache stats after + run: ccache --show-stats diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 9f074a7..0000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,123 +0,0 @@ -variables: - GIT_SUBMODULE_STRATEGY: recursive - -stages: - - packaging - -.Packaging: - variables: - PACKAGE: 'Unknown' - VERSION: 'Unknown' - LOCATION: 'all' - CCACHE_BASEDIR: $CI_PROJECT_DIR - image: registry.gitlab.com/bigfootdev/docker/linuxcppbuilder:main - stage: packaging - before_script: - - ccache --zero-stats - script: - - CONAN_LOGIN_USERNAME=${GITLAB_CONAN_USER} CONAN_PASSWORD=${GITLAB_CONAN_PASSWORD} conan create ./$PACKAGE/$LOCATION --version=$VERSION -pr:b=./clang -pr:h=./clang --build=missing --remote=bigfootpackages - - CONAN_LOGIN_USERNAME=${GITLAB_CONAN_USER} CONAN_PASSWORD=${GITLAB_CONAN_PASSWORD} conan upload $PACKAGE/$VERSION@ --only-recipe --remote=bigfootpackages - after_script: - - ccache --show-stats - dependencies: [] - tags: - - linux - - c++ - - bigfootdev - only: - variables: - - $CI_COMMIT_REF_PROTECTED - -PackageEABase: - extends: .Packaging - variables: - PACKAGE: 'eabase' - VERSION: '01082025' - -PackageEASTL: - extends: .Packaging - variables: - PACKAGE: 'eastl' - VERSION: '3.27.01' - needs: - - PackageEABase - -PackagePixelMatch: - extends: .Packaging - variables: - PACKAGE: 'pixelmatch-cpp17' - VERSION: '1.0.3' - -PackageLodePNG: - extends: .Packaging - variables: - PACKAGE: 'lodepng' - VERSION: 'cci.20250727' - -PackageStduuid: - extends: .Packaging - variables: - PACKAGE: 'stduuid' - VERSION: '1.2.3' - -PackageFlatbuffers: - extends: .Packaging - variables: - PACKAGE: 'flatbuffers' - VERSION: '25.12.19' - -PackageVulkanMemoryAllocator: - extends: .Packaging - variables: - PACKAGE: 'vulkan-memory-allocator' - VERSION: '3.3.0' - -PackageVulkanUtilityLibraries: - extends: .Packaging - variables: - PACKAGE: 'vulkan-utility-libraries' - VERSION: '1.4.313.0' - -PackageVulkanValidationLayers: - extends: .Packaging - variables: - PACKAGE: 'vulkan-validationlayers' - VERSION: '1.4.313.0' - needs: - - PackageVulkanUtilityLibraries - -PackageShaderC: - extends: .Packaging - variables: - PACKAGE: 'shaderc' - VERSION: '2025.3' - -PackageUnorderedDense: - extends: .Packaging - variables: - PACKAGE: 'unordered_dense' - VERSION: '4.8.1' - -PackageMimalloc: - extends: .Packaging - variables: - PACKAGE: 'mimalloc' - VERSION: '3.1.5' - -PackageMeshOptimizer: - extends: .Packaging - variables: - PACKAGE: 'meshoptimizer' - VERSION: '1.0' - -PackageSQLite3: - extends: .Packaging - variables: - PACKAGE: 'sqlite3' - VERSION: '3.51.0' - -PackageRapidHash: - extends: .Packaging - variables: - PACKAGE: 'rapidhash' - VERSION: '3.0' diff --git a/eastl/all/conanfile.py b/eastl/all/conanfile.py index 4be20e1..9e45435 100644 --- a/eastl/all/conanfile.py +++ b/eastl/all/conanfile.py @@ -74,7 +74,7 @@ class EastlConan(ConanFile): def requirements(self): if self.version >= "3.27.00": - self.requires("eabase/01082025", transitive_headers=True) + self.requires(f"eabase/01082025@{self.user}/{self.channel}", transitive_headers=True) elif self.version == "3.21.23": self.requires("eabase/18082024", transitive_headers=True) else: diff --git a/vulkan-validationlayers/all/conanfile.py b/vulkan-validationlayers/all/conanfile.py index 6dc2159..ac14de8 100644 --- a/vulkan-validationlayers/all/conanfile.py +++ b/vulkan-validationlayers/all/conanfile.py @@ -103,7 +103,7 @@ class VulkanValidationLayersConan(ConanFile): self.requires("robin-hood-hashing/3.11.5") self.requires(self._require("spirv-headers")) if Version(conan_version).minor >= "1.4.313": - self.requires(self._require("vulkan-utility-libraries"), transitive_headers=True) + self.requires(f"{self._require("vulkan-utility-libraries")}@{self.user}/{self.channel}", transitive_headers=True) if Version(conan_version).major < "2": # TODO: set private=True, once the issue is resolved https://github.com/conan-io/conan/issues/9390 self.requires(self._require("spirv-tools"), private=not hasattr(self, "settings_build"))