Browse Source

added linux ci with ccache and not working yet windows ci

pull/14/head
meguminloli 2 years ago
parent
commit
a95be2685b
13 changed files with 272 additions and 1 deletions
  1. +55
    -0
      .github/workflows/linux.yaml
  2. +58
    -0
      .github/workflows/windows.yaml
  3. +0
    -1
      mach
  4. +2
    -0
      malepoon/configure.in
  5. +1
    -0
      malepoon/confvars.sh
  6. +1
    -0
      scripts/InstallMozillaBuild.ps1
  7. +7
    -0
      scripts/build.sh
  8. +12
    -0
      scripts/configure.sh
  9. +16
    -0
      scripts/dependencies.sh
  10. +31
    -0
      scripts/mozconfig-gtk2
  11. +31
    -0
      scripts/mozconfig-gtk3
  12. +27
    -0
      scripts/mozconfig-win32
  13. +31
    -0
      scripts/mozconfig-win64

+ 55
- 0
.github/workflows/linux.yaml View File

@@ -0,0 +1,55 @@
name: linux
on:
push:
pull_request:

jobs:
build:
name: ${{ matrix.config.name }}
runs-on: ubuntu-latest
env:
SHELL: bash
GTK: ${{ matrix.config.gtk }}
CC: ccache gcc
CXX: ccache g++
strategy:
fail-fast: false
matrix:
config:
- name: Ubuntu-GTK3
gtk: GTK3
- name: Ubuntu-GTK2
gtk: GTK2
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Dependencies
run: |
exec bash "scripts/dependencies.sh"
- name: Configure
run: |
exec bash "scripts/configure.sh"

- name: "Set up compiler cache"
uses: actions/cache@v2
with:
path: "~/.ccache"
key: ${{ matrix.config.os }}-${{ matrix.config.gtk }}-${{ github.head_ref }}-${{ github.run_number }}
restore-keys: |
${{ matrix.config.os }}-${{ matrix.config.gtk }}-${{ github.head_ref }}-

- name: Build
run: |
exec bash "scripts/build.sh"

- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: Male-Poon_${{matrix.config.name}}
path: |
obj-x86_64-pc-linux-gnu/dist/malepoon-*
LICENSE
if-no-files-found: error

+ 58
- 0
.github/workflows/windows.yaml View File

@@ -0,0 +1,58 @@
name: windows
on:
push:
pull_request:
jobs:
build:
name: ${{ matrix.config.name }}
runs-on: windows-latest
env:
WIN: ${{ matrix.config.win }}
strategy:
fail-fast: false
matrix:
config:
- name: Windows-Win64
win: WIN64
arch: amd64
- name: Windows-Win32
win: WIN32
arch: x86
steps:
- name: Checkout
uses: actions/checkout@v2
- name: "MSVC Developer Command Prompt"
uses: seanmiddleditch/gha-setup-vsdevenv@v3
with:
arch: ${{ matrix.config.arch }}
- name: Dependencies
run: |
Invoke-WebRequest -Uri https://ftp.mozilla.org/pub/mozilla/libraries/win32/MozillaBuildSetup-2.2.0.exe -OutFile MozillaBuildSetup-2.2.0.exe
./scripts/InstallMozillaBuild.ps1
shell: pwsh
- name: Configure
run: |
scripts/configure.sh
shell: bash
- name: Build
run: |
scripts/build.sh
shell: bash
- name: Upload artifact
uses: actions/upload-artifact@v2
with:
name: Male-Poon_${{matrix.config.name}}
path: |
obj-*/dist/malepoon-*
LICENSE
if-no-files-found: error

+ 0
- 1
mach View File

@@ -1,4 +1,3 @@
#!/bin/sh

MACH_CMD=./platform/mach
$MACH_CMD $@

+ 2
- 0
malepoon/configure.in View File

@@ -7,6 +7,8 @@ dnl file, You can obtain one at http://mozilla.org/MPL/2.0/.
dnl Things we need to carry from confvars.sh
AC_DEFINE(MOZ_PHOENIX)
AC_SUBST(MOZ_PHOENIX)
AC_DEFINE(MOZ_PHOENIX_EXTENSIONS)
AC_SUBST(MOZ_PHOENIX_EXTENSIONS)
AC_DEFINE(MC_PALEMOON)
AC_SUBST(MC_PALEMOON)



+ 1
- 0
malepoon/confvars.sh View File

@@ -42,6 +42,7 @@ MC_PALEMOON=1
# Enables conditional code in the platform for historically
# Firefox-like browsers
MOZ_PHOENIX=1
MOZ_PHOENIX_EXTENSIONS=1

# Lightweight Themes
MOZ_PERSONAS=1


+ 1
- 0
scripts/InstallMozillaBuild.ps1 View File

@@ -0,0 +1 @@
& .\MozillaBuildSetup-2.2.0.exe /S /v/qn | Write-Output

+ 7
- 0
scripts/build.sh View File

@@ -0,0 +1,7 @@
#!/bin/bash
BASH="bash"
if [[ ! -z $WIN ]]; then
BASH=/c/mozilla-build/start-shell.bat
fi
$BASH mach build
$BASH mach package

