Commit Graph

224 Commits

Author SHA1 Message Date
Caleb Maclennan 7f9173d67f [ci] Fix workflow so ‘publish-*’ dependencies can run
This is a documented but bizarre quirk on Circle CI: in order for a job
to run as a dependency of another job that has a filter it must also
have at least one filter of its own, even if the filter is a noop.

https://circleci.com/docs/2.0/workflows/#executing-workflows-for-a-git-tag
2021-08-18 14:25:15 +02:00
Khaled Hosny d203267e53 [ci] Remove effectively ignored filters
We want these jobs to always run, and the filter does not seem to do
anything anyway.
2021-08-15 18:29:26 +02:00
Khaled Hosny f73053edaf [ci] Don’t install unused dependencies
This is a cross build job, native libraries are not used.
2021-08-15 18:27:32 +02:00
Khaled Hosny ddb4f9b967 [ci] Build win64 binaries as well 2021-08-15 17:52:23 +02:00
Garret Rieger f3e031539f Revert "[ci] Bin FontTools version due to recent COLRv1 changes"
This reverts commit 163748b505.
2021-07-28 11:36:34 -06:00
Khaled Hosny 163748b505 [ci] Bin FontTools version due to recent COLRv1 changes
Should be reverted once HarfBuzz updated to match FontTools.
2021-07-26 23:32:48 +02:00
Khaled Hosny 5f5a8b4dd7 [ci] Use the latest stable XCode image 2021-07-12 14:05:40 -07:00
Khaled Hosny 13187d29ef [ci] Drop macOS job using deprecated XCode image 2021-07-12 14:05:40 -07:00
Khaled Hosny d3e84413fd [ci] Drop macos-10_13_6-aat-fonts job
This version of macOS is no longer supported by Homebrew, it takes 26
minutes to brew the dependencies before it fails.
2021-05-02 02:14:08 +02:00
Khaled Hosny 517d68b26e [ci] Pin fedora 33 docker image
g-ir-scanner is broken on 34 image:

