Compare commits
112 commits
Author | SHA1 | Date | |
---|---|---|---|
574763abba | |||
ff74c3de01 | |||
6ea45868db | |||
|
ab7a02f0dd | ||
|
b322d1b36c | ||
|
44979a9703 | ||
|
56b6651677 | ||
|
d7e003190a | ||
|
43b769f5ae | ||
|
57f6229fe3 | ||
|
fd09b1375d | ||
|
e2515272f8 | ||
|
98edf482f8 | ||
|
20ee0f7d17 | ||
|
735d28224e | ||
|
b34b0980ef | ||
|
b1c5bf801c | ||
|
9a8f7c9e1a | ||
|
add382c563 | ||
|
bd887fa3fc | ||
|
a1cd885edc | ||
|
676eeb8f45 | ||
|
5d920d97ab | ||
|
04a2277791 | ||
|
ecf0f96df9 | ||
|
1431466df0 | ||
|
c613b77803 | ||
|
dc233d4f74 | ||
|
bfdc8f494a | ||
|
c9effeebc1 | ||
|
c0f10cbaa1 | ||
|
349f0d7f3e | ||
|
4dd18e112a | ||
|
3e9cf83e71 | ||
|
e2a49be0b7 | ||
|
d64ea4e08f | ||
|
73ddc59fab | ||
|
0dc37eb390 | ||
|
b613a7377c | ||
|
75fdf2b4bc | ||
|
016b681c23 | ||
|
56fa020198 | ||
|
959c42b354 | ||
|
eef54d6c31 | ||
|
30721c6c11 | ||
|
62ad95dfa4 | ||
|
5c3ec0f2da | ||
|
d5743fc036 | ||
|
3c7a3bbb7b | ||
|
687716cb1a | ||
|
7e3ae1499c | ||
|
176cff87c7 | ||
|
782855bf2b | ||
|
885534ec82 | ||
|
7facf8d89e | ||
|
5e8c9f2d08 | ||
|
c366f39a57 | ||
|
02b0d65e61 | ||
|
ca570767b7 | ||
|
7b20701593 | ||
|
5f8293095d | ||
|
f8ddcacf73 | ||
|
47c0c238dd | ||
|
faa9a33e9d | ||
|
31fc61d83f | ||
|
a94e52ae86 | ||
|
d1e18ab8e2 | ||
|
17c9e910c8 | ||
|
edcac69d3f | ||
|
7098615c1a | ||
|
127d8a9d75 | ||
|
70287760e1 | ||
|
068b92fb11 | ||
|
0835060b5d | ||
|
4a9365f57a | ||
|
8449cf65b5 | ||
|
4c96c26d7d | ||
|
e268031c5e | ||
|
9a2da7f51c | ||
|
5400f0350f | ||
|
4284ed35a8 | ||
|
19ae03413e | ||
|
440c56b2ef | ||
|
9451cae95c | ||
|
78f9fd02ec | ||
|
5e9e496900 | ||
|
92464c069e | ||
|
2ac931cf71 | ||
|
cd1f893b5b | ||
|
083fdd6e71 | ||
|
4c5ed84507 | ||
|
d5feb6a32b | ||
|
ef2d5fa0dd | ||
|
235c902c68 | ||
|
98be6d8119 | ||
|
1c32053ecb | ||
|
33ac2a622a | ||
|
d33b2d21ff | ||
|
a40969a5ba | ||
|
047017e200 | ||
|
2e95cb4f0f | ||
|
1f9bc44c60 | ||
|
d212aac2fa | ||
|
1d2bbea346 | ||
|
c83b9d709d | ||
|
e543ec3aa4 | ||
|
6da2d7d011 | ||
|
bfc93fd919 | ||
|
ac79dfa852 | ||
|
a6dbd2719c | ||
|
e0ffd8e604 | ||
|
4fcdb4e753 |
834 changed files with 1870 additions and 3148 deletions
.forgejo/workflows
README.mdVagrantfilebin
linux
aarch64
armhf
x86
x86_64
windows/x86
build
data/nmap-data-0.7.60SVN-3708259
nmap-mac-prefixesnmap-os-dbnmap-payloadsnmap-protocolsnmap-rpcnmap-service-probesnmap-servicesnmap.dtdnmap.xslnse_main.lua
nselib
afp.luaajp.luaamqp.luaanyconnect.luaasn1.luabase32.luabase64.luabin.luabit.luabitcoin.luabits.luabittorrent.luabjnp.luabrute.luacassandra.luacitrixxml.luacoap.luacomm.luacreds.luacvs.lua
data
dns-srv-namesdrupal-modules.lstdrupal-themes.lstenterprise_numbers.txtfavicon-dbhttp-default-accounts-fingerprints.luahttp-devframework-fingerprints.luahttp-fingerprints.luahttp-folders.txthttp-sql-errors.lsthttp-web-files-extensions.lstidnaMappings.luaike-fingerprints.lua
jdwp-class
mgroupnames.dbmysql-cis.auditoracle-default-accounts.lstoracle-sidspacketdecoders.luapasswords.lstpixel.gifpsexec
165
.forgejo/workflows/build-gdb.yml
Normal file
165
.forgejo/workflows/build-gdb.yml
Normal file
|
@ -0,0 +1,165 @@
|
|||
name: GDB & gdbserver
|
||||
on:
|
||||
workflow_dispatch
|
||||
jobs:
|
||||
|
||||
build-x86:
|
||||
name: Build GDB & gdbserver x86
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:i686-linux-musl
|
||||
outputs:
|
||||
version: ${{ steps.build_gdb.outputs.PACKAGED_VERSION }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install build compiler
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh x86_64
|
||||
|
||||
- name: Install dependencies workaround
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh i686
|
||||
|
||||
- name: Build GDB
|
||||
id: build_gdb
|
||||
run: |
|
||||
export PATH="$PATH:/i686-linux-musl-cross/bin"
|
||||
$GITHUB_WORKSPACE/build/targets/build_gdb.sh x86
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_gdb.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_gdb.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-x86_64:
|
||||
name: Build GDB & gdbserver x86_64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:x86_64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install build compiler
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh x86_64
|
||||
|
||||
- name: Build GDB
|
||||
id: build_gdb
|
||||
run: |
|
||||
$GITHUB_WORKSPACE/build/targets/build_gdb.sh x86_64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_gdb.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_gdb.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
|
||||
build-armhf:
|
||||
name: Build GDB & gdbserver ARMHF
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:arm-linux-musleabihf
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install build compiler
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh x86_64
|
||||
|
||||
- name: Install dependencies workaround
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh arm
|
||||
|
||||
- name: Build gdb
|
||||
id: build_gdb
|
||||
run: |
|
||||
export PATH="$PATH:/arm-linux-musleabihf-cross/bin"
|
||||
$GITHUB_WORKSPACE/build/targets/build_gdb.sh armhf
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_gdb.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_gdb.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
|
||||
build-aarch64:
|
||||
name: Build GDB & gdbserver AARCH64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:aarch64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install build compiler
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh x86_64
|
||||
|
||||
- name: Install dependencies workaround
|
||||
run: $GITHUB_WORKSPACE/build/02_install_build_compiler.sh aarch64
|
||||
|
||||
- name: Patch headers
|
||||
run: |
|
||||
patch /aarch64-linux-musl-cross/aarch64-linux-musl/include/asm/sigcontext.h < $GITHUB_WORKSPACE/patches/gdb/gdb-aarch64-header-sigcontext-fix.patch
|
||||
|
||||
- name: Build GDB
|
||||
id: build_gdb
|
||||
run: |
|
||||
export PATH="$PATH:/aarch64-linux-musl-cross/bin"
|
||||
$GITHUB_WORKSPACE/build/targets/build_gdb.sh aarch64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_gdb.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_gdb.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
create-release:
|
||||
name: Create GDB & gdbserver Release
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build-x86, build-x86_64, build-armhf, build-aarch64]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Prepare Environment
|
||||
run: mkdir /tmp/releases
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
path: /tmp/releases
|
||||
|
||||
- name: List Artifacts
|
||||
run: ls -laR /tmp/releases
|
||||
|
||||
- name: Tag Release
|
||||
id: tag_release
|
||||
run: |
|
||||
set +e
|
||||
if git rev-list "gdb-v${{ needs.build-x86.outputs.version }}".. >/dev/null;then
|
||||
echo "Tag for gdb-v${{ needs.build-x86.outputs.version }} already exists. Skipping release creation."
|
||||
echo ::set-output name=NEW_RELEASE::"false"
|
||||
else
|
||||
git tag "gdb-v${{ needs.build-x86.outputs.version }}"
|
||||
git push origin "gdb-v${{ needs.build-x86.outputs.version }}"
|
||||
echo ::set-output name=NEW_RELEASE::"true"
|
||||
fi
|
||||
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: ${{ steps.tag_release.outputs.NEW_RELEASE == 'true' }}
|
||||
with:
|
||||
name: gdb-v${{ needs.build-x86.outputs.version }}
|
||||
tag: gdb-v${{ needs.build-x86.outputs.version }}
|
||||
artifacts: "/tmp/releases/*/*"
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
169
.forgejo/workflows/build-nmap.yml
Normal file
169
.forgejo/workflows/build-nmap.yml
Normal file
|
@ -0,0 +1,169 @@
|
|||
name: Nmap
|
||||
on:
|
||||
workflow_dispatch
|
||||
jobs:
|
||||
|
||||
build-x86:
|
||||
name: Build Nmap x86
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:i686-linux-musl
|
||||
outputs:
|
||||
version: ${{ steps.package_nmap.outputs.PACKAGED_VERSION }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build Nmap
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_nmap.sh x86
|
||||
|
||||
- name: Package Nmap
|
||||
id: package_nmap
|
||||
run: $GITHUB_WORKSPACE/package/targets/nmap/package.sh /output x86
|
||||
|
||||
- name: Upload tarball
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL_PATH }}
|
||||
|
||||
- name: Upload zip
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_ZIP }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_ZIP_PATH }}
|
||||
|
||||
build-x86_64:
|
||||
name: Build Nmap x86_64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:x86_64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build Nmap
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_nmap.sh x86_64
|
||||
|
||||
- name: Package Nmap
|
||||
id: package_nmap
|
||||
run: $GITHUB_WORKSPACE/package/targets/nmap/package.sh /output x86_64
|
||||
|
||||
- name: Upload tarball
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL_PATH }}
|
||||
|
||||
- name: Upload zip
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_ZIP }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_ZIP_PATH }}
|
||||
|
||||
build-armhf:
|
||||
name: Build Nmap ARMHF
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:arm-linux-musleabihf
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build Nmap
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_nmap.sh armhf
|
||||
|
||||
- name: Package Nmap
|
||||
id: package_nmap
|
||||
run: $GITHUB_WORKSPACE/package/targets/nmap/package.sh /output armhf
|
||||
|
||||
- name: Upload tarball
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL_PATH }}
|
||||
|
||||
- name: Upload zip
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_ZIP }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_ZIP_PATH }}
|
||||
|
||||
build-aarch64:
|
||||
name: Build Nmap AARCH64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:aarch64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build Nmap
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_nmap.sh aarch64
|
||||
|
||||
- name: Package Nmap
|
||||
id: package_nmap
|
||||
run: $GITHUB_WORKSPACE/package/targets/nmap/package.sh /output aarch64
|
||||
|
||||
- name: Upload tarball
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_TARBALL_PATH }}
|
||||
|
||||
- name: Upload zip
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.package_nmap.outputs.PACKAGED_ZIP }}
|
||||
path: ${{ steps.package_nmap.outputs.PACKAGED_ZIP_PATH }}
|
||||
|
||||
create-release:
|
||||
name: Create Nmap Release
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build-x86, build-x86_64, build-armhf, build-aarch64]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Prepare Environment
|
||||
run: mkdir /tmp/releases
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
path: /tmp/releases
|
||||
|
||||
- name: List Artifacts
|
||||
run: ls -laR /tmp/releases
|
||||
|
||||
- name: Tag Release
|
||||
id: tag_release
|
||||
run: |
|
||||
set +e
|
||||
git fetch --quiet --prune --tags
|
||||
if [[ $(git tag -l | grep nmap-v${{ needs.build-x86.outputs.version }} | wc -l) -gt 0 ]]; then
|
||||
echo "Tag for nmap-v${{ needs.build-x86.outputs.version }} already exists. Skipping release creation."
|
||||
echo "NEW_RELEASE=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
echo "Tag for nmap-v${{ needs.build-x86.outputs.version }} missing. Starting release creation."
|
||||
git tag "nmap-v${{ needs.build-x86.outputs.version }}"
|
||||
git push origin "nmap-v${{ needs.build-x86.outputs.version }}"
|
||||
echo "NEW_RELEASE=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: ${{ steps.tag_release.outputs.NEW_RELEASE == 'true' }}
|
||||
with:
|
||||
name: Nmap v${{ needs.build-x86.outputs.version }}
|
||||
tag: nmap-v${{ needs.build-x86.outputs.version }}
|
||||
artifacts: "/tmp/releases/*/*"
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
130
.forgejo/workflows/build-openssh.yml
Normal file
130
.forgejo/workflows/build-openssh.yml
Normal file
|
@ -0,0 +1,130 @@
|
|||
name: OpenSSH
|
||||
on:
|
||||
workflow_dispatch
|
||||
jobs:
|
||||
build-x86:
|
||||
name: Build OpenSSH x86
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:i686-linux-musl
|
||||
outputs:
|
||||
version: ${{ steps.build_openssh.outputs.PACKAGED_VERSION }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build OpenSSH
|
||||
id: build_openssh
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_openssh.sh x86
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_openssh.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_openssh.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-x86_64:
|
||||
name: Build OpenSSH x86_64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:x86_64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build OpenSSH
|
||||
id: build_openssh
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_openssh.sh x86_64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_openssh.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_openssh.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-armhf:
|
||||
name: Build OpenSSH ARMHF
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:arm-linux-musleabihf
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build OpenSSH
|
||||
id: build_openssh
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_openssh.sh armhf
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_openssh.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_openssh.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-aarch64:
|
||||
name: Build OpenSSH AARCH64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:aarch64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build OpenSSH
|
||||
id: build_openssh
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_openssh.sh aarch64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_openssh.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_openssh.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
create-release:
|
||||
name: Create OpenSSH Release
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build-x86, build-x86_64, build-armhf, build-aarch64]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Prepare Environment
|
||||
run: mkdir /tmp/releases
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
path: /tmp/releases
|
||||
|
||||
- name: List Artifacts
|
||||
run: ls -laR /tmp/releases
|
||||
|
||||
- name: Tag Release
|
||||
id: tag_release
|
||||
run: |
|
||||
set +e
|
||||
if git rev-list "openssh-v${{ needs.build-x86.outputs.version }}".. >/dev/null;then
|
||||
echo "Tag for openssh-v${{ needs.build-x86.outputs.version }} already exists. Skipping release creation."
|
||||
echo "NEW_RELEASE=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
git tag "openssh-v${{ needs.build-x86.outputs.version }}"
|
||||
git push origin "openssh-v${{ needs.build-x86.outputs.version }}"
|
||||
echo "NEW_RELEASE=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: ${{ steps.tag_release.outputs.NEW_RELEASE == 'true' }}
|
||||
with:
|
||||
name: openssh-v${{ needs.build-x86.outputs.version }}
|
||||
tag: openssh-v${{ needs.build-x86.outputs.version }}
|
||||
artifacts: "/tmp/releases/*/*"
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
235
.forgejo/workflows/build-socat.yml
Normal file
235
.forgejo/workflows/build-socat.yml
Normal file
|
@ -0,0 +1,235 @@
|
|||
name: socat
|
||||
on:
|
||||
workflow_dispatch
|
||||
jobs:
|
||||
build-x86:
|
||||
name: Build socat x86
|
||||
runs-on: docker
|
||||
container:
|
||||
image: muslcc/x86_64:i686-linux-musl
|
||||
outputs:
|
||||
version: "${{ steps.build_socat.outputs.PACKAGED_VERSION }}"
|
||||
steps:
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash nodejs git-lfs
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install build dependencies
|
||||
run: sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Build socat
|
||||
id: build_socat
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh x86
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-x86_64:
|
||||
name: Build socat x86_64
|
||||
runs-on: docker
|
||||
container: muslcc/x86_64:x86_64-linux-musl
|
||||
steps:
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash nodejs git-lfs
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install build dependencies
|
||||
run: sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Build socat
|
||||
id: build_socat
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh x86_64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-armhf:
|
||||
name: Build socat ARMHF
|
||||
runs-on: docker
|
||||
container: muslcc/x86_64:arm-linux-musleabihf
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build socat
|
||||
id: build_socat
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh armhf
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-aarch64:
|
||||
name: Build socat AARCH64
|
||||
runs-on: docker
|
||||
container: muslcc/x86_64:aarch64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build socat
|
||||
id: build_socat
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh aarch64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-ppc32:
|
||||
name: Build socat powerpc32
|
||||
runs-on: docker
|
||||
container: muslcc/x86_64:powerpc-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build socat
|
||||
id: build_socat
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh ppc32
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-ppc64:
|
||||
name: Build socat powerpc64
|
||||
runs-on: docker
|
||||
container: muslcc/x86_64:powerpc64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build socat
|
||||
id: build_socat
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_socat.sh ppc64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: ${{ steps.build_socat.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_socat.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
create-release:
|
||||
name: Create socat Release
|
||||
runs-on: docker
|
||||
needs: [build-x86, build-x86_64, build-armhf, build-aarch64, build-ppc32, build-ppc64]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Prepare Environment
|
||||
run: mkdir /tmp/releases
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: https://code.forgejo.org/forgejo/download-artifact@v4
|
||||
with:
|
||||
path: /tmp/releases
|
||||
|
||||
- name: List Artifacts
|
||||
run: ls -laR /tmp/releases
|
||||
|
||||
- name: Tag Release
|
||||
id: tag_release
|
||||
run: |
|
||||
set +e
|
||||
if git rev-list "socat-v${{ needs.build-x86.outputs.version }}".. >/dev/null;then
|
||||
echo "Tag for socat-v${{ needs.build-x86.outputs.version }} already exists. Skipping release creation."
|
||||
echo "NEW_RELEASE=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
git tag "socat-v${{ needs.build-x86.outputs.version }}"
|
||||
git push origin "socat-v${{ needs.build-x86.outputs.version }}"
|
||||
echo "NEW_RELEASE=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: ${{ steps.tag_release.outputs.NEW_RELEASE == 'true' }}
|
||||
with:
|
||||
name: socat-v${{ needs.build-x86.outputs.version }}
|
||||
tag: socat-v${{ needs.build-x86.outputs.version }}
|
||||
artifacts: "/tmp/releases/*/*"
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
166
.forgejo/workflows/build-strace.yml
Normal file
166
.forgejo/workflows/build-strace.yml
Normal file
|
@ -0,0 +1,166 @@
|
|||
name: strace
|
||||
on:
|
||||
workflow_dispatch
|
||||
jobs:
|
||||
build-x86:
|
||||
name: Build strace x86
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:i686-linux-musl
|
||||
outputs:
|
||||
version: ${{ steps.build_strace.outputs.PACKAGED_VERSION }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build strace
|
||||
id: build_strace
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_strace.sh x86
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_strace.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_strace.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-x86_64:
|
||||
name: Build strace x86_64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:x86_64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Build strace
|
||||
id: build_strace
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_strace.sh x86_64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_strace.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_strace.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-armhf:
|
||||
name: Build strace ARMHF
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:arm-linux-musleabihf
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build strace
|
||||
id: build_strace
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_strace.sh armhf
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_strace.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_strace.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-aarch64:
|
||||
name: Build strace AARCH64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:aarch64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Install testing dependencies
|
||||
run: apk add --no-cache -X http://dl-cdn.alpinelinux.org/alpine/edge/testing yodl
|
||||
|
||||
- name: Install build compiler
|
||||
run: /bin/sh -c "apk update && apk upgrade && apk add --no-cache curl rsync sudo util-linux && cd / && curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz && tar -xf ${ARCH}-cross.tgz && rm ${ARCH}-cross.tgz && cd ${ARCH}-cross"
|
||||
env:
|
||||
ARCH: x86_64-linux-musl
|
||||
HOST: http://musl.cc/
|
||||
TEMP: /tmp
|
||||
USER: 0
|
||||
|
||||
- name: Build strace
|
||||
id: build_strace
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_strace.sh aarch64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_strace.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_strace.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
create-release:
|
||||
name: Create strace Release
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build-x86, build-x86_64, build-armhf, build-aarch64]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Prepare Environment
|
||||
run: mkdir /tmp/releases
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
path: /tmp/releases
|
||||
|
||||
- name: List Artifacts
|
||||
run: ls -laR /tmp/releases
|
||||
|
||||
- name: Tag Release
|
||||
id: tag_release
|
||||
run: |
|
||||
set +e
|
||||
if git rev-list "strace-v${{ needs.build-x86.outputs.version }}".. >/dev/null;then
|
||||
echo "Tag for strace-v${{ needs.build-x86.outputs.version }} already exists. Skipping release creation."
|
||||
echo "NEW_RELEASE=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
git tag "strace-v${{ needs.build-x86.outputs.version }}"
|
||||
git push origin "strace-v${{ needs.build-x86.outputs.version }}"
|
||||
echo "NEW_RELEASE=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: ${{ steps.tag_release.outputs.NEW_RELEASE == 'true' }}
|
||||
with:
|
||||
name: strace-v${{ needs.build-x86.outputs.version }}
|
||||
tag: strace-v${{ needs.build-x86.outputs.version }}
|
||||
artifacts: "/tmp/releases/*/*"
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
129
.forgejo/workflows/build-tcpdump.yml
Normal file
129
.forgejo/workflows/build-tcpdump.yml
Normal file
|
@ -0,0 +1,129 @@
|
|||
name: tcpdump
|
||||
on:
|
||||
workflow_dispatch
|
||||
jobs:
|
||||
build-x86:
|
||||
name: Build tcpdump x86
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:i686-linux-musl
|
||||
outputs:
|
||||
version: ${{ steps.build_tcpdump.outputs.PACKAGED_VERSION }}
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build tcpdump
|
||||
id: build_tcpdump
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_tcpdump.sh x86
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-x86_64:
|
||||
name: Build tcpdump x86_64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:x86_64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build tcpdump
|
||||
id: build_tcpdump
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_tcpdump.sh x86_64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-armhf:
|
||||
name: Build tcpdump ARMHF
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:arm-linux-musleabihf
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build tcpdump
|
||||
id: build_tcpdump
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_tcpdump.sh armhf
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
build-aarch64:
|
||||
name: Build tcpdump AARCH64
|
||||
runs-on: ubuntu-latest
|
||||
container: muslcc/x86_64:aarch64-linux-musl
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Install dependencies
|
||||
run: sudo apk update && sudo apk add bash && sudo bash build/install_deps_alpine.sh
|
||||
|
||||
- name: Build tcpdump
|
||||
id: build_tcpdump
|
||||
run: $GITHUB_WORKSPACE/build/targets/build_tcpdump.sh aarch64
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME }}
|
||||
path: ${{ steps.build_tcpdump.outputs.PACKAGED_NAME_PATH }}
|
||||
|
||||
create-release:
|
||||
name: Create tcpdump Release
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build-x86, build-x86_64, build-armhf, build-aarch64]
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Prepare Environment
|
||||
run: mkdir /tmp/releases
|
||||
|
||||
- name: Download Artifacts
|
||||
uses: actions/download-artifact@v2
|
||||
with:
|
||||
path: /tmp/releases
|
||||
|
||||
- name: List Artifacts
|
||||
run: ls -laR /tmp/releases
|
||||
|
||||
- name: Tag Release
|
||||
run: |
|
||||
set +e
|
||||
if git rev-list "tcpdump-v${{ needs.build-x86.outputs.version }}".. >/dev/null;then
|
||||
echo "Tag for tcpdump-v${{ needs.build-x86.outputs.version }} already exists. Skipping release creation."
|
||||
echo "NEW_RELEASE=false" >> $GITHUB_OUTPUT
|
||||
else
|
||||
git tag "tcpdump-v${{ needs.build-x86.outputs.version }}"
|
||||
git push origin "tcpdump-v${{ needs.build-x86.outputs.version }}"
|
||||
echo "NEW_RELEASE=true" >> $GITHUB_OUTPUT
|
||||
fi
|
||||
|
||||
- name: Create Release
|
||||
uses: ncipollo/release-action@v1
|
||||
if: ${{ steps.tag_release.outputs.NEW_RELEASE == 'true' }}
|
||||
with:
|
||||
name: tcpdump-v${{ needs.build-x86.outputs.version }}
|
||||
tag: tcpdump-v${{ needs.build-x86.outputs.version }}
|
||||
artifacts: "/tmp/releases/*/*"
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
51
README.md
51
README.md
|
@ -1,40 +1,31 @@
|
|||
# static-toolbox
|
||||
|
||||
This repository includes prebuild static binaries and build-recipes for various tools like Nmap.
|
||||
This repository includes prebuild static binaries and build-recipes for various tools like Nmap and OpenSSH.
|
||||
|
||||
The Linux versions are compiled with the [musl-cross](https://github.com/takeshixx/musl-cross) toolchain and the [openssl-pm-snapshot](https://github.com/drwetter/openssl-pm-snapshot) fork of OpenSSL in order to support a wide range of SSL/TLS features (Warning: some of them are insecure!).
|
||||
The Linux versions are compiled with the musl-cross toolchain and the openssl-pm-snapshot fork of OpenSSL in order to support a wide range of SSL/TLS features (Warning: some of them are insecure!).
|
||||
|
||||
## Nmap
|
||||
Compilation is done automatically with GitHub Actions. The binaries are uploaded to the [release section](https://github.com/ernw/static-toolbox/releases). The artifacts are also available in the artifacts of each GitHub Action. However, there are some limitations:
|
||||
|
||||
Precompiled versions of Nmap are available for the following operating systems/architectures:
|
||||
* Downloading of build artifacts in GitHub Ations currently requires a GitHub account
|
||||
* Blobs in build artifacts are zipped by the GitHub frontend by default, even zip files themselves! Build artifact zips may contain other zip files.
|
||||
* Build artifacts will expire after some time.
|
||||
|
||||
* [Linux x86](bin/linux/x86) (nmap, ncat, nping)
|
||||
* [Linux x86_64](bin/linux/x86_64) (nmap, ncat, nping)
|
||||
* [Linux armhf](bin/linux/armhf) (nmap, ncat, nping)
|
||||
* [Linux aarch64](bin/linux/aarch64) (nmap, ncat, nping)
|
||||
* [Windows x86](bin/windows/x86) (nmap)
|
||||
Therefore, it is recommended to download the binaries from the release section.
|
||||
|
||||
### Packaged Archives
|
||||
## Building Status
|
||||
|
||||
For Nmap it is recommended to use one of the [packaged](packaged/) archives. These include the nmap, ncat and nping binaries and also the Nmap data directory that contains service probes and NSE scripts.
|
||||
The following table shows the building status for the current toolset. The following architectures are currently supported:
|
||||
|
||||
## Socat
|
||||
* x86
|
||||
* x86_64
|
||||
* ARMHF
|
||||
* AARCH64
|
||||
|
||||
Precompiled versions of socat are available for the following operating systems/architectures:
|
||||
|
||||
* [Linux x86](bin/linux/x86)
|
||||
* [Linux x86_64](bin/linux/x86_64)
|
||||
|
||||
# Building with Vagrant
|
||||
|
||||
The recipes are supposed to be built in Docker containers. In case Docker is not available, it is recommended to use Vagrant to built everything in a VM, e.g. Nmap for Linux x86:
|
||||
|
||||
```
|
||||
vagrant up
|
||||
vagrant ssh
|
||||
cd /vagrant/recipes/nmap/linux_x86
|
||||
sudo docker build -t static-toolbox-nmap-x86 .
|
||||
sudo docker run -v $(pwd)/output:/output static-toolbox-nmap-x86
|
||||
```
|
||||
|
||||
This is also the recommended way to run the build scripts without Docker without creating directories like `/build` and `/output` on your host system.
|
||||
| Tool | Status |
|
||||
| ---- | ------ |
|
||||
|[Nmap](https://github.com/ernw/static-toolbox/actions?query=workflow%3A%22Nmap%22)||
|
||||
|[OpenSSH](https://github.com/ernw/static-toolbox/actions?query=workflow%3A%22OpenSSH%22)||
|
||||
|[socat](https://github.com/ernw/static-toolbox/actions?query=workflow%3A%22socat%22)||
|
||||
|[GDB & gdbserver](https://github.com/ernw/static-toolbox/actions?query=workflow%3AGDB)||
|
||||
|[tcpdump](https://github.com/ernw/static-toolbox/actions?query=workflow%3A%22tcpdump%22)||
|
||||
|[strace](https://github.com/ernw/static-toolbox/actions?query=workflow%3A%22strace%22)||
|
||||
|
|
24
Vagrantfile
vendored
24
Vagrantfile
vendored
|
@ -1,24 +0,0 @@
|
|||
# -*- mode: ruby -*-
|
||||
# vi: set ft=ruby :
|
||||
|
||||
Vagrant.configure("2") do |config|
|
||||
config.vm.box = "ubuntu/xenial64"
|
||||
|
||||
config.vm.provider "virtualbox" do |vb|
|
||||
vb.memory = "1024"
|
||||
end
|
||||
|
||||
config.vm.provision "shell", inline: <<-SHELL
|
||||
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
|
||||
echo "deb https://apt.dockerproject.org/repo ubuntu-xenial main" > /etc/apt/sources.list.d/docker.list
|
||||
apt update
|
||||
apt install -y linux-image-extra-$(uname -r) linux-image-extra-virtual
|
||||
apt install -y docker-engine
|
||||
service docker start
|
||||
apt install -y python3-pip
|
||||
pip3 install --upgrade pip
|
||||
pip3 install docker-compose
|
||||
systemctl daemon-reload
|
||||
systemctl restart docker
|
||||
SHELL
|
||||
end
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d3a2e105b3dadf29d04f206e89e550ecad0d0505337bad843cd720379a1c8e58
|
||||
size 2240744
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:85e921b9bad77c454881ede3dbc9794c79f6720c07831074a4204941cb37953e
|
||||
size 6108760
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1e64c1bc6359a5f9d8a72d14600249ad247712f3de1c1f9d7bc3e836653dabd9
|
||||
size 3090752
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:413fcd3c6238561fa02567f9c51305fe517de660a289f798eb07803aae6c5d45
|
||||
size 2111488
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b9bb59108da720ebaef08444876f5c4a5475ce6c1fefd257b213369e591a7dfa
|
||||
size 5865372
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e98024c84b9eaca750d462c03d65cb58caa5fdfdaafe4f02d71ae36f282b0322
|
||||
size 2850308
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c4aaf31b515ba9ae7081d6e98a638528a69d250bf6d42b350d7be7bbae94b904
|
||||
size 2892796
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b6835e881725c530a7524cf160534ba03abd7cf69ec75e52e13f9e31056588fd
|
||||
size 6744136
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4c17750027c7061af11e145908999d1854c54058cdb1d71360500913109742f8
|
||||
size 3698184
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b168517017e3c095ddc8622bae1284c789853af56ec469120b84494c4e77a6ca
|
||||
size 2483452
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:23f7c83e9a296743308c2ad660782d7ca1f7fb5a37628790ad7670e0ce1b76d5
|
||||
size 2979080
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:1e8a53344caed6b5a864b0bd2a23aa80208c53b39379026b16fe3604cafe4e63
|
||||
size 6765064
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:36b3bf585d69a4c35370a0c49e3cffbbc6fd66fcaba117291285ca2c34febb25
|
||||
size 3766760
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2c64fca54e392adb81d3557c18151596a91c595646a1b1249f903361db35de08
|
||||
size 2710216
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:718023119f84e976dd02b2b52886af88efe8812dd1e33f09d793044588393714
|
||||
size 1267200
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2f7e4f3d519097d591449f28697e3514fbb5c83677ac0bbdad3a1b216066a641
|
||||
size 138752
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d32ed06a5271ee64beee00b5666594631f72b5ccfa44541962548f601888c0c5
|
||||
size 2827776
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a9ec5e09dfdb0a5e2c0117706ec77a9fde010cdad6e28d5137e191ba8f5403dc
|
||||
size 299520
|
4
build/01_init.sh
Executable file
4
build/01_init.sh
Executable file
|
@ -0,0 +1,4 @@
|
|||
#!/bin/sh
|
||||
p=$(dirname "$0")
|
||||
apk update && apk add bash
|
||||
"$p"/install_deps_alpine.sh
|
33
build/02_install_build_compiler.sh
Executable file
33
build/02_install_build_compiler.sh
Executable file
|
@ -0,0 +1,33 @@
|
|||
#!/bin/bash
|
||||
|
||||
function die(){
|
||||
echo "$1"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [ $# -ne 1 ];then
|
||||
echo "Missing arch"
|
||||
exit 1
|
||||
fi
|
||||
ARCH="${1}"
|
||||
case $ARCH in
|
||||
x86_64|i686|aarch64)
|
||||
ARCH="${ARCH}-linux-musl"
|
||||
;;
|
||||
x86)
|
||||
ARCH="i686-linux-musl"
|
||||
;;
|
||||
arm)
|
||||
ARCH="arm-linux-musleabihf"
|
||||
;;
|
||||
*)
|
||||
echo "Invalid arch ${ARCH}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
HOST=http://musl.cc
|
||||
echo "Fetching ${HOST}/${ARCH}-cross.tgz"
|
||||
cd /
|
||||
curl -so ${ARCH}-cross.tgz ${HOST}/${ARCH}-cross.tgz || die "Failed to download build compiler package"
|
||||
tar -xf ${ARCH}-cross.tgz || die "Failed to extract build compiler package"
|
||||
rm ${ARCH}-cross.tgz || die "Failed to remove build compiler package"
|
31
build/install_deps_alpine.sh
Executable file
31
build/install_deps_alpine.sh
Executable file
|
@ -0,0 +1,31 @@
|
|||
#!/bin/sh
|
||||
apk update
|
||||
apk add \
|
||||
bash \
|
||||
git \
|
||||
perl \
|
||||
make \
|
||||
cmake \
|
||||
flex \
|
||||
bison \
|
||||
automake \
|
||||
autoconf \
|
||||
libtool \
|
||||
qemu-arm \
|
||||
qemu-aarch64 \
|
||||
qemu-ppc \
|
||||
qemu-ppc64 \
|
||||
file \
|
||||
texinfo \
|
||||
zip \
|
||||
wget \
|
||||
coreutils \
|
||||
gawk \
|
||||
gmp-dev \
|
||||
libunistring-dev \
|
||||
libffi-dev \
|
||||
lttng-ust-dev \
|
||||
curl \
|
||||
rsync \
|
||||
util-linux \
|
||||
patch
|
306
build/lib.sh
Executable file
306
build/lib.sh
Executable file
|
@ -0,0 +1,306 @@
|
|||
#!/bin/bash
|
||||
GIT_OPENSSL="https://github.com/drwetter/openssl-pm-snapshot.git"
|
||||
GIT_BINUTILS_GDB="https://github.com/bminor/binutils-gdb.git"
|
||||
GIT_READLINE="https://git.savannah.gnu.org/git/readline.git"
|
||||
GIT_NCURSES="https://github.com/ThomasDickey/ncurses-snapshots.git"
|
||||
GIT_LIBPCAP="https://github.com/the-tcpdump-group/libpcap.git"
|
||||
|
||||
BUILD_DIRECTORY="/build"
|
||||
OUTPUT_DIRECTORY="/output"
|
||||
GCC_OPTS="-static -fPIC"
|
||||
GXX_OPTS="-static -static-libstdc++ -fPIC"
|
||||
TMP_DIR=$(mktemp -dt building_lib.XXXXXX)
|
||||
trap "rm -rf ${TMP_DIR}" EXIT TERM
|
||||
|
||||
# The init function that has to
|
||||
# be called before running any
|
||||
# other function. Should be used
|
||||
# to configure the building env.
|
||||
init_lib(){
|
||||
CURRENT_ARCH="$1"
|
||||
if [ ! -d "$BUILD_DIRECTORY" ];then
|
||||
mkdir -p $BUILD_DIRECTORY
|
||||
fi
|
||||
if [ ! -d "$OUTPUT_DIRECTORY" ];then
|
||||
mkdir -p $OUTPUT_DIRECTORY
|
||||
fi
|
||||
}
|
||||
|
||||
# Set a HTTP proxy for fetching
|
||||
# software via HTTP and Git.
|
||||
set_http_proxy(){
|
||||
proxy=$1
|
||||
export http_proxy="$proxy"
|
||||
export https_proxy="$proxy"
|
||||
git config --global http.proxy "$proxy"
|
||||
}
|
||||
|
||||
# Return a host triple for the
|
||||
# selected architecture.
|
||||
get_host_triple(){
|
||||
local host
|
||||
if [ "$CURRENT_ARCH" == "x86" ];then
|
||||
host="i686-linux-musl"
|
||||
elif [ "$CURRENT_ARCH" == "x86_64" ];then
|
||||
host="x86_64-linux-musl"
|
||||
elif [ "$CURRENT_ARCH" == "armhf" ];then
|
||||
host="arm-linux-musleabihf"
|
||||
elif [ "$CURRENT_ARCH" == "aarch64" ];then
|
||||
host="aarch64-linux-musl"
|
||||
elif [ "$CURRENT_ARCH" == "ppc32" ];then
|
||||
host="powerpc-linux-musl"
|
||||
elif [ "$CURRENT_ARCH" == "ppc64" ];then
|
||||
host="powerpc64-linux-musl"
|
||||
fi
|
||||
echo $host
|
||||
}
|
||||
|
||||
# Fetch and extract a resource via
|
||||
# HTTP or clone a Git repository.
|
||||
fetch(){
|
||||
if [ "$#" -ne 3 ];then
|
||||
echo "fetch() requires a source, destination and method."
|
||||
echo "Example: fetch http://github.com/test.git /build/test git"
|
||||
exit 1
|
||||
fi
|
||||
source=$1
|
||||
shift
|
||||
destination=$1
|
||||
shift
|
||||
method=$@
|
||||
# TODO: check if $source is a valid URL
|
||||
if [ -d "$destination" ] || [ -f "$destination" ];then
|
||||
echo "Destination ${destination} already exists, skipping."
|
||||
return
|
||||
fi
|
||||
if [ "${method,,}" == "http" ];then
|
||||
cd /tmp || { echo "Could not cd to /tmp"; exit 1; }
|
||||
headers=$(mktemp headers.XXXXXX)
|
||||
curl -L -D "$headers" -sOJ "$source"
|
||||
filename=$(cat "$headers" | grep -o -E 'filename=.*$' | sed -e 's/filename=//')
|
||||
filename=$(trim "$filename")
|
||||
extract "$filename" "$destination"
|
||||
trap "rm -rf ${headers} /tmp/'${filename}'" EXIT TERM
|
||||
elif [ "${method,,}" == "git" ];then
|
||||
git clone "$source" "$destination"
|
||||
else
|
||||
echo "Invalid method ${method}"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Extract an archive to a
|
||||
# destination directory.
|
||||
extract(){
|
||||
if [ "$#" -ne 2 ];then
|
||||
echo "extract() requires a source and destination."
|
||||
exit 1
|
||||
fi
|
||||
source=$1
|
||||
destination=$2
|
||||
if [ ! -d "$destination" ];then
|
||||
mkdir -p "$destination"
|
||||
fi
|
||||
if [ -f "$source" ] ; then
|
||||
case $source in
|
||||
*.tar.bz2) tar xjf "$source" -C "$destination" --strip-components 1 ;;
|
||||
*.tar.gz) tar xzf "$source" -C "$destination" --strip-components 1 ;;
|
||||
*.tar.xz) tar xvfJ "$source" -C "$destination" --strip-components 1 ;;
|
||||
*.tar) tar xf "$source" -C "$destination" --strip-components 1 ;;
|
||||
*.tbz2) tar xjf "$source" -C "$destination" --strip-components 1 ;;
|
||||
*.tgz) tar xzf "$source" -C "$destination" --strip-components 1 ;;
|
||||
*) echo "'${source}' cannot be extracted via extract()" ;;
|
||||
esac
|
||||
else
|
||||
echo "'${source}' is not a valid file"
|
||||
fi
|
||||
}
|
||||
|
||||
# Remove leading and
|
||||
# trailing whitespaces.
|
||||
trim(){
|
||||
local var="$*"
|
||||
var="${var#"${var%%[![:space:]]*}"}"
|
||||
var="${var%"${var##*[![:space:]]}"}"
|
||||
echo -n "$var"
|
||||
}
|
||||
|
||||
# Determine the version of
|
||||
# a binary after building.
|
||||
get_version(){
|
||||
local cmd="$1"
|
||||
if [ -z "$cmd" ];then
|
||||
echo "Please provide a command to determine the version" >&2
|
||||
echo "Example: /build/test --version | awk '{print \$2}'" >&2
|
||||
exit 1
|
||||
fi
|
||||
local version="-"
|
||||
if [ "$CURRENT_ARCH" == "armhf" ];then
|
||||
if which qemu-arm 1>&2 2>/dev/null;then
|
||||
cmd="qemu-arm ${cmd}"
|
||||
version+=$(eval "$cmd")
|
||||
else
|
||||
echo "qemu-arm not found, skipping ARMHF version checks." >&2
|
||||
fi
|
||||
elif [ "$CURRENT_ARCH" == "aarch64" ];then
|
||||
if which qemu-aarch64 1>&2 2>/dev/null;then
|
||||
cmd="qemu-aarch64 ${cmd}"
|
||||
version+=$(eval "$cmd")
|
||||
else
|
||||
echo "qemu-aarch64 not found, skipping AARCH64 version checks." >&2
|
||||
fi
|
||||
elif [ "$CURRENT_ARCH" == "ppc32" ];then
|
||||
if which qemu-ppc 1>&2 2>/dev/null;then
|
||||
cmd="qemu-ppc ${cmd}"
|
||||
version+=$(eval "$cmd")
|
||||
else
|
||||
echo "qemu-ppc not found, skipping ppc32 version checks." >&2
|
||||
fi
|
||||
elif [ "$CURRENT_ARCH" == "ppc64" ];then
|
||||
if which qemu-ppc64 1>&2 2>/dev/null;then
|
||||
cmd="qemu-ppc64 ${cmd}"
|
||||
version+=$(eval "$cmd")
|
||||
else
|
||||
echo "qemu-ppc64 not found, skipping ppc64 version checks." >&2
|
||||
fi
|
||||
else
|
||||
version+=$(eval "$cmd")
|
||||
fi
|
||||
if [ "$version" == "-" ];then
|
||||
version+="${CURRENT_ARCH}"
|
||||
else
|
||||
version+="-${CURRENT_ARCH}"
|
||||
fi
|
||||
echo "$version"
|
||||
}
|
||||
|
||||
lib_create_tmp_dir(){
|
||||
local tmp_dir=$(mktemp -dt -p ${TMP_DIR} tmpdir.XXXXXX)
|
||||
echo "$tmp_dir"
|
||||
}
|
||||
|
||||
lib_check_lib_arch(){
|
||||
lib=$1
|
||||
if [ ! -f "$lib" ];then
|
||||
echo ""
|
||||
return
|
||||
fi
|
||||
local tmp_dir=$(lib_create_tmp_dir)
|
||||
cp "$lib" "$tmp_dir"
|
||||
bash -c "cd ${tmp_dir}; ar x $(basename ${lib})"
|
||||
local output=$(find "${tmp_dir}" -name "*.o" -exec file {} \;)
|
||||
if echo "$output" | grep -q "Intel 80386";then
|
||||
echo "Arch of ${lib} is x86" >&2
|
||||
echo "x86"
|
||||
elif echo "$output" | grep -q "x86-64";then
|
||||
echo "Arch of ${lib} is x86_64" >&2
|
||||
echo "x86_64"
|
||||
elif echo "$output" | grep -q "ARM aarch64";then
|
||||
echo "Arch of ${lib} is armhf" >&2
|
||||
echo "armhf"
|
||||
elif echo "$output" | grep -q "ARM,";then
|
||||
echo "Arch of ${lib} is aarch64" >&2
|
||||
echo "aarch64"
|
||||
else
|
||||
echo "Could not determine arch of library ${lib}" >&2
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
|
||||
lib_build_openssl(){
|
||||
local version=$1
|
||||
fetch "$GIT_OPENSSL" "${BUILD_DIRECTORY}/openssl" git
|
||||
cd "${BUILD_DIRECTORY}/openssl" || { echo "Cannot cd to ${BUILD_DIRECTORY}/openssl"; exit 1; }
|
||||
if [ -n "$version" ];then
|
||||
git checkout "$version" || echo "Version ${version} not found, continuing with master."
|
||||
fi
|
||||
if [ -f "${BUILD_DIRECTORY}/openssl/libssl.a" ];then
|
||||
lib_arch=$(lib_check_lib_arch "${BUILD_DIRECTORY}/openssl/libssl.a")
|
||||
if [ "$lib_arch" != "$CURRENT_ARCH" ];then
|
||||
echo "Rebuild for current arch"
|
||||
git clean -fdx || true
|
||||
else
|
||||
echo "[+] OpenSSL already available for current arch, skipping building"
|
||||
return
|
||||
fi
|
||||
fi
|
||||
local openssl_arch
|
||||
if [ "${CURRENT_ARCH}" == "x86" ] ||
|
||||
[ "${CURRENT_ARCH}" == "armhf" ];then
|
||||
openssl_arch="linux-generic32"
|
||||
elif [ "${CURRENT_ARCH}" == "x86_64" ];then
|
||||
openssl_arch="linux-x86_64"
|
||||
elif [ "${CURRENT_ARCH}" == "aarch64" ];then
|
||||
openssl_arch="linux-generic64"
|
||||
elif [ "${CURRENT_ARCH}" == "ppc32" ];then
|
||||
openssl_arch="linux-ppc"
|
||||
elif [ "${CURRENT_ARCH}" == "ppc64" ];then
|
||||
openssl_arch="linux-ppc"
|
||||
fi
|
||||
CFLAGS="${GCC_OPTS}" \
|
||||
./Configure \
|
||||
no-shared \
|
||||
"$openssl_arch"
|
||||
make -j4
|
||||
echo "[+] Finished building OpenSSL ${CURRENT_ARCH}"
|
||||
}
|
||||
|
||||
lib_build_zlib(){
|
||||
fetch "$GIT_BINUTILS_GDB" "${BUILD_DIRECTORY}/binutils-gdb" git
|
||||
cd "${BUILD_DIRECTORY}/binutils-gdb/zlib" || { echo "Cannot cd to ${BUILD_DIRECTORY}/binutils-gdb/zlib"; exit 1; }
|
||||
git clean -fdx
|
||||
CC="gcc ${GCC_OPTS}" \
|
||||
CXX="g++ ${GXX_OPTS}" \
|
||||
/bin/bash ./configure \
|
||||
--host="$(get_host_triple)" \
|
||||
--enable-static
|
||||
make -j4
|
||||
echo "[+] Finished building zlib ${CURRENT_ARCH}"
|
||||
}
|
||||
|
||||
lib_build_readline(){
|
||||
fetch "$GIT_READLINE" "${BUILD_DIRECTORY}/readline" git
|
||||
cd "${BUILD_DIRECTORY}/readline" || { echo "Cannot cd to ${BUILD_DIRECTORY}/readline"; exit 1; }
|
||||
git clean -fdx
|
||||
CFLAGS="${GCC_OPTS}" \
|
||||
CXXFLAGS="${GXX_OPTS}" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)" \
|
||||
--disable-shared \
|
||||
--enable-static
|
||||
make -j4
|
||||
echo "[+] Finished building readline ${CURRENT_ARCH}"
|
||||
}
|
||||
|
||||
lib_build_ncurses(){
|
||||
fetch "$GIT_NCURSES" "${BUILD_DIRECTORY}/ncurses" git
|
||||
cd "${BUILD_DIRECTORY}/ncurses" || { echo "Cannot cd to ${BUILD_DIRECTORY}/ncurses"; exit 1; }
|
||||
git clean -fdx
|
||||
git checkout v6_2
|
||||
|
||||
CMD="CFLAGS=\"${GCC_OPTS}\" "
|
||||
CMD+="CXXFLAGS=\"${GXX_OPTS}\" "
|
||||
CMD+="./configure --host=$(get_host_triple) --disable-shared --enable-static"
|
||||
if [ "$CURRENT_ARCH"!="x86" -a "$CURRENT_ARCH"!="x86_64" ];then
|
||||
CMD+=" --with-build-cc=/x86_64-linux-musl-cross/bin/x86_64-linux-musl-gcc"
|
||||
fi
|
||||
eval "$CMD"
|
||||
make -j4
|
||||
echo "[+] Finished building ncurses ${CURRENT_ARCH}"
|
||||
}
|
||||
|
||||
lib_build_libpcap(){
|
||||
fetch "$GIT_LIBPCAP" "${BUILD_DIRECTORY}/libpcap" git
|
||||
cd "${BUILD_DIRECTORY}/libpcap" || { echo "Cannot cd to ${BUILD_DIRECTORY}/libpcap"; exit 1; }
|
||||
git clean -fdx
|
||||
git checkout libpcap-1.9.1
|
||||
CFLAGS="${GCC_OPTS}" \
|
||||
CXXFLAGS="${GXX_OPTS}" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)" \
|
||||
--with-pcap=linux \
|
||||
--disable-shared \
|
||||
--enable-static
|
||||
make -j4
|
||||
echo "[+] Finished building libpcap ${CURRENT_ARCH}"
|
||||
}
|
59
build/targets/build_gdb.sh
Executable file
59
build/targets/build_gdb.sh
Executable file
|
@ -0,0 +1,59 @@
|
|||
#!/bin/bash
|
||||
if [ -z "$GITHUB_WORKSPACE" ];then
|
||||
echo "GITHUB_WORKSPACE environemnt variable not set!"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
set -o pipefail
|
||||
set -x
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib $1
|
||||
|
||||
build_gdb() {
|
||||
fetch "$GIT_BINUTILS_GDB" "${BUILD_DIRECTORY}/binutils-gdb" git
|
||||
cd "${BUILD_DIRECTORY}/binutils-gdb/" || { echo "Cannot cd to ${BUILD_DIRECTORY}/binutils-gdb/"; exit 1; }
|
||||
git clean -fdx
|
||||
git checkout gdb-12.1-release
|
||||
CMD="CFLAGS=\"${GCC_OPTS}\" "
|
||||
CMD+="CXXFLAGS=\"${GXX_OPTS}\" "
|
||||
CMD+="LDFLAGS=\"-static\" "
|
||||
if [ "$CURRENT_ARCH" != "x86_64" ];then
|
||||
CMD+="CC_FOR_BUILD=\"/x86_64-linux-musl-cross/bin/x86_64-linux-musl-gcc\" "
|
||||
CMD+="CPP_FOR_BUILD=\"/x86_64-linux-musl-cross/bin/x86_64-linux-musl-g++\" "
|
||||
fi
|
||||
CMD+="${BUILD_DIRECTORY}/binutils-gdb/configure --build=x86_64-linux-musl --host=$(get_host_triple) "
|
||||
CMD+="--disable-shared --enable-static --enable-gdbserver --disable-nls --disable-inprocess-agent"
|
||||
|
||||
mkdir -p "${BUILD_DIRECTORY}/gdb_build"
|
||||
cd "${BUILD_DIRECTORY}/gdb_build/"
|
||||
eval "$CMD"
|
||||
make -j4
|
||||
|
||||
strip "${BUILD_DIRECTORY}/gdb_build/gdb/gdb" "${BUILD_DIRECTORY}/gdb_build/gdbserver/gdbserver"
|
||||
}
|
||||
|
||||
main() {
|
||||
build_gdb
|
||||
if [ ! -f "${BUILD_DIRECTORY}/gdb_build/gdb/gdb" ] || \
|
||||
[ ! -f "${BUILD_DIRECTORY}/gdb_build/gdbserver/gdbserver" ];then
|
||||
echo "[-] Building GDB ${CURRENT_ARCH} failed!"
|
||||
exit 1
|
||||
fi
|
||||
GDB_VERSION=$(get_version "${BUILD_DIRECTORY}/gdb_build/gdb/gdb --version |head -n1 |awk '{print \$4}'")
|
||||
GDBSERVER_VERSION=$(get_version "${BUILD_DIRECTORY}/gdb_build/gdbserver/gdbserver --version |head -n1 |awk '{print \$4}'")
|
||||
version_number=$(echo "$GDB_VERSION" | cut -d"-" -f2)
|
||||
cp "${BUILD_DIRECTORY}/gdb_build/gdb/gdb" "${OUTPUT_DIRECTORY}/gdb${GDB_VERSION}"
|
||||
cp "${BUILD_DIRECTORY}/gdb_build/gdbserver/gdbserver" "${OUTPUT_DIRECTORY}/gdbserver${GDBSERVER_VERSION}"
|
||||
echo "[+] Finished building GDB ${CURRENT_ARCH}"
|
||||
|
||||
echo "PACKAGED_NAME=gdb${GDB_VERSION}" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_NAME_PATH=/output/*" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_VERSION=${version_number}" >> $GITHUB_OUTPUT
|
||||
}
|
||||
|
||||
main
|
74
build/targets/build_nmap.sh
Executable file
74
build/targets/build_nmap.sh
Executable file
|
@ -0,0 +1,74 @@
|
|||
#!/bin/bash
|
||||
if [ -z "$GITHUB_WORKSPACE" ];then
|
||||
echo "GITHUB_WORKSPACE environemnt variable not set!"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
set -o pipefail
|
||||
set -x
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib $1
|
||||
|
||||
build_nmap() {
|
||||
fetch "https://github.com/nmap/nmap.git" "${BUILD_DIRECTORY}/nmap" git
|
||||
cd "${BUILD_DIRECTORY}/nmap"
|
||||
git clean -fdx || true
|
||||
# make sure we only build the static libraries
|
||||
sed -i '/build-zlib: $(ZLIBDIR)\/Makefile/!b;n;c\\t@echo Compiling zlib; cd $(ZLIBDIR) && $(MAKE) static;' "${BUILD_DIRECTORY}/nmap/Makefile.in"
|
||||
CC='gcc -static -fPIC' \
|
||||
CXX='g++ -static -static-libstdc++ -fPIC' \
|
||||
LD=ld \
|
||||
LDFLAGS="-L/build/openssl" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)" \
|
||||
--without-ndiff \
|
||||
--without-zenmap \
|
||||
--without-nmap-update \
|
||||
--without-libssh2 \
|
||||
--with-pcap=linux \
|
||||
--with-openssl="${BUILD_DIRECTORY}/openssl"
|
||||
sed -i -e "s/shared\: /shared\: #/" "${BUILD_DIRECTORY}/nmap/libpcap/Makefile"
|
||||
make
|
||||
strip nmap ncat/ncat nping/nping
|
||||
}
|
||||
|
||||
main() {
|
||||
lib_build_openssl
|
||||
build_nmap
|
||||
if [ ! -f "${BUILD_DIRECTORY}/nmap/nmap" -o \
|
||||
! -f "${BUILD_DIRECTORY}/nmap/ncat/ncat" -o \
|
||||
! -f "${BUILD_DIRECTORY}/nmap/nping/nping" ];then
|
||||
echo "[-] Building Nmap ${CURRENT_ARCH} failed!"
|
||||
exit 1
|
||||
fi
|
||||
VERSION_CMD=$(get_version "${BUILD_DIRECTORY}/nmap/nmap --version")
|
||||
NMAP_VERSION=$(echo "$VERSION_CMD" | grep "Nmap version" | awk '{print $3}')
|
||||
if [ -n "$NMAP_VERSION" ];then
|
||||
NMAP_VERSION="-${NMAP_VERSION}"
|
||||
fi
|
||||
cp "${BUILD_DIRECTORY}/nmap/nmap" "${OUTPUT_DIRECTORY}/nmap${NMAP_VERSION}"
|
||||
cp "${BUILD_DIRECTORY}/nmap/ncat/ncat" "${OUTPUT_DIRECTORY}/ncat${NMAP_VERSION}"
|
||||
cp "${BUILD_DIRECTORY}/nmap/nping/nping" "${OUTPUT_DIRECTORY}/nping${NMAP_VERSION}"
|
||||
echo "[+] Finished building Nmap ${CURRENT_ARCH}"
|
||||
NMAP_COMMIT=$(cd "${BUILD_DIRECTORY}/nmap/" && git rev-parse --short HEAD)
|
||||
NMAP_DIR="${OUTPUT_DIRECTORY}/nmap-data${NMAP_VERSION}-${NMAP_COMMIT}"
|
||||
if [ ! -d "$NMAP_DIR" ];then
|
||||
echo "[-] ${NMAP_DIR} does not exist, creating it"
|
||||
mkdir -p "${NMAP_DIR}"
|
||||
fi
|
||||
if [ -n "$(ls $NMAP_DIR)" ];then
|
||||
echo "[+] Data directory is not empty"
|
||||
exit
|
||||
fi
|
||||
cd "${BUILD_DIRECTORY}/nmap"
|
||||
make install
|
||||
cp -r /usr/local/share/nmap/* $NMAP_DIR
|
||||
echo "[+] Copied data to Nmap data dir"
|
||||
}
|
||||
|
||||
main
|
57
build/targets/build_openssh.sh
Executable file
57
build/targets/build_openssh.sh
Executable file
|
@ -0,0 +1,57 @@
|
|||
#!/bin/bash
|
||||
if [ -z "$GITHUB_WORKSPACE" ];then
|
||||
echo "GITHUB_WORKSPACE environemnt variable not set!"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
set -o pipefail
|
||||
set -x
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib $1
|
||||
|
||||
build_openssh() {
|
||||
fetch "https://github.com/openssh/openssh-portable.git" "${BUILD_DIRECTORY}/openssh-portable" git
|
||||
cd "${BUILD_DIRECTORY}/openssh-portable"
|
||||
git checkout V_9_1_P1
|
||||
git clean -fdx
|
||||
autoreconf -i
|
||||
CC="gcc ${GCC_OPTS}" \
|
||||
CXX="g++ ${GXX_OPTS}" \
|
||||
CXXFLAGS="-I${BUILD_DIRECTORY}/openssl -I${BUILD_DIRECTORY}/binutils-gdb/zlib" \
|
||||
./configure \
|
||||
--with-ssl-engine \
|
||||
--with-ssl-dir="${BUILD_DIRECTORY}/openssl" \
|
||||
--with-zlib="${BUILD_DIRECTORY}/binutils-gdb/zlib" \
|
||||
--with-ldflags=-static \
|
||||
--host="$(get_host_triple)"
|
||||
make -j4
|
||||
strip ssh sshd
|
||||
}
|
||||
|
||||
main() {
|
||||
lib_build_openssl
|
||||
lib_build_zlib
|
||||
build_openssh
|
||||
if [ ! -f "${BUILD_DIRECTORY}/openssh-portable/ssh" -o \
|
||||
! -f "${BUILD_DIRECTORY}/openssh-portable/sshd" ];then
|
||||
echo "[-] Building OpenSSH ${CURRENT_ARCH} failed!"
|
||||
exit 1
|
||||
fi
|
||||
OPENSSH_VERSION=$(get_version "${BUILD_DIRECTORY}/openssh-portable/ssh -V 2>&1 | awk '{print \$1}' | sed 's/,//g'")
|
||||
version_number=$(echo "$OPENSSH_VERSION" | cut -d"-" -f2 | cut -d"_" -f2)
|
||||
cp "${BUILD_DIRECTORY}/openssh-portable/ssh" "${OUTPUT_DIRECTORY}/ssh${OPENSSH_VERSION}"
|
||||
cp "${BUILD_DIRECTORY}/openssh-portable/sshd" "${OUTPUT_DIRECTORY}/sshd${OPENSSH_VERSION}"
|
||||
echo "[+] Finished building OpenSSH ${CURRENT_ARCH}"
|
||||
|
||||
OPENSSH_VERSION=$(echo $OPENSSH_VERSION | sed 's/-//')
|
||||
echo "PACKAGED_NAME=${OPENSSH_VERSION} >> $GITHUB_OUTPUT"
|
||||
echo "PACKAGED_NAME_PATH=/output/* >> $GITHUB_OUTPUT"
|
||||
echo "PACKAGED_VERSION=${version_number} >> $GITHUB_OUTPUT"
|
||||
}
|
||||
|
||||
main
|
49
build/targets/build_socat.sh
Executable file
49
build/targets/build_socat.sh
Executable file
|
@ -0,0 +1,49 @@
|
|||
#!/bin/bash
|
||||
if [ -z "$GITHUB_WORKSPACE" ];then
|
||||
echo "GITHUB_WORKSPACE environemnt variable not set!"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64|ppc32|ppc64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
set -o pipefail
|
||||
set -x
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib "$1"
|
||||
|
||||
build_socat() {
|
||||
fetch "http://repo.or.cz/socat.git" "${BUILD_DIRECTORY}/socat" git
|
||||
cd "${BUILD_DIRECTORY}/socat"
|
||||
git clean -fdx
|
||||
autoconf
|
||||
CFLAGS="${GCC_OPTS}" \
|
||||
CXXFLAGS="${GXX_OPTS}" \
|
||||
CPPFLAGS="-I${BUILD_DIRECTORY} -I${BUILD_DIRECTORY}/openssl/include -DNETDB_INTERNAL=-1" \
|
||||
LDFLAGS="-L${BUILD_DIRECTORY}/readline -L${BUILD_DIRECTORY}/ncurses/lib -L${BUILD_DIRECTORY}/openssl" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)"
|
||||
make -j4
|
||||
strip socat
|
||||
}
|
||||
|
||||
main() {
|
||||
#sudo apt install yodl
|
||||
lib_build_openssl
|
||||
lib_build_ncurses
|
||||
lib_build_readline
|
||||
build_socat
|
||||
local version
|
||||
version=$(get_version "${BUILD_DIRECTORY}/socat/socat -V | grep 'socat version' | awk '{print \$3}'")
|
||||
version_number=$(echo "$version" | cut -d"-" -f2)
|
||||
cp "${BUILD_DIRECTORY}/socat/socat" "${OUTPUT_DIRECTORY}/socat${version}"
|
||||
echo "[+] Finished building socat ${CURRENT_ARCH}"
|
||||
|
||||
echo "PACKAGED_NAME=socat${version}" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_NAME_PATH=${OUTPUT_DIRECTORY}/*" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_VERSION=${version_number}" >> $GITHUB_OUTPUT
|
||||
}
|
||||
|
||||
main
|
48
build/targets/build_strace.sh
Executable file
48
build/targets/build_strace.sh
Executable file
|
@ -0,0 +1,48 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -x
|
||||
set -o pipefail
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib "$1"
|
||||
|
||||
VERSION="v6.3"
|
||||
|
||||
build_strace() {
|
||||
fetch "https://github.com/strace/strace" "${BUILD_DIRECTORY}/strace" git
|
||||
cd "${BUILD_DIRECTORY}/strace"
|
||||
git clean -fdx
|
||||
git checkout "$VERSION"
|
||||
./bootstrap
|
||||
CMD="CFLAGS=\"${GCC_OPTS}\" "
|
||||
CMD+="CXXFLAGS=\"${GXX_OPTS}\" "
|
||||
CMD+="LDFLAGS=\"-static -pthread\" "
|
||||
if [ "$CURRENT_ARCH" != "x86_64" ];then
|
||||
CMD+="CC_FOR_BUILD=\"/x86_64-linux-musl-cross/bin/x86_64-linux-musl-gcc\" "
|
||||
CMD+="CPP_FOR_BUILD=\"/x86_64-linux-musl-cross/bin/x86_64-linux-musl-g++ -E\" "
|
||||
CMD+="CXX_FOR_BUILD=\"/x86_64-linux-musl-cross/bin/x86_64-linux-musl-g++\" "
|
||||
fi
|
||||
CMD+="./configure --disable-mpers --host=$(get_host_triple)"
|
||||
eval "$CMD"
|
||||
make CFLAGS="-w" -j4
|
||||
strip "${BUILD_DIRECTORY}/strace/src/strace"
|
||||
}
|
||||
|
||||
main() {
|
||||
build_strace
|
||||
local version
|
||||
version=$(get_version "${BUILD_DIRECTORY}/strace/src/strace -V 2>&1 | head -n1 | awk '{print \$4}'")
|
||||
version_number=$(echo "$version" | cut -d"-" -f2)
|
||||
cp "${BUILD_DIRECTORY}/strace/src/strace" "${OUTPUT_DIRECTORY}/strace${version}"
|
||||
echo "[+] Finished building strace ${CURRENT_ARCH}"
|
||||
|
||||
echo "PACKAGED_NAME=strace${version}" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_NAME_PATH=${OUTPUT_DIRECTORY}/*" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_VERSION=${version_number}" >> $GITHUB_OUTPUT
|
||||
}
|
||||
|
||||
main
|
47
build/targets/build_tcpdump.sh
Executable file
47
build/targets/build_tcpdump.sh
Executable file
|
@ -0,0 +1,47 @@
|
|||
#!/bin/bash
|
||||
if [ -z "$GITHUB_WORKSPACE" ];then
|
||||
echo "GITHUB_WORKSPACE environemnt variable not set!"
|
||||
exit 1
|
||||
fi
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
set -e
|
||||
set -o pipefail
|
||||
set -x
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib "$1"
|
||||
|
||||
build_tcpdump() {
|
||||
fetch "https://github.com/the-tcpdump-group/tcpdump.git" "${BUILD_DIRECTORY}/tcpdump" git
|
||||
cd "${BUILD_DIRECTORY}/tcpdump"
|
||||
git clean -fdx
|
||||
git checkout tcpdump-4.9.3
|
||||
export LIBPCAP_PATH="${BUILD_DIRECTORY}/libpcap"
|
||||
CFLAGS="${GCC_OPTS} -I${LIBPCAP_PATH} -L${LIBPCAP_PATH}" \
|
||||
CXXFLAGS="${GXX_OPTS}" \
|
||||
CPPFLAGS="-static" \
|
||||
LDFLAGS="-static" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)"
|
||||
make -j4
|
||||
strip tcpdump
|
||||
}
|
||||
|
||||
main() {
|
||||
lib_build_libpcap
|
||||
build_tcpdump
|
||||
local version
|
||||
version=$(get_version "${BUILD_DIRECTORY}/tcpdump/tcpdump --version 2>&1 | head -n1 | awk '{print \$3}'")
|
||||
version_number=$(echo "$version" | cut -d"-" -f2)
|
||||
cp "${BUILD_DIRECTORY}/tcpdump/tcpdump" "${OUTPUT_DIRECTORY}/tcpdump${version}"
|
||||
echo "[+] Finished building tcpdump ${CURRENT_ARCH}"
|
||||
|
||||
echo "PACKAGED_NAME=tcpdump${version}" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_NAME_PATH=${OUTPUT_DIRECTORY}/*" >> $GITHUB_OUTPUT
|
||||
echo "PACKAGED_VERSION=${version_number}" >> $GITHUB_OUTPUT
|
||||
}
|
||||
|
||||
main
|
57
build/targets/build_tcpreplay.sh
Executable file
57
build/targets/build_tcpreplay.sh
Executable file
|
@ -0,0 +1,57 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
set -x
|
||||
set -o pipefail
|
||||
if [ "$#" -ne 1 ];then
|
||||
echo "Usage: ${0} [x86|x86_64|armhf|aarch64]"
|
||||
echo "Example: ${0} x86_64"
|
||||
exit 1
|
||||
fi
|
||||
source $GITHUB_WORKSPACE/build/lib.sh
|
||||
init_lib "$1"
|
||||
|
||||
build_autogen(){
|
||||
fetch "http://ftp.gnu.org/gnu/autogen/rel5.16.2/autogen-5.16.2.tar.gz" "${BUILD_DIRECTORY}/autogen" http
|
||||
cd "${BUILD_DIRECTORY}/autogen"
|
||||
automake
|
||||
CFLAGS="${GCC_OPTS}" \
|
||||
CXXFLAGS="${GXX_OPTS}" \
|
||||
CPPFLAGS="-static" \
|
||||
LDFLAGS="-static" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)"
|
||||
make -j4
|
||||
make install
|
||||
}
|
||||
|
||||
build_tcpreplay() {
|
||||
fetch "https://github.com/appneta/tcpreplay.git" "${BUILD_DIRECTORY}/tcpdump" git
|
||||
cd "${BUILD_DIRECTORY}/tcpreplay"
|
||||
git clean -fdx
|
||||
git checkout v4.3.3
|
||||
export LIBPCAP_PATH="${BUILD_DIRECTORY}/libpcap"
|
||||
./autogen.sh
|
||||
CFLAGS="${GCC_OPTS} -I${LIBPCAP_PATH} -L${LIBPCAP_PATH}" \
|
||||
CXXFLAGS="${GXX_OPTS}" \
|
||||
CPPFLAGS="-static" \
|
||||
LDFLAGS="-static" \
|
||||
./configure \
|
||||
--host="$(get_host_triple)"
|
||||
make -j4
|
||||
strip tcpreplay
|
||||
}
|
||||
|
||||
main() {
|
||||
lib_build_libpcap
|
||||
build_autogen
|
||||
build_tcpreplay
|
||||
local version
|
||||
version=$(get_version "${BUILD_DIRECTORY}/tcpreplay/tcpreplay --version 2>&1 | head -n1 | awk '{print \$3}'")
|
||||
cp "${BUILD_DIRECTORY}/tcpreplay/tcpreplay" "${OUTPUT_DIRECTORY}/tcpreplay"
|
||||
echo "[+] Finished building tcpreplay ${CURRENT_ARCH}"
|
||||
|
||||
echo "PACKAGED_NAME=tcpreplay${version}"
|
||||
echo "PACKAGED_NAME_PATH=${OUTPUT_DIRECTORY}/*"
|
||||
}
|
||||
|
||||
main
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:59f6235e2d9cb8cea9d2ac0c8cd5063d46cbbbb3889db469453f0d0d337c9331
|
||||
size 590203
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e8cbb0596330e5df9a9790a8af83f881569293c737c1780a153d2604f0439132
|
||||
size 5002786
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:6a1d59ae055bf0c6da14373098f76898901aa0b40db5a50ca10139f4e38c6935
|
||||
size 14286
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e00eb6472df8d8e99b202d32268237145afb9da22b3b8d8b988287f27e7dd1f7
|
||||
size 6703
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4846ff4b3bafd1cb97b5934878a73857671b741bd14f82887160d45313bde235
|
||||
size 49601
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:22afb2a7bc4ad66230c4676dac14b2b114f8b321672ff16794779a11af86dced
|
||||
size 2408151
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4ed7c5db54e115c69be35a6de9702be8e2dcacbfb24fdd7f9ab1fcc3d57aaa7b
|
||||
size 998635
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:13efc885a0cd81ea46c76af0bd186758da87aadba5d72723b5a3722509fe5624
|
||||
size 10510
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5e015d654a6efb9b185d8a518f228e2d6d6bb507b5c26f1cfc021f2b74f40f08
|
||||
size 31936
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:055f8f9d980e07e6c8b1a1f912b636902b34b3bff1064634e82db4b9c847ffea
|
||||
size 48348
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8055382487b76ffe696428517f2e2b6ffb0252a0ef681638a7cf49c74faf1422
|
||||
size 73647
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:10c587496af77073119233e4569da60a8159e8aaa1794e22d69058275c02987c
|
||||
size 17095
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e276a5006a7fd791cd22cb53fec5a70eef353d9860ff792d2fc07df6857d294b
|
||||
size 10754
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a73f64cba2ff480df85b247e71a91e9a5dca72eb2d29e94284ec3ee292b27946
|
||||
size 4552
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:28c31e265dcb8c13ccb8defebb864cb52d6c56e1487d638dc3f24790493926dd
|
||||
size 14923
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f279c8ff5de600d07ab7ee06df4d0e6c179af9f3446a77c82888d88cbd98c597
|
||||
size 7469
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a6dc69c09cb8371fd034dc29dd2163d066c365c49c87c6bddb5fcd3841b79b59
|
||||
size 5803
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:12794f37f2b1f252bb8cd328fea6b8f86d612474a116d38214e9c4e124e2fa7a
|
||||
size 13170
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:850431973ef164b47ee9c2bf778c5bd55bcf3c52094f06c49b454e1c3fe3a883
|
||||
size 2445
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:9c4863ef2c57493b50549c5b9c01f8bf693b2c313ba1345b3b416d30ae2672e0
|
||||
size 17393
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a12e05895430bd30e8273054dd8e290b5dc6443a20228257cb2d0da5cbdf5682
|
||||
size 1864
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f0716c1103e2253b7f8176d7af2ccad519e5036f5ac51d5844c961c5e656f7a2
|
||||
size 41753
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7e29075edc40d843779e0969ae331de5ecdb92cf5d17394cb5fc02fec22273e3
|
||||
size 9672
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:23b1881e4d545d55194c2c57e53f4c7cac3412b8f7d33631755f38795f00b7e3
|
||||
size 51250
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ca5f1ca8356556f1c53e443083ba8cd9f328d60da3e3865bc58ef4f91b5cab10
|
||||
size 5916
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cc8770593ae1d224c5578f0410a6eb4dcbf19f68b294c650af8098af2d945d51
|
||||
size 16385
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:61fa4942b82181b571eb5aba656396cdeb68d7a6045a0b965b199049a11463f6
|
||||
size 78073
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7f19eb92ed745a2366929a6cdd85b48c93c3f811885dd3c855b5688d100d89e1
|
||||
size 11012
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5d848fe64cc046d755e73bc342c83e5ffb04eef045a6fd3d05b52d3c3565d5f8
|
||||
size 18662
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b4282689f3479350bccbf4d07a111d3c8304f6a80a114e8bb18b78674bc8e52b
|
||||
size 3210
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7898b97adbb71294b51b28ca1ab867739a557aed4facb2f8d69aa46b0e9e7b8b
|
||||
size 994
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d4c921466e544e9bc4377d5cf770b734ac3f27b54a6732a6e8f6936388b0c317
|
||||
size 243495
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d6e522f2c059a55fb9df3227d9762ba9dfaaca2b7a3fe3e8e17566be6d38a47f
|
||||
size 13855
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:22603ecd64462ee420923d6c7b923f8e03a4dfab0776aa498f33169756beb334
|
||||
size 1358909
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:11c4bc78fc8615324f175afa7a9785a2761225d13f8cdf1a3483692a5a0371e6
|
||||
size 5873
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:28b6c9ec5ef7968f0ff136c1da1e4bf63cac4b9079d3cfafeb64a3b1e47309c9
|
||||
size 56973
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:07a0cd4e552d985cf73bc5ddf95b08fee6e1614969e329202087904ec1b2c410
|
||||
size 13190
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:30e0961ba87e034d17ec14f344ce3c180d686cc3596d6e263aefa9d4b1a5fec0
|
||||
size 232735
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4094ebc956980de9328d8458a73d622b9049a4051fe32ccd8e545314c5ebc71f
|
||||
size 8503
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:909964b040ca2cdb73df2492f8c7836e602ad45de7faa4a2021272335aaa7845
|
||||
size 2768
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:aff15b905bb6578b06b219c659716f5e925b1791c510684f91cf178b19dbf81f
|
||||
size 1058
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:790d6b6811392961c2fb48ceb46884e47baa6f93b708d5f701caf4ffbcff1097
|
||||
size 635233
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:706c51f66c1183b1af00a3f2fa703b59c089ac067df7910bf17e0c0bf70acc35
|
||||
size 61424
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:07324b71438054febc1a0be08133d08959b76e119558322107498f76b3bd44b7
|
||||
size 1103
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8f30d00ea5eaa5c4020406daa5a4628538829c5b13953e535c96b4f4bc1db2c5
|
||||
size 865
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ea50c59ab2c2369e24e0396905b44d827c47fcd5fff59b2e04f947c2eb888e8c
|
||||
size 2162
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:928ef633e4a8e80668010957b7ae64b9e840e4d0fa88251a4fbc4a9d0da1b5da
|
||||
size 1555
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f53729b5e9d3c58a2b3c20a1b51c4083142256ff89a1843eb04d4975467f9775
|
||||
size 970
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b20d16181f5a52b9ab260e0923d8ac4c2c94957e7548a0e083f4d5faea0fa394
|
||||
size 18460
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d35393ce4be232340904038dc8a2e522ceaeac8f3ee475cbd1f7c74946994573
|
||||
size 9798
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b576395df271841b6a164b72909d7f69e8227fab321167d979eff80f35da8d60
|
||||
size 8317
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b3c41f298aed355cd0a0f37ded8bec50deae684bea44e2b7b50709877eefc502
|
||||
size 5173
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:3a038b70c9dbbe4f773d9f9d28ee16d2408ca1b1304fde5869c7247b72e5b9d4
|
||||
size 30325
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:174e70a18fe00cd112a508f7237410484a26b7b8430f4b4b795eb02bd4e8c986
|
||||
size 47033
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:38c81820ef65fe7a518846979199f868bf5c4c1c15f40cae7c7681f946853b64
|
||||
size 51
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ef074ec2a6e1d13eb618a210f48fb57be31007ceb8f9435d107bec2b01820a29
|
||||
size 758
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:953f229d3e3abc2b63d82c43f921398e07542de5fbc8759a7219e2350a22d0a1
|
||||
size 921
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:48dcdb781f54fd44e204671463952c7b834d42086ee4ad84982a08808ff55c9a
|
||||
size 5426
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:550d24b6af264274bfb5f394bdcf2e6c93a1e2f963a4a80ed8a08c0722dec73e
|
||||
size 1334
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ff7530d8162dd25db50a7da729ab64de77015e615a60bba658619c317f175822
|
||||
size 2358
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:b921c52abfac3202709dc739141d0df8fb37cd8115e8cde0e3df809760367f77
|
||||
size 712
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:316f3b7e468a063173cbd17a14cde345eae44e89848d2550349d8ee954ed78fb
|
||||
size 4111
|
|
@ -1,3 +0,0 @@
|
|||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:0ea7d885cc0cd9d07a88ac3c835430bd1b390a69da84b1748354e131f4d87a6a
|
||||
size 10757
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue