diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml new file mode 100644 index 0000000..f54fbcd --- /dev/null +++ b/.github/dependabot.yaml @@ -0,0 +1,7 @@ +version: 2 +updates: + + - package-ecosystem: github-actions + directory: / + schedule: + interval: monthly diff --git a/.github/release.yaml b/.github/release.yaml new file mode 100644 index 0000000..0f4884c --- /dev/null +++ b/.github/release.yaml @@ -0,0 +1,18 @@ +changelog: + exclude: + labels: + - ignore-for-release + authors: + - dependabot + categories: + - title: Breaking Changes 🛠 + labels: + - semver-major + - breaking-change + - title: New Features 🎉 + labels: + - semver-minor + - enhancement + - title: Other Changes + labels: + - '*' diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..2a1d865 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,24 @@ +name: Build +on: [push] +jobs: + build: + strategy: + matrix: + os: [windows-2022, macos-11, ubuntu-22.04] + addrsize: ["64"] + include: + - os: windows-2022 + addrsize: "32" + continue-on-error: false + runs-on: ${{ matrix.os }} + steps: + - uses: secondlife/action-autobuild@v3 + with: + addrsize: ${{ matrix.addrsize }} + + release: + needs: build + runs-on: [ubuntu-latest] + if: startsWith(github.ref, 'refs/tags/v') + steps: + - uses: secondlife/action-autobuild-release@v2 diff --git a/.hgignore b/.gitignore similarity index 100% rename from .hgignore rename to .gitignore diff --git a/BuildParams b/BuildParams deleted file mode 100644 index 6523312..0000000 --- a/BuildParams +++ /dev/null @@ -1,9 +0,0 @@ -# Use Public Upload Locations -public_build = true - -# Incredibuild should not be used (so pdb information is good) -USE_INCREDIBUILD=0 - -# Need viewer-build-variables as well as other shared repositories -# build_variables_repository_url set in TC project hierarchy -buildscripts_shared_more_NAMEs="build_variables" diff --git a/README.md b/README.md new file mode 100644 index 0000000..133a518 --- /dev/null +++ b/README.md @@ -0,0 +1,5 @@ +# 3p-libhunspell + +[Hunspell][] autobuild package + +[Hunspell]: http://hunspell.github.io/ diff --git a/build-cmd.sh b/build-cmd.sh index 708629b..84f4379 100755 --- a/build-cmd.sh +++ b/build-cmd.sh @@ -27,11 +27,19 @@ fi stage="$(pwd)/stage" +# IMPORTANT: (Effectively) removing the code signing step for macOS +# builds with this declaration during the move to GHA. It will +# need to be added back in once we have a strategy for doing so. +build_secrets_checkout="" + # load autobuild provided shell functions and variables source_environment_tempfile="$stage/source_environment.sh" "$autobuild" source_environment > "$source_environment_tempfile" . "$source_environment_tempfile" +# remove_cxxstd +source "$(dirname "$AUTOBUILD_VARIABLES_FILE")/functions" + build=${AUTOBUILD_BUILD_ID:=0} echo "${HUNSPELL_VERSION}.${build}" > "${stage}/VERSION.txt" @@ -45,7 +53,10 @@ pushd "$HUNSPELL_SOURCE_DIR" windows*) load_vsvars - build_sln "src/win_api/hunspell.sln" "Release_dll|$AUTOBUILD_WIN_VSPLATFORM" + msbuild.exe "$(cygpath -w src/win_api/hunspell.sln)" \ + -p:Platform=$AUTOBUILD_WIN_VSPLATFORM \ + -p:Configuration="Release_dll" \ + -p:PlatformToolset=v143 mkdir -p "$stage/lib/release" @@ -58,14 +69,15 @@ pushd "$HUNSPELL_SOURCE_DIR" ;; darwin*) opts="-m$AUTOBUILD_ADDRSIZE -arch $AUTOBUILD_CONFIGURE_ARCH $LL_BUILD_RELEASE" - export CFLAGS="$opts" + plainopts="$(remove_cxxstd $opts)" + export CFLAGS="$plainopts" export CXXFLAGS="$opts" - export LDFLAGS="$opts" + export LDFLAGS="$plainopts" ./configure --prefix="$stage" - make + make -j$(nproc) make install mkdir -p "$stage/lib/release" - mv "$stage/lib/"{*.a,*.dylib,*.alias} "$stage/lib/release" + mv "$stage/lib/"{*.a,*.dylib} "$stage/lib/release" pushd "$stage/lib/release" fix_dylib_id libhunspell-*.dylib @@ -85,8 +97,8 @@ pushd "$HUNSPELL_SOURCE_DIR" ;; linux*) opts="-m$AUTOBUILD_ADDRSIZE $LL_BUILD_RELEASE" - CFLAGS="$opts" CXXFLAGS="$opts" ./configure --prefix="$stage" - make + CFLAGS="$(remove_cxxstd $opts)" CXXFLAGS="$opts" ./configure --prefix="$stage" + make -j$(nproc) make install mv "$stage/lib" "$stage/release" mkdir -p "$stage/lib" diff --git a/hunspell/src/tools/hunspell.cxx b/hunspell/src/tools/hunspell.cxx index 07ad6bb..51da63b 100644 --- a/hunspell/src/tools/hunspell.cxx +++ b/hunspell/src/tools/hunspell.cxx @@ -17,7 +17,7 @@ #define HUNSPELL_VERSION VERSION #define INPUTLEN 50 -#define HUNSPELL_PIPE_HEADING "@(#) International Ispell Version 3.2.06 (but really Hunspell "VERSION")\n" +#define HUNSPELL_PIPE_HEADING "@(#) International Ispell Version 3.2.06 (but really Hunspell " VERSION ")\n" #define HUNSPELL_HEADING "Hunspell " //for debugging only