Skip to content

Commit

Permalink
Update ci
Browse files Browse the repository at this point in the history
  • Loading branch information
problematicconsumer committed Sep 11, 2023
1 parent 00617ee commit fab61a0
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 68 deletions.
72 changes: 12 additions & 60 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,8 @@ on:
paths-ignore:
- '**.md'
- 'docs/**'
- '.github/ISSUE_TEMPLATE/**'
- '.github/**'
- '!.github/workflows/release.yml'
jobs:
build:
permissions: write-all
Expand All @@ -15,54 +16,29 @@ jobs:
matrix:
job:
- { os: "ubuntu-latest", target: "android"}
# - { os: "ubuntu-latest", target: "linux-386", aarch: 'x86'} #fultter does not support x86
- { os: "ubuntu-latest", target: "linux-amd64", aarch: 'x64'}
# - { os: "ubuntu-latest", target: "windows-386", aarch: 'x86'} #fultter does not support x86
- { os: "ubuntu-latest", target: "windows-amd64", aarch: 'x64' }
- { os: "macos-11", target: "macos-universal" }
#- { os: "macos-11", target: "ios" }
runs-on: ${{ matrix.job.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Set up GCC
if: startsWith(matrix.job.target,'linux-386')
uses: egor-tensin/setup-gcc@v1
with:
version: latest
platform: ${{ matrix.job.aarch }}

- name: gcc
if: startsWith(matrix.job.target,'linux-386')
run: |
sudo apt-get install --reinstall libc6-dev
- name: Setup Go
uses: actions/setup-go@v4
with:
go-version-file: 'go.mod'
check-latest: false

# - name: Setup Golang caches
# uses: actions/cache@v3
# with:
# path: |
# ~/.cache/go-build
# ~/go/pkg/mod
# key: ${{ runner.os }}-golang-${{ hashFiles('**/go.sum') }}
# restore-keys: |
# ${{ runner.os }}-golang-
check-latest: false

- name: Setup Java
if: startsWith(matrix.job.target,'android')
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'

- name: Setup NDK
if: startsWith(matrix.job.target,'android')
uses: nttld/setup-ndk@v1
Expand All @@ -72,56 +48,35 @@ jobs:
add-to-path: true
local-cache: true

# - name: Setup Android SDK
# uses: amyu/setup-android@v2
# with:
# cache-disabled: true
# sdk-version: '33'
# ndk-version: '25.2.9519653'

#- name: Setup GoMobile
# if: startsWith(matrix.job.target,'android') || startsWith(matrix.job.target,'ios')
# run: make lib_install

- name: Setup MinGW
if: startsWith(matrix.job.target,'windows')
uses: egor-tensin/setup-mingw@v2
with:
platform: ${{ matrix.job.aarch }}

- name: Set up macos
- name: Setup macos
if: startsWith(matrix.job.target,'macos') || startsWith(matrix.job.target,'ios')
run: |
brew install create-dmg tree coreutils
- name: Build
run: make -j$(($(nproc) + 1)) ${{ matrix.job.target }}
run: |
make -j$(($(nproc) + 1)) ${{ matrix.job.target }}
- name: zip
run: |
tree
rm -f ./bin/*.h
rm ./bin/hiddify-libcore*sources* ||echo "no source"
rm ./bin/hiddify-libcore-macos-a*.dylib || echo "no macos arm and amd"
gzip -r -S ".gz" ./bin/hiddify-libcore*
tree
rm -f ./bin/*.h
rm ./bin/hiddify-libcore*sources* ||echo "no source"
rm ./bin/hiddify-libcore-macos-a*.dylib || echo "no macos arm and amd"
gzip -r -S ".gz" ./bin/hiddify-libcore*
- uses: actions/upload-artifact@v3
if: ${{ success() }}
with:
name: artifact
path: bin/

upload-prerelease:
permissions: write-all
needs: [build]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v3
with:
name: artifact
path: bin/

- name: Create or Update Draft Release
uses: softprops/action-gh-release@v1
env:
Expand All @@ -131,6 +86,3 @@ jobs:
name: "draft"
tag_name: "draft"
prerelease: true
overwrite: true


8 changes: 0 additions & 8 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -22,23 +22,15 @@ ios: lib_install
windows-amd64:
env GOOS=windows GOARCH=amd64 CC=x86_64-w64-mingw32-gcc $(GOBUILD) -o $(BINDIR)/$(NAME)-$@.dll ./custom

windows-386:
env GOOS=windows GOARCH=386 CC=i686-w64-mingw32-gcc $(GOBUILD) -o $(BINDIR)/$(NAME)-$@.dll ./custom

linux-amd64:
env GOOS=linux GOARCH=amd64 $(GOBUILD) -o $(BINDIR)/$(NAME)-$@.so ./custom

linux-386:
env GOOS=linux GOARCH=386 $(GOBUILD) -o $(BINDIR)/$(NAME)-$@.so ./custom

macos-amd64:
env GOOS=darwin GOARCH=amd64 CGO_CFLAGS="-mmacosx-version-min=10.11" CGO_LDFLAGS="-mmacosx-version-min=10.11" CGO_ENABLED=1 go build -trimpath -tags $(TAGS),with_dhcp,with_low_memory,with_conntrack -buildmode=c-shared -o $(BINDIR)/$(NAME)-$@.dylib ./custom
macos-arm64:
env GOOS=darwin GOARCH=arm64 CGO_CFLAGS="-mmacosx-version-min=10.11" CGO_LDFLAGS="-mmacosx-version-min=10.11" CGO_ENABLED=1 go build -trimpath -tags $(TAGS),with_dhcp,with_low_memory,with_conntrack -buildmode=c-shared -o $(BINDIR)/$(NAME)-$@.dylib ./custom

macos-universal: macos-amd64 macos-arm64
lipo -create $(BINDIR)/$(NAME)-macos-amd64.dylib $(BINDIR)/$(NAME)-macos-arm64.dylib -output $(BINDIR)/$(NAME)-$@.dylib


clean:
rm $(BINDIR)/*

0 comments on commit fab61a0

Please sign in to comment.