FAILED: src/HarfBuzz-0.0.gir
/usr/bin/g-ir-scanner --no-libtool --namespace=HarfBuzz --nsversion=0.0 --warn-all --output src/HarfBuzz-0.0.gir --c-include=hb-gobject.h --cflags-begin -DHB_NO_SINGLE_HEADER_ERROR -DHAVE_GOBJECT -DHB_EXTERN= --cflags-end -I/root/project/src -I/root/project/build/src -I./. -I../. --filelist=/root/project/build/src/libharfbuzz-gobject.so.0.20800.0.p/HarfBuzz_0.0_gir_filelist --include=GObject-2.0 --symbol-prefix=hb --symbol-prefix=hb_gobject --identifier-prefix=hb_ --pkg-export=harfbuzz-gobject --cflags-begin -DHAVE_CONFIG_H -I./. -I../. -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/sysprof-4 -I./src/. -I../src/. -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/gobject-introspection-1.0 --cflags-end --add-include-path=/usr/share/gir-1.0 -L/root/project/build/src --extra-library=harfbuzz --library harfbuzz-gobject -L/root/project/build/src -L/root/project/build/src --extra-library=glib-2.0 --extra-library=gobject-2.0 --extra-library=m --extra-library=freetype --extra-library=girepository-1.0 --sources-top-dirs /root/project/subprojects/ --sources-top-dirs /root/project/build/subprojects/
../src/hb-buffer.cc:641: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-face.cc:192: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-font.cc:551: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-font.cc:1519: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-map.cc:43: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-ot-name.cc:55: Warning: HarfBuzz: unexpected annotation: out
../src/hb-set.cc:43: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-shape-plan.cc:173: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-shape-plan.cc:201: Warning: HarfBuzz: unknown annotation: xconstructor
../src/hb-unicode.cc:172: Warning: HarfBuzz: unknown annotation: xconstructor
g-ir-scanner: link: gcc -pthread -o /root/project/build/tmp-introspecta9rymai3/HarfBuzz-0.0 /root/project/build/tmp-introspecta9rymai3/HarfBuzz-0.0.o -L. -Wl,-rpath,. -Wl,--no-as-needed -L/root/project/build/src -Wl,-rpath,/root/project/build/src -L/root/project/build/src -Wl,-rpath,/root/project/build/src -L/root/project/build/src -Wl,-rpath,/root/project/build/src -lharfbuzz-gobject -lharfbuzz -lglib-2.0 -lgobject-2.0 -lm -lfreetype -lgirepository-1.0 -lgio-2.0 -lgobject-2.0 -Wl,--export-dynamic -lgmodule-2.0 -pthread -lglib-2.0 -lglib-2.0
ldd: error: you do not have read permission for `/root/project/build/tmp-introspecta9rymai3/HarfBuzz-0.0'
Traceback (most recent call last):
  File "/usr/bin/g-ir-scanner", line 99, in <module>
    sys.exit(scanner_main(sys.argv))
  File "/usr/lib64/gobject-introspection/giscanner/scannermain.py", line 599, in scanner_main
    shlibs = create_binary(transformer, options, args)
  File "/usr/lib64/gobject-introspection/giscanner/scannermain.py", line 428, in create_binary
    shlibs = resolve_shlibs(options, binary, options.libraries)
  File "/usr/lib64/gobject-introspection/giscanner/shlibs.py", line 170, in resolve_shlibs
    _resolve_non_libtool(options, binary, non_libtool))
  File "/usr/lib64/gobject-introspection/giscanner/shlibs.py", line 106, in _resolve_non_libtool
    output = subprocess.check_output(args)
  File "/usr/lib64/python3.9/subprocess.py", line 424, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "/usr/lib64/python3.9/subprocess.py", line 528, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ldd', '/root/project/build/tmp-introspecta9rymai3/HarfBuzz-0.0']' returned non-zero exit status 1.
ninja: build stopped: subcommand failed.
2021-05-02 00:08:04 +02:00
Khaled Hosny c571a96eb0 [ci] Disable Chafa on jobs that enables all auto features
No suitable versions are available on these setups.
2021-04-26 12:13:10 -06:00
Khaled Hosny f2240d12c2 [ci] Use -j2 for make and ninja in distcheck job
Lets see if this makes it faster without crashing gcc.
2021-04-15 18:47:51 -06:00
Khaled Hosny f5c922b709 [ci] Try to stop distcheck job from crashing gcc 2021-04-15 18:47:51 -06:00
Khaled Hosny 743baf3543 [build] Don’t look for FontConfig
We don’t currently use it anywhere. It was used briefly for the
hb-fc-list tool, but this tool have not been built since 2015:

commit cd042fc8c4
Author: Behdad Esfahbod <behdad@behdad.org>
Date:   Thu Jun 18 10:55:13 2015 -0700

    [util] Disable hb-fc-list for now

    Until I figure out what to do about the API, and finalize
    the tool.
2021-03-29 15:54:51 -06:00
Behdad Esfahbod f5356bcb61 [ci] Switch back to c++2a
Okay I guess we can be bothered to fix things up for next version of C++.

Reverts meat of c0b3b9b258
2021-03-15 16:52:39 -06:00
Behdad Esfahbod 9582640eed [ci] Remove more cruft
All were commented out already.
2021-03-15 16:48:16 -06:00
Behdad Esfahbod c0b3b9b258 [ci] Don't test C++2a build
One of the bots is unhappy when HB_NODISCARD comes after HB_INTERNAL.
No idea why. But, again, we're testing HarfBuzz, not C++, not clang. Ugh.

In file included from src/harfbuzz.cc:1:
In file included from src/hb-aat-layout.cc:30:
In file included from src/hb-aat-layout.hh:32:
In file included from src/hb-ot-shape.hh:32:
In file included from src/hb-ot-map.hh:32:
src/hb-buffer.hh:335:15: error: an attribute list cannot appear here
  HB_INTERNAL HB_NODISCARD bool move_to (unsigned int i); /* i is output-buffer index. */
              ^~~~~~~~~~~~
https://app.circleci.com/pipelines/github/harfbuzz/harfbuzz/1693/workflows/77459205-a189-45d3-bc58-52a8fd952c3f/jobs/155912/parallel-runs/0/steps/0-110?invite=true
2021-03-15 16:48:07 -06:00
Behdad Esfahbod 4d116ed0f0 [ci] Remove cmake
Apparently(?) our cmake build never bothered setting up pthreads.
So when I removed the busy-loop mutex impl it now doesn't build.

711c241f6c

https://github.com/harfbuzz/harfbuzz/pull/2874#issuecomment-782778263
2021-02-22 17:14:45 -07:00
Khaled Hosny 094406b67b [ci] Disable failing Arch Linux job
Some g-ir-scanner failure that does not seem to be related to us. The
job does not seem to be testing anything interesting anyway.
2021-02-10 23:22:02 +02:00
Khaled Hosny e8c15b7a1c [ci] Install gobject-introspection on distcheck job
To fix missing --enable-introspection from release tarballs.

Fixes https://github.com/harfbuzz/harfbuzz/issues/2779
2020-12-26 23:17:08 +02:00
Khaled Hosny bac8a856f8 Revert "[CI] Don’t install ragel on circleci jobs"
This reverts commit 9a9da110a5.
2020-11-21 08:41:06 -07:00
Xavier Claessens a082fe400d ci: Install meson 0.56.0 in crossbuild-win32
It is required for using cairo as subproject.
2020-11-17 11:52:35 -05:00
Khaled Hosny 5adc1344a4 [ci] Upload meason logs on some CircleCI jobs 2020-10-23 19:02:54 +02:00
Khaled Hosny 71376f88ef [ci] CircleCI removed xcode:9.0.1 image
The replacement run newer versions of macOS (10.13.3), making this job
obsolete as it tests nothing the other jobs don’t test.
2020-10-23 19:02:41 +02:00
Khaled Hosny 9a9da110a5 [CI] Don’t install ragel on circleci jobs
Latest ragel version is broken (https://github.com/adrian-thurston/ragel/issues/56), but we also don’t need to regenerate state machine on CI jobs.
2020-10-17 09:24:54 -07:00
Khaled Hosny 84dd65a874 [test] Remove timeout from test runners
See https://github.com/harfbuzz/harfbuzz/issues/2707#issuecomment-707744079

This wasn’t inconsistent as well, HB_TEST_SUBSET_FUZZER_TIMEOUT defaulted
to 12 in the test runner, but it was overridden to 50 in meson.build,
and then meson has its own test timeout.
2020-10-15 00:49:02 -07:00
Caleb Maclennan e43b9a29a9
[ci] Trigger dependencies of publish jobs on tags 2020-09-11 22:21:59 +03:00
Caleb Maclennan deb09e0d75
[ci] Tweak job names so config is valid Circle 2.1 schema 2020-09-11 20:12:35 +03:00
Caleb Maclennan f4dea33f6d
[ci] Move repeated artifact upload job code to script 2020-09-11 20:12:24 +03:00
Caleb Maclennan 65be538fff
[ci] Add job to publish autotools dist file to GitHub 2020-09-11 20:12:14 +03:00
Caleb Maclennan 42bcc47d01
[ci] Use executor with Circle's image for autotools job 2020-09-11 20:11:52 +03:00
Caleb Maclennan c70f509022
[ci] Use `ghr` CLI tool to post Win32 artifact to GitHub 2020-09-11 20:11:38 +03:00
Caleb Maclennan 610ed3b42c
[ci] Add job to publish Win32 releases and pass it artifacts 2020-09-11 20:11:22 +03:00
Caleb Maclennan a2d45cd5f7
[ci] Use Circle's customized image for workspace support 2020-09-11 20:10:43 +03:00
Ebrahim Byagowi 6e32145dc9 [meson] Make compatbile with 0.47.0 2020-08-13 18:28:42 +04:30
Ebrahim Byagowi 58209c86a0 [meson] Make compatbile with 0.49.0
Contains a just put together summary feature polyfill and workaround
to broken ternary operator.
2020-08-13 18:28:42 +04:30
Ebrahim Byagowi 2af58c3518 Revert "Remove cmake build files"
This reverts commit 4e572c9407.
2020-08-12 01:00:33 +04:30
Ebrahim Byagowi 5193357832 Revert "Remove autotools build support"
This reverts commit 01ac32aab2.
2020-08-11 23:51:59 +04:30
ebraminio c0107c1e6e
[ci] test experimental APIs in Arch Linux and sanitizers 2020-08-10 14:30:34 +04:30
Ebrahim Byagowi 01ac32aab2 Remove autotools build support 2020-08-07 23:28:12 +04:30
Ebrahim Byagowi 50151567c1 [ci] Disable Travis CI 2020-08-02 11:08:12 +04:30
Ebrahim Byagowi 4e572c9407
Remove cmake build files
As discussed in https://github.com/harfbuzz/harfbuzz/pull/2252
2020-07-30 16:19:15 +04:30
Ebrahim Byagowi bec3db49bd
[ci] meson-gcc-mingw to crossbuild-win32 2020-07-25 13:45:34 +04:30
Ebrahim Byagowi 024fc665da
[ci] disable clang nightly installation
they don't like to work apparently for some reason https://circleci.com/gh/harfbuzz/harfbuzz/149164

better to use oss-fuzz docker images, gcr.io/oss-fuzz-base/base-clang, but the fact it uses 16.04 is showstopper for us.
2020-07-20 23:57:27 +04:30
Ebrahim Byagowi 3163e9fedb
[ci] Remove HB_TEST_SUBSET_FUZZER_TIMEOUT
meson is passing it itself

Fortunately oss-fuzz has its own timeout value, I just like to be conservative here
and not involve outsiders with flakiness of tests specially as meson which runs
them concurrently so consuming more time is expected on meson.
2020-07-12 23:11:45 +04:30
Ebrahim Byagowi f8d345ee06
[ci] Remove ambiguous-reversed-operator warning from whitelist
Should be fixed by 6a45df0
2020-07-09 10:57:51 +04:30
Ebrahim Byagowi 5ea11cb817
[ci] don't use harfbuzz.cc with -Weverything
Causes

In file included from src/harfbuzz.cc:13:
src/hb-ot-cff1-table.cc:36:17: error: using namespace directive in global context in header [-Werror,-Wheader-hygiene]
using namespace CFF;
                ^
In file included from src/harfbuzz.cc:14:
src/hb-ot-cff2-table.cc:35:17: error: using namespace directive in global context in header [-Werror,-Wheader-hygiene]
using namespace CFF;
                ^
2 errors generated.
2020-07-08 19:29:47 +04:30
Ebrahim Byagowi e4f9969108 [ci] migrate to meson
two bots, one bot here (distcheck) and one in travis still run autotools and
won't be removed till we decide about autotools
2020-07-08 19:18:31 +04:30
Ebrahim Byagowi 471ae786ce [ci] Install a newer meson version 2020-07-06 22:19:59 +04:30
Ebrahim Byagowi 694a0c6bbc [meson] Always add icu deps 2020-07-06 22:19:59 +04:30