Closed yetist closed 4 years ago
@yetist PR needs updating.
meson build -Dprefix=/usr/local
<cut>
Found pkg-config: /usr/bin/pkg-config (1.6.3)
Run-time dependency glib-2.0 found: YES 2.64.3
Run-time dependency gtk+-3.0 found: YES 3.24.20
Run-time dependency gio-2.0 found: YES 2.64.3
Run-time dependency vte-2.91 found: YES 0.60.3
Run-time dependency dconf found: YES 0.36.0
Run-time dependency x11 found: YES 1.6.9
Run-time dependency sm found: YES 1.2.3
Run-time dependency ice found: YES 1.0.10
Configuring config.h using configuration
Configuring terminal-version.h using configuration
Found pkg-config: /usr/bin/pkg-config (1.6.3)
src/meson.build:106:0: ERROR: File eggdesktopfile.c does not exist.
Can you please help review other open PRs? Maybe https://github.com/mate-desktop/mate-applets/pull/475 or https://github.com/mate-desktop/caja/pull/1422 ?
@yetist Meson branch of mate-sub-modules is merged. I guess this PR needs an update.
Done, commit is updated.
@yetist I asked this already before in another meson PR. Do we really need a LINGUAS file for meson, which needs to be updated by hand when we add a new language? With autotools this happens automatic. help/Makefile.am
HELP_LINGUAS = $(if $(IGNORE_HELP_LINGUAS), \
$(filter-out $(IGNORE_HELP_LINGUAS),$(subst /,,$(dir $(wildcard */*.po)))), \
$(subst /,,$(dir $(wildcard */*.po))) )
I tested installation to an empty /usr/local/
dir.
[rave@mother mate-terminal-dist]$ sudo ninja -C build install
<cut>
Installing /media/Data/Programme/Linux/Mate-Desktop/git-version/github-matedesktop/mate-terminal-dist/build/po/zh_TW.gmo to /usr/local/share/locale/zh_TW/LC_MESSAGES/mate-terminal.mo
Running custom install script '/media/Data/Programme/Linux/Mate-Desktop/git-version/github-matedesktop/mate-terminal-dist/meson_post_install.py /usr/local/share'
Compiling gsettings schemas...
Error opening directory “/usr/local/share/glib-2.0/schemas”: No such file or directory
Updating icon cache...
<cut>
No gsettings schemas...
[root@mother rave]# ls -l /usr/local/share/
insgesamt 20
drwxr-xr-x 2 root root 4096 5. Aug 16:43 applications
drwxr-xr-x 110 root root 4096 5. Aug 16:43 help
drwxr-xr-x 127 root root 4096 5. Aug 16:43 locale
drwxr-xr-x 3 root root 4096 5. Aug 16:43 man
drwxr-xr-x 2 root root 4096 5. Aug 16:43 metainfo
[rave@mother mate-terminal-dist]$ sudo ninja -C build uninstall
ninja: Entering directory `build'
[0/1] /usr/bin/meson --internal uninstall
Deleted: /usr/local/bin/mate-terminal
Deleted: /usr/local/share/applications/mate-terminal.desktop
Deleted: /usr/local/share/metainfo/mate-terminal.appdata.xml
Deleted: /usr/local/share/man/man1/mate-terminal.1
Deleted: /usr/local/bin/mate-terminal.wrapper
Deleted: /usr/local/share/man/man1
Deleted: /usr/local/share/man
Deleted: /usr/local/share/metainfo
Could not delete /usr/local/share/applications: [Errno 39] Directory not empty: '/usr/local/share/applications'.
Could not delete /usr/local/share: [Errno 39] Directory not empty: '/usr/local/share'.
Deleted: /usr/local/bin
Uninstall finished.
Deleted: 9
Failed: 2
[root@mother rave]# ls -l /usr/local/share/
insgesamt 12
drwxr-xr-x 2 root root 4096 5. Aug 16:49 applications
drwxr-xr-x 110 root root 4096 5. Aug 16:43 help
drwxr-xr-x 127 root root 4096 5. Aug 16:43 locale
Ignore applications dir, but files in help and locale dir won`t be uninstalled.
Could not delete /usr/local/share/applications: [Errno 39] Directory not empty: '/usr/local/share/applications'. Could not delete /usr/local/share: [Errno 39] Directory not empty: '/usr/local/share'. Deleted: /usr/local/bin
Uninstall finished.
Deleted: 9 Failed: 2
I guess there are other files in these directories, so uninstalling mate-terminal will not delete this directory.
'/usr/local/share/applications' has a cache file, but that wasn't problem.
Files in help and locale directory won`t be uninstalled. Gsettings schemas won't be installed.
$ DESTDIR=/tmp/aaaa ninja uninstall
[0/1] /usr/bin/meson --internal uninstall
Deleted: /tmp/aaaa/usr/bin/mate-terminal
Deleted: /tmp/aaaa/usr/share/applications/mate-terminal.desktop
Deleted: /tmp/aaaa/usr/share/metainfo/mate-terminal.appdata.xml
Deleted: /tmp/aaaa/usr/share/man/man1/mate-terminal.1
Deleted: /tmp/aaaa/usr/bin/mate-terminal.wrapper
Deleted: /tmp/aaaa/usr/share/man/man1
Deleted: /tmp/aaaa/usr/share/man
Deleted: /tmp/aaaa/usr/share/metainfo
Deleted: /tmp/aaaa/usr/share/applications
Could not delete /tmp/aaaa/usr/share: [Errno 39] Directory not empty: '/tmp/aaaa/usr/share'.
Deleted: /tmp/aaaa/usr/bin
Could not delete /tmp/aaaa/usr: [Errno 39] Directory not empty: '/tmp/aaaa/usr'.
Could not delete /tmp/aaaa: [Errno 39] Directory not empty: '/tmp/aaaa'.
Uninstall finished.
Deleted: 10
Failed: 3
Remember that files created by custom scripts have not been removed.
It is designed by meson, or it can be said that it is a bug of meson. If files are not listed in meson-logs/install-log.txt
, these files will not be deleted when uninstalling.
When run ninja install -v
to install, you can see the output:
...
Running custom install script '/usr/bin/meson --internal yelphelper install --subdir=help --id=mate-terminal --installdir=share/help --sources=index.docbook@@legal.xml --symlinks=true --media=figures/mate-terminal-default.png@@figures/mate-terminal-tabbed.png'
...
Running custom install script '/usr/bin/meson --internal gettext install --subdir=po --localedir=share/locale --pkgname=mate-terminal'
...
Running custom install script '/home/yetist/checkout/03-mate-desktop/mate-terminal/meson_post_install.py /usr/share'
...
And after run uninstall
, you can see the output line:
Remember that files created by custom scripts have not been removed.
What is changed with the git push -f
?
What is changed with the
git push -f
?
Install schema files and rebase on master. https://github.com/mate-desktop/mate-terminal/blob/3c4825f24b3e6b33f9d305f08cadd14f4b79dfb5/src/meson.build#L95-L97
subprojects/mate-submodules/meson.build:85: WARNING: Consider using the built-in warning_level option instead of using "-Wextra".
subprojects/mate-submodules/meson.build:85: WARNING: Consider using the built-in warning_level option instead of using "-Wall".
It is designed by meson, or it can be said that it is a bug of meson. If files are not listed in meson-logs/install-log.txt, these files will not be deleted when uninstalling.
This is really progress that a simple install/uninstall command doesn't work in 2020. This told me not to remove autotools support from our projects and use it as long as possible.
@yetist can you fix the warnings I mentioned please?
subprojects/mate-submodules/meson.build:85: WARNING: Consider using the built-in warning_level option instead of using "-Wextra".
subprojects/mate-submodules/meson.build:85: WARNING: Consider using the built-in warning_level option instead of using "-Wall".
@yetist
...and we have now 1000 more lines per distro in the logs
it seems it is built twice, probably related to the warnings I mentioned
...and we have now 1000 more lines per distro in the logs
it seems it is built twice.
Yes, one for autotools, one for meson.
Add meson build system.