Nirbheek Chauhan
6b8df9da84
custom_target: Make directory outputs installable
...
This is useful in many cases where the list of files cannot be known in
advance and is just dumped inside a directory. For example when
generating documentation with doxygen and other tools that we don't have
built-in support for.
Includes a test for the same.
Closes #893
8 years ago
Nirbheek Chauhan
c693bd9bb4
Allow passing arguments to install scripts
...
Closes #1213
8 years ago
Igor Gnatenko
4fbaf295f6
remove shebangs from scripts
...
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/regen_checker.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/meson_test.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/meson_benchmark.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/meson_exe.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/symbolextractor.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/commandrunner.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/gtkdochelper.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/meson_install.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/depfixer.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/dirchanger.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/delwithsuffix.py 644 /usr/bin/python3
meson.noarch: E: non-executable-script /usr/lib/python3.5/site-packages/mesonbuild/scripts/vcstagger.py 644 /usr/bin/python3
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
8 years ago
Nirbheek Chauhan
60716fcd6d
Use universal_newlines=True for all Popen calls
...
Instead of adding it everywhere manually, create a wrapper called
mesonlib.Popen_safe and use that everywhere that we call an executable
and extract its output.
This will also allow us to tweak it to do more/different things if
needed for some locales and/or systems.
Closes #1079
8 years ago
Nirbheek Chauhan
b9a7c0cf39
misc: Use relative imports everywhere
...
Using 'mesonbuild' as the module can cause it to use the
system-installed module and can also break if we rename the directory,
so avoid that by always using relative imports.
8 years ago
Jussi Pakkanen
1f4cce86ad
Remove shebangs on files that are not runnable and add execute bits to those that are.
8 years ago
Elliott Sales de Andrade
38a2a636b5
Refactor DESTDIR determination into a single function.
8 years ago
Elliott Sales de Andrade
3a593d0aca
Always obey DESTDIR even with absolute install_dir.
...
Passing an absolute path to `install_dir` would previously always
attempt to install there, instead of obeying DESTDIR, since os.path.join
will 'reset' on absolute paths.
8 years ago
Elliott Sales de Andrade
4c71695e41
Use context manager for file I/O.
...
There are a few cases where a context manager cannot be used, such as
the logger.
8 years ago
Jussi Pakkanen
38a896ae51
Create a log file of all files installed.
9 years ago
Nirbheek Chauhan
598997bdb5
scripts/install: Also strip '\' from the end of a path
...
Fixes installation of subdirs on Windows
9 years ago
Nirbheek Chauhan
b2fb4f9d66
scripts: Use destdir_join fix for all DESTDIR prefixing ( #598 )
9 years ago
Jussi Pakkanen
205037047f
Try to delete target files before installing. Closes #578 .
9 years ago
Jussi Pakkanen
0482635c12
Handle case of install_subdirring a subdir.
9 years ago
Jussi Pakkanen
beb6827413
Installing subdirs now merges with existing files in the target dir.
9 years ago
Jussi Pakkanen
9dace5fc5e
Always initialise final_command.
9 years ago
Jussi Pakkanen
aac7f6ef1f
Since we only care about shebang line and sane ones use plain ASCII, use an encoding that can not fail. Closes #561 .
9 years ago
Jussi Pakkanen
1b78e354a6
Join windows-style destdir paths correctly. Closes #567 .
9 years ago
Jussi Pakkanen
dc148e0702
Remove all special casing for gettext and use elementary operations instead.
9 years ago
Jussi Pakkanen
ea092fefc2
Use individual tempdirs for building and installing in unit tests.
9 years ago
Jussi Pakkanen
67377e69b5
Invoke depfixer in-process to make it faster. Closes #480 .
9 years ago
Nirbheek Chauhan
d5c9b98cab
meson_install.py: Start by checking if the shebang is directly runnable
...
If it's just runnable as-is, then we don't need to do fancy basename detection
and such to find the interpretor to use for running the script.
9 years ago
Nirbheek Chauhan
a15e784851
meson_install: os.symlink may be implemented and still not work
...
Requires Administrator access by default to work
9 years ago
Jussi Pakkanen
b91134b806
Better error message when failing to run install script. Closes #361 .
9 years ago
Jussi Pakkanen
23b98cd6e6
Renamed meson package to mesonbuild so that we can have a script named meson in the same toplevel dir.
9 years ago
Jussi Pakkanen
4c31e7774d
Finalize moduleification so that full test suite runs.
9 years ago
Jussi Pakkanen
66c01401de
Moved scripts in the module and started work to run them via the main meson command.
9 years ago
Jussi Pakkanen
a5508d3fd3
Can run most of test suite (with hacks).
9 years ago
Jussi Pakkanen
8b1039fa30
Organise files into a module structure.
9 years ago
Jussi Pakkanen
83cc5ce4c5
Allow more than one install script and make gtkdoc method return one.
9 years ago
Igor Gnatenko
e954f8314b
meson_install: fix bad-continuation
...
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
10 years ago
Jussi Pakkanen
67ddeb8a01
Fix destdir for install targets. Closes #32 .
10 years ago
Jussi Pakkanen
73b8ff5341
Rework installation logic so we can go outside the install prefix.
10 years ago
Jussi Pakkanen
525f0ae6d2
Harmonised copyright declarations.
10 years ago
Jussi Pakkanen
46773e75a8
Create symlinks properly. Fixes #19 .
10 years ago
Jussi Pakkanen
0c86f30d4b
Can install entire subtrees with one command. Closes #14 .
10 years ago
Jussi Pakkanen
dcdfb7e3ba
A few suffix fixes.
10 years ago
Jussi Pakkanen
263c917c6a
Install script fix for Windows.
10 years ago
Jussi Pakkanen
84a31d0b57
Delete old symlink before creating new because symlink creation does not overwrite the old one.
10 years ago
Jussi Pakkanen
c4860ff60f
Updated copyright years.
10 years ago
Jussi Pakkanen
e38f040661
Can set install time rpath.
11 years ago
Jussi Pakkanen
6759e404d9
Make it possible to run a custom script during install.
11 years ago
Jussi Pakkanen
2d23a44e6e
Deal with Rust static libraries, too.
11 years ago
Jussi Pakkanen
2366f822d2
Install Rust shared libraries.
11 years ago
Jussi Pakkanen
bb36eec846
Strip dev rpath on install.
11 years ago
Jussi Pakkanen
0e19d90e97
Now can generate mo files from po files and install them.
11 years ago
Jussi Pakkanen
0f03b26f44
Removed -tt, which is not necessary with Python 3.
12 years ago
Jussi Pakkanen
9da40d6e3d
Can specify wrapper binary for unit tests.
12 years ago
Jussi Pakkanen
c89aa41a3f
Unit test pass on Windows.
12 years ago
Jussi Pakkanen
d663abd7e7
Ooops.
12 years ago