+ 12
- 0
scripts/configure.sh View File

@@ -0,0 +1,12 @@
#!/bin/bash
git submodule init && git submodule update

if [ $GTK == "GTK3" ]; then
cp scripts/mozconfig-gtk3 .mozconfig
elif [ $GTK == "GTK2" ]; then
cp scripts/mozconfig-gtk2 .mozconfig
elif [ $WIN == "WIN32"]; then
cp scripts/mozconfig-win32 .mozconfig
else
cp scripts/mozconfig-win64 .mozconfig
fi

+ 16
- 0
scripts/dependencies.sh View File

@@ -0,0 +1,16 @@
#!/bin/bash
if [[ ! -z "${GTK}" ]]; then
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install ccache -y
if [ $GTK == "GTK3" ]; then
sudo apt-get install build-essential libgtk2.0-dev libdbus-glib-1-dev autoconf2.13 \
yasm libegl1-mesa-dev libasound2-dev libxt-dev zlib1g-dev libssl-dev \
libsqlite3-dev libbz2-dev libpulse-dev libgconf2-dev libx11-xcb-dev \
zip python2.7 python-dbus libgtk-3-dev -y
elif [ $GTK == "GTK2" ]; then
sudo apt-get install build-essential libgtk2.0-dev libdbus-glib-1-dev autoconf2.13 \
yasm libegl1-mesa-dev libasound2-dev libxt-dev zlib1g-dev libssl-dev \
libsqlite3-dev libbz2-dev libpulse-dev libgconf2-dev libx11-xcb-dev \
zip python2.7 python-dbus -y
fi
fi

+ 31
- 0
scripts/mozconfig-gtk2 View File

@@ -0,0 +1,31 @@
_BUILD_64=1

_GTK_VERSION=2

ac_add_options --enable-application=malepoon
ac_add_options --enable-optimize="-O3 -w"
ac_add_options --enable-default-toolkit=cairo-gtk$_GTK_VERSION
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
ac_add_options --disable-eme
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
ac_add_options --with-pthreads

ac_add_options --enable-official-branding
export MOZILLA_OFFICIAL=1

if [ -n "$_BUILD_64" ]; then
ac_add_options --x-libraries=/usr/lib64
else
ac_add_options --x-libraries=/usr/lib
fi

export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION


+ 31
- 0
scripts/mozconfig-gtk3 View File

@@ -0,0 +1,31 @@
_BUILD_64=1

_GTK_VERSION=3

ac_add_options --enable-application=malepoon
ac_add_options --enable-optimize="-O3 -w"
ac_add_options --enable-default-toolkit=cairo-gtk$_GTK_VERSION
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
ac_add_options --disable-eme
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-necko-wifi
ac_add_options --disable-updater
ac_add_options --with-pthreads

ac_add_options --enable-official-branding
export MOZILLA_OFFICIAL=1

if [ -n "$_BUILD_64" ]; then
ac_add_options --x-libraries=/usr/lib64
else
ac_add_options --x-libraries=/usr/lib
fi

export MOZ_PKG_SPECIAL=gtk$_GTK_VERSION


+ 27
- 0
scripts/mozconfig-win32 View File

@@ -0,0 +1,27 @@
_BUILD_64=
ac_add_options --enable-application=malepoon
ac_add_options --enable-optimize="-O2 -GS-"
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
ac_add_options --disable-accessibility
ac_add_options --disable-eme
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-parental-controls
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-updater
ac_add_options --enable-official-branding
export MOZILLA_OFFICIAL=1
if [ -n "$_BUILD_64" ]; then
_BUILD_ARCH=x64
ac_add_options --target=x86_64-pc-mingw32
ac_add_options --host=x86_64-pc-mingw32
else
_BUILD_ARCH=x86
fi

+ 31
- 0
scripts/mozconfig-win64 View File

@@ -0,0 +1,31 @@
_BUILD_64=1
ac_add_options --enable-application=malepoon
ac_add_options --enable-optimize="-O2 -GS-"
ac_add_options --enable-jemalloc
ac_add_options --enable-strip
ac_add_options --enable-devtools
ac_add_options --enable-av1
ac_add_options --disable-accessibility
ac_add_options --disable-eme
ac_add_options --disable-webrtc
ac_add_options --disable-gamepad
ac_add_options --disable-parental-controls
ac_add_options --disable-tests
ac_add_options --disable-debug
ac_add_options --disable-updater
ac_add_options --enable-official-branding
export MOZILLA_OFFICIAL=1
if [ -n "$_BUILD_64" ]; then
_BUILD_ARCH=x64
ac_add_options --target=x86_64-pc-mingw32
ac_add_options --host=x86_64-pc-mingw32
else
_BUILD_ARCH=x86
fi
WIN32_REDIST_DIR=$VCINSTALLDIR/redist/$_BUILD_ARCH/Microsoft.VC140.CRT
WIN_UCRT_REDIST_DIR="C:/Program Files (x86)/Windows Kits/10/Redist/10.0.19041.0/ucrt/DLLs/$_BUILD_ARCH"

Loading…
Cancel
Save