summaryrefslogtreecommitdiff
path: root/build
Commit message (Collapse)AuthorAgeFilesLines
* Widen org.gnome.GjsConsole permissionsSonny Piers2022-05-291-2/+8
|
* build: Add Flatpak manifestPhilip Chimento2021-04-111-0/+31
| | | | | | Adding this manifest allows GNOME Builder to build GJS right out of the box, and run the interpreter and the tests using Builder's UI. This should help the onboarding process for new contributors.
* maint: Add copyright notices based on major file contributorsPhilip Chimento2020-11-303-0/+3
| | | | | | | | | | | | Based on looking at the git logs, add copyright notices to files which were missing them, assuming the copyright belongs to people who made major contributions to each file. Some assumptions were made as to who to assign the copyright to, such as, what copyright assignment did the contributor make in other files added in the same commit? What email address did they use to make the commit? What copyright assignment did they make in other commits using the same email address?
* maint: Add dual MIT/LGPL license to all GJS files that didn't have onePhilip Chimento2020-10-043-0/+3
| | | | | | This adds a SPDX-License-Identifier comment to all files that are part of GJS, part of its unit tests, or auxiliary tools. (Except for some files like the debugger scripts that don't support comments.)
* build: Use '!=' instead of 'is not' to compare stringRobert Mader2020-03-291-1/+1
| | | | | | | Fixes a warning during install with newer python versions: ``` SyntaxWarning: "is not" with a literal. Did you mean "!="? ```
* vuild: Pass schemadir to compile-gschemas.pyJan Tojnar2020-03-151-2/+5
| | | | Avoiding the duplication will make patching easier for downstreams who need that.
* build: Handle missing /usr/bin/localePhilip Chimento2020-03-031-0/+4
| | | | | | | | | /usr/bin/locale is shipped by glibc, so for example on musl systems it is missing. In this case, don't set the LC_ALL environment variable, and hope for the best. (This also makes the change that LC_ALL is left untouched on Windows, which seems better.) Closes: #296
* build: Remove unused import from python scriptPhilip Chimento2019-11-291-1/+0
|
* build: Fix installation with DESTDIR setBastien Nocera2019-11-291-1/+5
| | | | | | | | | | | os.path.join() doesn't simply concatenate paths as: If a component is an absolute path, all previous components are thrown away and joining continues from the absolute path component. Strip the leading '/' from the configured prefix if needed to prevent that. Closes: https://gitlab.gnome.org/GNOME/gjs/issues/291
* build: Handle case where $bindir/gjs symlink already existsPhilip Chimento2019-10-281-1/+8
| | | | | | | | | | | Python's os.symlink() will fail if the symlink already exists, so when installing GJS in a prefix where it was already installed. This was previously avoided with the -f option to ln. Instead, create a temporary link and atomically rename it over the existing link. Unreviewed, pushing to fix build.
* meson: Convert build/compile-gschemas.sh into PythonChun-wei Fan2019-10-252-8/+11
| | | | | This is so that we can also use this script on Windows MSVC builds, which do not support shell scripts out-of-the-box.
* meson.build: Symlink gjs to gjs-console in a Python scriptChun-wei Fan2019-10-251-0/+23
| | | | | | | Doing so will enable that things run correctly on Windows/MSVC builds as well. This will also enable to copy (instead of symlink) gjs-console.exe on Windows as symlinks often require admin privileges on Windows.
* build: Meson build systemPhilip Chimento2019-10-121-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a Meson build system which should be functionally equivalent to the existing Autotools build system, but easier to deal with and faster. Equivalents: ./configure -> meson _build make -j5 -> ninja -C _build make install -> ninja -C _build install make check -> meson test -C _build It's also easy to run the tests under Valgrind or using the GC zeal variables, by adding e.g. --setup=valgrind to the meson test command. Dependencies (except SpiderMonkey) will be downloaded and built if not present (or not new enough), using Meson's wrap system. There were a small number of things the Autotools build did better. One is export-symbols-regex which doesn't exist in Meson; we must write two separate linker config files for GNU ld and macOS's linker, and I'm not sure what happens in this case on Windows. The other thing is merging the JS and C code coverage files automatically. Since this isn't possible using Meson's b_coverage option, we add a script, tools/run_coverage.sh, which generates a code coverage report from start to finish. This is actually kind of better than the old situation, since the script builds in a different build tree, so you cannot accidentally leave coverage-instrumented build artifacts sitting in your build tree.
* build: Break output of `locale -a` into linesPhilip Chimento2019-07-231-1/+1
| | | | | | | | | It seems that if there are few locales, `locale -a` will print them all on one line, which was confusing the matching done in this script using grep. Instead, make sure to break the output so that there is only one locale per line. For context, see failures on GNOME/gjs!312.
* build: Recognize and prefer C.utf8 locale for testsPhilip Chimento2019-07-231-0/+2
| | | | | | | | The C.utf8 locale seems to exist in the wild, so if it is present we should prefer it above other UTF-8 locales, with the same priority as C.UTF-8. For context, see failure on GNOME/gjs!312.
* build: Move locale choosing into separate scriptPhilip Chimento2019-04-131-0/+22
In order to port to Meson in the future, we'll need to have this functionality in a separate script. Splitting it out now and using the script in the Autotools build will be handy if we decide to keep the two build systems in parallel for a while.