Remove cabal foo
This commit is contained in:
parent
6c6e2241bb
commit
f8e0ec9b12
33
.cirrus.yml
33
.cirrus.yml
@ -1,33 +0,0 @@
|
||||
# release CI for FreeBSD
|
||||
compute_engine_instance:
|
||||
image_project: freebsd-org-cloud-dev
|
||||
image: family/freebsd-13-2
|
||||
platform: freebsd
|
||||
disk: 100 # Gb
|
||||
|
||||
build_task:
|
||||
timeout_in: 120m
|
||||
trigger_type: manual
|
||||
env:
|
||||
ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
ARCH: 64
|
||||
ARTIFACT: "x86_64-portbld-freebsd"
|
||||
CIRRUS_CLONE_SUBMODULES: true
|
||||
DISTRO: na
|
||||
GHC_VERSION: 9.2.4
|
||||
GITHUB_WORKSPACE: ${CIRRUS_WORKING_DIR}
|
||||
RUNNER_OS: FreeBSD
|
||||
TARBALL_EXT: tar.xz
|
||||
TZ: Asia/Singapore
|
||||
install_script:
|
||||
- sed -i.bak -e 's/quarterly/latest/' /etc/pkg/FreeBSD.conf
|
||||
- pkg install -y ghc hs-cabal-install git bash misc/compat10x misc/compat11x misc/compat12x gmake llvm14 patchelf tree gmp libiconv
|
||||
script:
|
||||
- tzsetup Etc/GMT
|
||||
- adjkerntz -a
|
||||
- git clone --branch cabal-install-v3.6.2.0-p1 https://github.com/hasufell/cabal.git
|
||||
- cd cabal/
|
||||
- bash .github/scripts/build.sh
|
||||
binaries_artifacts:
|
||||
path: "out/*"
|
||||
|
396
.github/workflows/cabal-release.yaml
vendored
396
.github/workflows/cabal-release.yaml
vendored
@ -1,396 +0,0 @@
|
||||
name: Cabal Bindist build
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
repo:
|
||||
description: Repo
|
||||
required: true
|
||||
default: hasufell/cabal
|
||||
type: string
|
||||
ref:
|
||||
description: Git ref
|
||||
required: true
|
||||
type: string
|
||||
|
||||
jobs:
|
||||
build-linux:
|
||||
name: Build linux binaries
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
TARBALL_EXT: tar.xz
|
||||
ARCH: 64
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
TZ: Asia/Singapore
|
||||
GHC_VERSION: 9.2.8
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
platform: [ { image: "debian:9"
|
||||
, installCmd: "sed -i s/deb.debian.org/archive.debian.org/g /etc/apt/sources.list && sed -i 's|security.debian.org|archive.debian.org/|g' /etc/apt/sources.list && sed -i /-updates/d /etc/apt/sources.list && apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Debian"
|
||||
, ARTIFACT: "x86_64-linux-deb9"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "debian:10"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Debian"
|
||||
, ARTIFACT: "x86_64-linux-deb10"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "debian:11"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Debian"
|
||||
, ARTIFACT: "x86_64-linux-deb11"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "ubuntu:18.04"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Ubuntu"
|
||||
, ARTIFACT: "x86_64-linux-ubuntu18.04"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "ubuntu:20.04"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Ubuntu"
|
||||
, ARTIFACT: "x86_64-linux-ubuntu20.04"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "ubuntu:22.04"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Ubuntu"
|
||||
, ARTIFACT: "x86_64-linux-ubuntu22.04"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "linuxmintd/mint19.3-amd64"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Mint"
|
||||
, ARTIFACT: "x86_64-linux-mint19.3"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "linuxmintd/mint20.2-amd64"
|
||||
, installCmd: "apt-get update && apt-get install -y"
|
||||
, toolRequirements: "libnuma-dev zlib1g-dev libgmp-dev libgmp10 libssl-dev liblzma-dev libbz2-dev git wget lsb-release software-properties-common gnupg2 apt-transport-https gcc autoconf automake build-essential curl ghc gzip libffi-dev libncurses-dev libncurses5 libtinfo5 patchelf"
|
||||
, DISTRO: "Mint"
|
||||
, ARTIFACT: "x86_64-linux-mint20.2"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "fedora:27"
|
||||
, installCmd: "dnf install -y"
|
||||
, toolRequirements: "autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
|
||||
, DISTRO: "Fedora"
|
||||
, ARTIFACT: "x86_64-linux-fedora27"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "fedora:33"
|
||||
, installCmd: "dnf install -y"
|
||||
, toolRequirements: "autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
|
||||
, DISTRO: "Fedora"
|
||||
, ARTIFACT: "x86_64-linux-fedora33"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "centos:7"
|
||||
, installCmd: "yum -y install epel-release && yum install -y"
|
||||
, toolRequirements: "autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
|
||||
, DISTRO: "CentOS"
|
||||
, ARTIFACT: "x86_64-linux-centos7"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "rockylinux:8"
|
||||
, installCmd: "yum -y install epel-release && yum install -y --allowerasing"
|
||||
, toolRequirements: "autoconf automake binutils bzip2 coreutils curl elfutils-devel elfutils-libs findutils gcc gcc-c++ git gmp gmp-devel jq lbzip2 make ncurses ncurses-compat-libs ncurses-devel openssh-clients patch perl pxz python3 sqlite sudo wget which xz zlib-devel patchelf"
|
||||
, DISTRO: "Unknown"
|
||||
, ARTIFACT: "x86_64-linux-rocky8"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections"
|
||||
},
|
||||
{ image: "alpine:latest"
|
||||
, installCmd: "apk update && apk add"
|
||||
, toolRequirements: "binutils-gold curl gcc g++ gmp-dev libc-dev libffi-dev make musl-dev ncurses-dev perl tar xz autoconf automake bzip2 coreutils elfutils-dev findutils git jq bzip2-dev patch python3 sqlite sudo wget which zlib-dev patchelf zlib zlib-dev zlib-static"
|
||||
, DISTRO: "Unknown"
|
||||
, ARTIFACT: "x86_64-linux-unknown"
|
||||
, ADD_CABAL_ARGS: "--enable-split-sections --enable-executable-static"
|
||||
}
|
||||
|
||||
]
|
||||
container:
|
||||
image: ${{ matrix.platform.image }}
|
||||
steps:
|
||||
- name: Install requirements
|
||||
shell: sh
|
||||
run: |
|
||||
${{ matrix.platform.installCmd }} curl bash git ${{ matrix.platform.toolRequirements }}
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
|
||||
|
||||
- name: Run build
|
||||
run: |
|
||||
bash .github/scripts/build.sh
|
||||
|
||||
env:
|
||||
ARTIFACT: ${{ matrix.platform.ARTIFACT }}
|
||||
DISTRO: ${{ matrix.platform.DISTRO }}
|
||||
ADD_CABAL_ARGS: ${{ matrix.platform.ADD_CABAL_ARGS }}
|
||||
|
||||
- if: always()
|
||||
name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
if-no-files-found: error
|
||||
retention-days: 2
|
||||
name: artifacts
|
||||
path: |
|
||||
./out/*
|
||||
|
||||
build-linux-32bit:
|
||||
name: Build linux binaries (32bit)
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
TARBALL_EXT: tar.xz
|
||||
ARCH: 32
|
||||
TZ: Asia/Singapore
|
||||
GHC_VERSION: 9.2.1
|
||||
DISTRO: "Unknown"
|
||||
ARTIFACT: "i386-linux-unknown"
|
||||
ADD_CABAL_ARGS: "--enable-split-sections --enable-executable-static"
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
submodules: 'true'
|
||||
|
||||
- name: Run build (32 bit linux)
|
||||
uses: docker://hasufell/i386-alpine-haskell:3.12
|
||||
with:
|
||||
args: sh -c "apk update && apk add bash binutils-gold curl gcc g++ gmp-dev libc-dev libffi-dev make musl-dev ncurses-dev perl tar xz autoconf automake bzip2 coreutils elfutils-dev findutils git jq bzip2-dev patch python3 sqlite sudo wget which zlib-dev patchelf zlib zlib-dev zlib-static && bash .github/scripts/build.sh"
|
||||
|
||||
- if: always()
|
||||
name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
if-no-files-found: error
|
||||
retention-days: 2
|
||||
name: artifacts
|
||||
path: |
|
||||
./out/*
|
||||
|
||||
build-arm:
|
||||
name: Build ARM binary
|
||||
runs-on: ${{ matrix.os }}
|
||||
env:
|
||||
TARBALL_EXT: tar.xz
|
||||
ADD_CABAL_ARGS: ""
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
TZ: Asia/Singapore
|
||||
ARCH: ARM64
|
||||
DISTRO: Ubuntu
|
||||
GHC_VERSION: 9.2.8
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- os: [self-hosted, Linux, ARM64]
|
||||
ARCH: ARM
|
||||
ARTIFACT: "armv7-linux-deb10"
|
||||
- os: [self-hosted, Linux, ARM64]
|
||||
ARCH: ARM64
|
||||
ARTIFACT: "aarch64-linux-deb10"
|
||||
steps:
|
||||
- uses: docker://arm64v8/ubuntu:focal
|
||||
name: Cleanup (aarch64 linux)
|
||||
with:
|
||||
args: "find . -mindepth 1 -maxdepth 1 -exec rm -rf -- {} +"
|
||||
|
||||
- name: git config
|
||||
run: |
|
||||
git config --global --get-all safe.directory | grep '^\*$' || git config --global --add safe.directory "*"
|
||||
shell: bash
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
|
||||
- if: matrix.ARCH == 'ARM'
|
||||
uses: docker://hasufell/arm32v7-debian-haskell:10
|
||||
name: Run build (armv7 linux)
|
||||
with:
|
||||
args: bash .github/scripts/build.sh
|
||||
env:
|
||||
ARTIFACT: ${{ matrix.ARTIFACT }}
|
||||
|
||||
- if: matrix.ARCH == 'ARM64'
|
||||
uses: docker://hasufell/arm64v8-debian-haskell:10
|
||||
name: Run build (aarch64 linux)
|
||||
with:
|
||||
args: bash .github/scripts/build.sh
|
||||
env:
|
||||
ARTIFACT: ${{ matrix.ARTIFACT }}
|
||||
|
||||
- if: always()
|
||||
name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
if-no-files-found: error
|
||||
retention-days: 2
|
||||
name: artifacts
|
||||
path: |
|
||||
./out/*
|
||||
|
||||
build-mac-x86_64:
|
||||
name: Build binary (Mac x86_64)
|
||||
runs-on: macOS-11
|
||||
env:
|
||||
MACOSX_DEPLOYMENT_TARGET: 10.13
|
||||
ADD_CABAL_ARGS: ""
|
||||
ARTIFACT: "x86_64-apple-darwin"
|
||||
ARCH: 64
|
||||
TARBALL_EXT: tar.xz
|
||||
DISTRO: na
|
||||
GHC_VERSION: 9.2.8
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
|
||||
- name: Run build
|
||||
run: |
|
||||
brew install coreutils tree
|
||||
bash .github/scripts/build.sh
|
||||
|
||||
- if: always()
|
||||
name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
if-no-files-found: error
|
||||
retention-days: 2
|
||||
name: artifacts
|
||||
path: |
|
||||
./out/*
|
||||
|
||||
build-mac-aarch64:
|
||||
name: Build binary (Mac aarch64)
|
||||
runs-on: [self-hosted, macOS, ARM64]
|
||||
env:
|
||||
MACOSX_DEPLOYMENT_TARGET: 10.13
|
||||
ADD_CABAL_ARGS: ""
|
||||
ARTIFACT: "aarch64-apple-darwin"
|
||||
ARCH: ARM64
|
||||
TARBALL_EXT: tar.xz
|
||||
DISTRO: na
|
||||
HOMEBREW_CHANGE_ARCH_TO_ARM: 1
|
||||
GHC_VERSION: 9.2.8
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
|
||||
- name: Run build
|
||||
run: |
|
||||
bash .github/scripts/brew.sh git coreutils autoconf automake tree
|
||||
export PATH="$HOME/.brew/bin:$HOME/.brew/sbin:$PATH"
|
||||
export LD=ld
|
||||
bash .github/scripts/build.sh
|
||||
|
||||
- if: always()
|
||||
name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
if-no-files-found: error
|
||||
retention-days: 2
|
||||
name: artifacts
|
||||
path: |
|
||||
./out/*
|
||||
|
||||
build-win:
|
||||
name: Build binary (Win)
|
||||
runs-on: windows-latest
|
||||
env:
|
||||
ADD_CABAL_ARGS: ""
|
||||
ARTIFACT: "x86_64-mingw64"
|
||||
ARCH: 64
|
||||
TARBALL_EXT: "zip"
|
||||
DISTRO: na
|
||||
GHC_VERSION: 9.2.8
|
||||
steps:
|
||||
- name: install windows deps
|
||||
shell: pwsh
|
||||
run: |
|
||||
C:\msys64\usr\bin\bash -lc "pacman --disable-download-timeout --noconfirm -Syuu"
|
||||
C:\msys64\usr\bin\bash -lc "pacman --disable-download-timeout --noconfirm -Syuu"
|
||||
C:\msys64\usr\bin\bash -lc "pacman --disable-download-timeout --noconfirm -S make mingw-w64-x86_64-clang curl autoconf mingw-w64-x86_64-pkgconf ca-certificates base-devel gettext autoconf make libtool automake python p7zip patch unzip zip git"
|
||||
taskkill /F /FI "MODULES eq msys-2.0.dll"
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
|
||||
- name: Run build (windows)
|
||||
run: |
|
||||
$env:CHERE_INVOKING = 1
|
||||
$env:MSYS2_PATH_TYPE = "inherit"
|
||||
$ErrorActionPreference = "Stop"
|
||||
C:\msys64\usr\bin\bash -lc "bash .github/scripts/build.sh"
|
||||
shell: pwsh
|
||||
|
||||
- if: always()
|
||||
name: Upload artifact
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
if-no-files-found: error
|
||||
retention-days: 2
|
||||
name: artifacts
|
||||
path: |
|
||||
./out/*
|
||||
|
||||
release:
|
||||
name: release
|
||||
needs: ["build-linux", "build-linux-32bit", "build-arm", "build-mac-x86_64", "build-mac-aarch64", "build-win"]
|
||||
runs-on: ubuntu-latest
|
||||
if: startsWith(github.ref, 'refs/tags/')
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: ${{ github.event.inputs.repo }}
|
||||
ref: ${{ github.event.inputs.ref }}
|
||||
|
||||
- name: Download artifacts
|
||||
uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: artifacts
|
||||
path: ./out
|
||||
|
||||
- name: Install requirements
|
||||
run: |
|
||||
sudo apt-get update && sudo apt-get install -y tar xz-utils
|
||||
shell: bash
|
||||
|
||||
- name: build sdists
|
||||
run: |
|
||||
cabal sdist -o out all
|
||||
shell: bash
|
||||
|
||||
- name: Release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
draft: true
|
||||
files: |
|
||||
./out/*
|
||||
|
Loading…
Reference in New Issue
Block a user