[nonet migration] adapt Makefile and github worklow, update build doc
This will permit to build on the github workflow both the 'net' and 'nonet' variant
This commit is contained in:
112
.github/workflows/build.yml
vendored
112
.github/workflows/build.yml
vendored
@@ -53,10 +53,10 @@ jobs:
|
||||
run: $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --install "platforms;android-26"
|
||||
|
||||
- name: Build native dependencies
|
||||
run: cd src/java/argon2 && $ANDROID_NDK_ROOT/ndk-build
|
||||
run: make native
|
||||
|
||||
- name: Build java dependencies
|
||||
run: cd src/build-scripts/ && ./build-java.sh
|
||||
run: make java
|
||||
|
||||
- name: Fixes (can be removed once merged in SamsungPass)
|
||||
run: |
|
||||
@@ -65,21 +65,41 @@ jobs:
|
||||
sed -i '' 's|<ReleaseVersion>1.0</ReleaseVersion>|<ReleaseVersion>1.0</ReleaseVersion><AndroidClassParser>class-parse</AndroidClassParser>|' src/SamsungPass/Xamarin.SamsungPass/SamsungPass/SamsungPass.csproj
|
||||
|
||||
- name: Install NuGet dependencies
|
||||
run: nuget restore src/KeePass.sln
|
||||
run: make nuget
|
||||
|
||||
- name: Build keepass2android
|
||||
run: cd src/build-scripts/ && ./build-xamarin.sh
|
||||
- name: Build keepass2android (net)
|
||||
run: |
|
||||
make msbuild Flavor=Net
|
||||
|
||||
- name: Build APK
|
||||
run: cd src/build-scripts/ && ./build-apk.sh
|
||||
- name: Build APK (net)
|
||||
run: |
|
||||
make apk Flavor=Net
|
||||
|
||||
- name: Archive production artifacts
|
||||
- name: Archive production artifacts (net)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: signed APK (built on ${{ github.job }})
|
||||
name: signed APK ('net' built on ${{ github.job }})
|
||||
path: |
|
||||
src/keepass2android/bin/*/*-Signed.apk
|
||||
|
||||
- name: Build keepass2android (nonet)
|
||||
run: |
|
||||
make msbuild Flavor=NoNet
|
||||
|
||||
- name: Build APK (nonet)
|
||||
run: |
|
||||
make apk Flavor=NoNet
|
||||
|
||||
- name: Archive production artifacts (nonet)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: signed APK ('nonet' built on ${{ github.job }})
|
||||
path: |
|
||||
src/keepass2android/bin/*/*-Signed.apk
|
||||
|
||||
- name: Perform "make distclean"
|
||||
run: make distclean
|
||||
|
||||
linux:
|
||||
|
||||
runs-on: ubuntu-22.04
|
||||
@@ -143,10 +163,10 @@ jobs:
|
||||
run: sudo apt -y install libzip4
|
||||
|
||||
- name: Build native dependencies
|
||||
run: cd src/java/argon2 && $ANDROID_NDK_ROOT/ndk-build
|
||||
run: make native
|
||||
|
||||
- name: Build java dependencies
|
||||
run: cd src/build-scripts/ && ./build-java.sh
|
||||
run: make java
|
||||
|
||||
- name: Fixes (can be removed once merged in SamsungPass)
|
||||
run: |
|
||||
@@ -155,23 +175,41 @@ jobs:
|
||||
sed -i 's|<ReleaseVersion>1.0</ReleaseVersion>|<ReleaseVersion>1.0</ReleaseVersion><AndroidClassParser>class-parse</AndroidClassParser>|' src/SamsungPass/Xamarin.SamsungPass/SamsungPass/SamsungPass.csproj
|
||||
|
||||
- name: Install NuGet dependencies
|
||||
run: nuget restore src/KeePass.sln
|
||||
run: make nuget
|
||||
|
||||
- name: Build keepass2android
|
||||
- name: Build keepass2android (net)
|
||||
run: |
|
||||
cd src/build-scripts/ && ./build-xamarin.sh
|
||||
make msbuild Flavor=Net
|
||||
|
||||
- name: Build APK
|
||||
- name: Build APK (net)
|
||||
run: |
|
||||
cd src/build-scripts/ && ./build-apk.sh
|
||||
make apk Flavor=Net
|
||||
|
||||
- name: Archive production artifacts
|
||||
- name: Archive production artifacts (net)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: signed APK (built on ${{ github.job }})
|
||||
name: signed APK ('net' built on ${{ github.job }})
|
||||
path: |
|
||||
src/keepass2android/bin/*/*-Signed.apk
|
||||
|
||||
- name: Build keepass2android (nonet)
|
||||
run: |
|
||||
make msbuild Flavor=NoNet
|
||||
|
||||
- name: Build APK (nonet)
|
||||
run: |
|
||||
make apk Flavor=NoNet
|
||||
|
||||
- name: Archive production artifacts (nonet)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: signed APK ('nonet' built on ${{ github.job }})
|
||||
path: |
|
||||
src/keepass2android/bin/*/*-Signed.apk
|
||||
|
||||
- name: Perform "make distclean"
|
||||
run: make distclean
|
||||
|
||||
windows:
|
||||
|
||||
# We use windows-2019 because build fails on windows-2022
|
||||
@@ -212,14 +250,12 @@ jobs:
|
||||
- name: Build native dependencies
|
||||
shell: cmd
|
||||
run: |
|
||||
cd src/java/argon2
|
||||
%ANDROID_NDK_ROOT%\ndk-build.cmd
|
||||
make native
|
||||
|
||||
- name: Build java dependencies
|
||||
shell: cmd
|
||||
run: |
|
||||
cd src\build-scripts
|
||||
build-java.bat
|
||||
make java
|
||||
|
||||
- name: Fixes (can be removed once merged in SamsungPass)
|
||||
shell: bash
|
||||
@@ -228,15 +264,35 @@ jobs:
|
||||
sed -i '/TargetFrameworkVersion/ s|v9.0|v11.0|' src/SamsungPass/Xamarin.SamsungPass/SamsungPass/SamsungPass.csproj
|
||||
sed -i 's|<ReleaseVersion>1.0</ReleaseVersion>|<ReleaseVersion>1.0</ReleaseVersion><AndroidClassParser>class-parse</AndroidClassParser>|' src/SamsungPass/Xamarin.SamsungPass/SamsungPass/SamsungPass.csproj
|
||||
|
||||
- name: Build keepass2android
|
||||
shell: cmd
|
||||
- name: Build keepass2android (net)
|
||||
run: |
|
||||
cd src\build-scripts
|
||||
build-xamarin.bat
|
||||
make msbuild Flavor=Net
|
||||
|
||||
- name: Archive production artifacts
|
||||
- name: Build APK (net)
|
||||
run: |
|
||||
make apk Flavor=Net
|
||||
|
||||
- name: Archive production artifacts (net)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: signed APK (built on ${{ github.job }})
|
||||
name: signed APK ('net' built on ${{ github.job }})
|
||||
path: |
|
||||
src/keepass2android/bin/*/*-Signed.apk
|
||||
|
||||
- name: Build keepass2android (nonet)
|
||||
run: |
|
||||
make msbuild Flavor=NoNet
|
||||
|
||||
- name: Build APK (nonet)
|
||||
run: |
|
||||
make apk Flavor=NoNet
|
||||
|
||||
- name: Archive production artifacts (nonet)
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: signed APK ('nonet' built on ${{ github.job }})
|
||||
path: |
|
||||
src/keepass2android/bin/*/*-Signed.apk
|
||||
|
||||
- name: Perform "make distclean"
|
||||
run: make distclean
|
||||
|
||||
10
Makefile
10
Makefile
@@ -6,8 +6,11 @@
|
||||
# append the Configuration variable to 'make' call with value to use in '/p:Configuration='
|
||||
# of msbuild command.
|
||||
#
|
||||
# append the Flavor variable to 'make' call with value to use in '/p:Flavor='
|
||||
# of msbuild command.
|
||||
#
|
||||
# Example:
|
||||
# make Configuration=Release
|
||||
# make Configuration=Release Flavor=NoNet
|
||||
#
|
||||
#
|
||||
# Some targets:
|
||||
@@ -108,6 +111,11 @@ ifneq ($(Configuration),)
|
||||
else
|
||||
$(warning Configuration environment variable not set.)
|
||||
endif
|
||||
ifneq ($(Flavor),)
|
||||
MSBUILD_PARAM += -p:Flavor="$(Flavor)"
|
||||
else
|
||||
$(warning Flavor environment variable not set.)
|
||||
endif
|
||||
|
||||
ifeq ($(detected_OS),Windows)
|
||||
define remove
|
||||
|
||||
Reference in New Issue
Block a user