summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQuentin Glidic <sardemff7+git@sardemff7.net>2020-12-10 21:11:12 +0100
committerQuentin Glidic <sardemff7+git@sardemff7.net>2020-12-10 21:11:12 +0100
commita4166b5c291318bdbbd7d229df9124f59c91b9b2 (patch)
tree88570a266280d1d09b85abc2a3dbbe41e6ddf654
parentec858dd305ef843e45998860f67af8524dc42fef (diff)
Drop Mesonwip/meson-drop
It goes out of sync too often. Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
-rw-r--r--.travis.yml38
-rw-r--r--INSTALL.md44
-rw-r--r--Makefile.am9
-rw-r--r--meson.build498
-rw-r--r--meson_options.txt3
5 files changed, 0 insertions, 592 deletions
diff --git a/.travis.yml b/.travis.yml
index 9ddc0b6f..7b79c25c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -13,9 +13,6 @@ addons:
name: "DaveDavenport/rofi"
description: "Build submitted via Travis CI"
notification_email: qball@gmpclient.org
- # TODO: What do these actually do?
- build_command_prepend: "meson setup build"
- build_command: "ninja -C build"
branch_pattern: coverity_scan
apt:
packages:
@@ -38,10 +35,6 @@ addons:
- libxkbcommon-dev
- libxkbcommon-dev
- libxkbcommon-x11-dev
- - ninja-build
- - python3-pip
- - python3-setuptools
- - python3-wheel
- texi2html
- texinfo
- xdotool
@@ -92,29 +85,6 @@ before_install:
- test $(grep -c warning doxygen.log) -eq 0
- ../doxy-coverage/doxy-coverage.py doc/html/xml/
-# YAML anchor, ignored by Travis CI (albeit present in the JSON render):
-.meson: &meson
- install: &meson_install
- # Ubuntu's meson version is outdated. Use pip to install a more recent
- # release:
- - pip3 install --user meson
- # ~/.local/bin is not a part of $PATH by default. Update $PATH to include it:
- - PATH="$PATH:$HOME/.local/bin"
- before_script:
- &meson_before_script # Configure the build directory with meson:
- - meson setup build -Db_coverage=true
- # TODO: Fix X11 tests (and check whether or not changing the user's resource
- # limit is still required for the X11 tests).
- script: &meson_script # Build the project:
- - ninja -C build
- # Run tests:
- - ninja -C build test
- #- ulimit -c unlimited
- #- ninja -C build test-x
- - ninja -C build doc/html 2>&1 > doxygen.log
- - test $(grep -c warning doxygen.log) -eq 0
- - ./doxy-coverage/doxy-coverage.py build/doc/html/xml/
-
after_success:
- bash <(curl -s https://codecov.io/bash)
@@ -132,14 +102,6 @@ jobs:
compiler: gcc
# Merge keys from the .autotools map:
<<: *autotools
- - name: "Meson - Clang"
- compiler: clang
- # Merge keys from the .meson map:
- <<: *meson
- - name: "Meson - GCC"
- compiler: gcc
- # Merge keys from the .meson map:
- <<: *meson
notifications:
webhooks:
diff --git a/INSTALL.md b/INSTALL.md
index 6c358490..771fa355 100644
--- a/INSTALL.md
+++ b/INSTALL.md
@@ -4,7 +4,6 @@ This guide explains how to install rofi using its build system and how you can m
Rofi uses autotools (GNU Build system), for more information see
[here](https://www.gnu.org/software/automake/manual/html_node/Autotools-Introduction.html).
-You can also use [Meson](https://mesonbuild.com/) as an alternative.
## DEPENDENCY
@@ -74,28 +73,6 @@ make install
The default installation prefix is: `/usr/local/` use `./configure --prefix={prefix}` to install into another location.
-### Meson
-
-Check dependencies and configure build system:
-
-```
-meson setup build
-```
-
-Build Rofi:
-
-```
-ninja -C build
-```
-
-The actual install, execute as root (if needed):
-
-```
-ninja -C build install
-```
-
-The default installation prefix is: `/usr/local/` use `meson setup build --prefix={prefix}` to install into another location.
-
## Install a checkout from git
The GitHub Pages version of these directions may be out of date. Please use
@@ -132,17 +109,12 @@ From this point, use the same steps you use for a release.
When you run the configure step there are several options you can configure.
For Autotools, you can see the full list with `./configure --help`.
-For Meson, before the initial setup, you can see rofi options in `meson_options.txt` and Meson options with `meson setup --help`.
-After the initial setup, use `meson configure build`.
The most useful one to set the installation prefix:
```
# Autotools
../configure --prefix=<installation path>
-
-# Meson
-meson setup build --prefix <installation path>
```
f.e.
@@ -150,9 +122,6 @@ f.e.
```
# Autotools
../configure --prefix=/usr/
-
-# Meson
-meson setup build --prefix /usr
```
### Install locally
@@ -162,9 +131,6 @@ or to install locally:
```
# Autotools
../configure --prefix=${HOME}/.local/
-
-# Meson
-meson setup build --prefix ${HOME}/.local
```
@@ -179,9 +145,6 @@ Show the commands called:
```
# Autotools
make V=1
-
-# Meson
-ninja -C build -v
```
### Debug build
@@ -191,10 +154,6 @@ Compile with debug symbols and no optimization, this is useful for making backtr
```
# Autotools
make CFLAGS="-O0 -g3" clean rofi
-
-# Meson
-meson configure build --debug
-ninja -C build
```
### Get a backtrace
@@ -207,9 +166,6 @@ can then load the core in GDB.
```
# Autotools
gdb rofi core
-
-# Meson (because it uses a separate build directory)
-gdb build/rofi core
```
> Where the core file is located and what its exact name is different on each distributions. Please consult the
diff --git a/Makefile.am b/Makefile.am
index 72d32534..f464417f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -634,12 +634,3 @@ coverage-clean:
.PHONY: .FORCE
.FORCE:
-
-EXTRA_DIST += \
- doc/meson.build \
- subprojects/libnkutils/meson.build \
- subprojects/libnkutils/meson_options.txt \
- subprojects/libgwater/xcb/meson.build \
- meson_options.txt \
- subprojects/xcb \
- meson.build
diff --git a/meson.build b/meson.build
deleted file mode 100644
index 265b3074..00000000
--- a/meson.build
+++ /dev/null
@@ -1,498 +0,0 @@
-project('rofi', 'c',
- version: '1.6.1-dev',
- meson_version: '>=0.47.0',
- license: [ 'MIT' ],
- default_options: [
- 'c_std=c99',
- ],
-)
-
-c_compiler = meson.get_compiler('c')
-
-add_project_arguments(
- '-I@0@'.format(meson.build_root()),
- '-I@0@'.format(join_paths(meson.source_root(), 'include')),
- '-D_DEFAULT_SOURCE=1',
- language: 'c'
-)
-
-flags = [
- '-Wparentheses',
- '-Winline',
- '-Wunreachable-code',
- '-Werror=missing-prototypes',
- '-Wno-inline', # A bit too noisy with Bison…
-]
-foreach f : flags
- if c_compiler.has_argument(f)
- add_project_arguments(f, language: 'c')
- endif
-endforeach
-
-plugindir = join_paths(get_option('libdir'), meson.project_name())
-themedir = join_paths(get_option('datadir'), meson.project_name(), 'themes')
-
-glib_min_major=2
-glib_min_minor=40
-glib_min_version='@0@.@1@'.format(glib_min_major, glib_min_minor)
-plugins_deps = [
- dependency('glib-2.0', version: '>= @0@'.format(glib_min_version)),
- dependency('gmodule-2.0'),
- dependency('cairo'),
-]
-
-deps = [
- plugins_deps,
- dependency('gio-unix-2.0'),
- dependency('pango'),
- dependency('pangocairo'),
- dependency('xkbcommon'),
- dependency('gdk-pixbuf-2.0'),
-]
-
-
-gwxcb = subproject('xcb')
-# XCB stuff
-deps += [
- gwxcb.get_variable('libgwater_xcb'),
- dependency('xcb-aux'),
- dependency('xcb-xkb'),
- dependency('xkbcommon-x11'),
- dependency('xcb-ewmh'),
- dependency('xcb-icccm'),
- dependency('xcb-xrm'),
- dependency('xcb-randr'),
- dependency('xcb-xinerama'),
- dependency('cairo-xcb'),
- dependency('libstartup-notification-1.0'),
-]
-
-libgif = c_compiler.find_library('libgif', required: false)
-deps += [ libgif ]
-
-check = dependency('check', version: '>= 0.11.0', required: get_option('check'))
-
-header_conf = configuration_data()
-header_conf.set_quoted('PACKAGE_NAME', meson.project_name())
-header_conf.set_quoted('PACKAGE_VERSION', meson.project_version())
-header_conf.set_quoted('VERSION', meson.project_version())
-header_conf.set_quoted('GETTEXT_PACKAGE', meson.project_name())
-header_conf.set_quoted('PACKAGE_BUGREPORT', 'https://github.com/davatorium/rofi/')
-header_conf.set_quoted('PACKAGE_URL', 'https://reddit.com/r/qtools/')
-
-header_conf.set('THEME_CONVERTER', true)
-header_conf.set('_GNU_SOURCE', true)
-
-header_conf.set('USE_NK_GIT_VERSION', true)
-
-header_conf.set('GLIB_VERSION_MIN_REQUIRED', '(G_ENCODE_VERSION(@0@,@1@))'.format(glib_min_major, glib_min_minor))
-header_conf.set('GLIB_VERSION_MAX_ALLOWED', '(G_ENCODE_VERSION(@0@,@1@))'.format(glib_min_major, glib_min_minor))
-
-header_conf.set('ENABLE_DRUN', get_option('drun'))
-header_conf.set('HAVE_LIBGIF', libgif.found())
-header_conf.set('WINDOW_MODE', get_option('window'))
-
-header_conf.set_quoted('MANPAGE_PATH', join_paths(get_option('prefix'), get_option('mandir')))
-header_conf.set_quoted('SYSCONFDIR', join_paths(get_option('prefix'), get_option('sysconfdir')))
-header_conf.set_quoted('PLUGIN_PATH', join_paths(get_option('prefix'), plugindir))
-header_conf.set_quoted('THEME_DIR', join_paths(get_option('prefix'), themedir))
-
-config_h = configure_file(output: 'config.h', configuration: header_conf)
-
-nk_options = [
- 'bindings=true',
- 'xdg-theme=true',
- 'git-work-tree=@0@'.format(meson.source_root()),
-]
-nk = subproject('libnkutils', default_options: nk_options)
-nk_subproject_options = nk.get_variable('nk_options')
-foreach o : nk_options + nk_subproject_options
- if not nk_options.contains(o) or not nk_subproject_options.contains(o)
- error('You must not change libnkutils options @0@ != @1@'.format('|'.join(nk_options), '|'.join(nk_subproject_options)))
- endif
-endforeach
-deps += nk.get_variable('libnkutils')
-deps += nk.get_variable('libnkutils_bindings')
-
-install_headers([
- 'include/mode.h',
- 'include/mode-private.h',
- 'include/helper.h',
- 'include/rofi-types.h',
- 'include/rofi-icon-fetcher.h'
- ],
- subdir: meson.project_name(),
-)
-install_data(
- 'script/rofi-sensible-terminal',
- 'script/rofi-theme-selector',
- install_dir: join_paths(get_option('prefix'), get_option('bindir'))
-)
-
-flex = generator(find_program('flex'),
- output: '@BASENAME@.c',
- arguments: [ '-o', '@OUTPUT@', '@INPUT@' ]
-)
-bison = generator(find_program('bison'),
- output: [ '@BASENAME@.c', '@BASENAME@.h' ],
- arguments: [ '-d', '@INPUT@', '--defines=@OUTPUT1@', '--output=@OUTPUT0@' ]
-)
-
-rofi_sources = files(
- 'source/rofi.c',
- 'source/view.c',
- 'source/mode.c',
- 'source/keyb.c',
- 'config/config.c',
- 'source/helper.c',
- 'source/timings.c',
- 'source/history.c',
- 'source/theme.c',
- 'source/rofi-icon-fetcher.c',
- 'source/css-colors.c',
- 'source/widgets/box.c',
- 'source/widgets/icon.c',
- 'source/widgets/container.c',
- 'source/widgets/widget.c',
- 'source/widgets/textbox.c',
- 'source/widgets/listview.c',
- 'source/widgets/scrollbar.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- 'source/xcb.c',
- 'source/dialogs/run.c',
- 'source/dialogs/ssh.c',
- 'source/dialogs/drun.c',
- 'source/dialogs/dmenu.c',
- 'source/dialogs/combi.c',
- 'source/dialogs/window.c',
- 'source/dialogs/script.c',
- 'source/dialogs/help-keys.c',
- 'source/dialogs/filebrowser.c',
- 'include/display.h',
- 'include/xcb.h',
- 'include/xcb-internal.h',
- 'include/rofi.h',
- 'include/mode.h',
- 'include/mode-private.h',
- 'include/settings.h',
- 'include/keyb.h',
- 'include/view.h',
- 'include/view-internal.h',
- 'include/rofi-icon-fetcher.h',
- 'include/helper.h',
- 'include/helper-theme.h',
- 'include/timings.h',
- 'include/history.h',
- 'include/theme.h',
- 'include/rofi-types.h',
- 'include/css-colors.h',
- 'include/widgets/box.h',
- 'include/widgets/icon.h',
- 'include/widgets/container.h',
- 'include/widgets/widget.h',
- 'include/widgets/widget-internal.h',
- 'include/widgets/textbox.h',
- 'include/widgets/listview.h',
- 'include/widgets/scrollbar.h',
- 'include/xrmoptions.h',
- 'include/dialogs/ssh.h',
- 'include/dialogs/run.h',
- 'include/dialogs/drun.h',
- 'include/dialogs/dmenu.h',
- 'include/dialogs/combi.h',
- 'include/dialogs/script.h',
- 'include/dialogs/window.h',
- 'include/dialogs/dialogs.h',
- 'include/dialogs/help-keys.h',
- 'include/dialogs/filebrowser.h',
- 'include/dialogs/dmenuscriptshared.h',
-)
-theme_lexer_sources = files('lexer/theme-lexer.l')
-theme_parser_sources = files('lexer/theme-parser.y')
-
-theme_lexer = flex.process(theme_lexer_sources)
-theme_parser = bison.process(theme_parser_sources)
-
-gnome = import('gnome')
-default_theme = gnome.compile_resources('resources', files('resources/resources.xml'))
-
-rofi = executable('rofi', rofi_sources + [
- theme_lexer,
- theme_parser,
- default_theme,
- ],
- dependencies: deps,
- install: true,
-)
-
-subdir('doc')
-install_man(
- 'doc/rofi.1',
- 'doc/rofi-theme-selector.1',
- 'doc/rofi-sensible-terminal.1',
- 'doc/rofi-script.5',
- 'doc/rofi-theme.5',
-)
-
-install_data(
- 'themes/Adapta-Nokto.rasi',
- 'themes/Arc.rasi',
- 'themes/Arc-Dark.rasi',
- 'themes/DarkBlue.rasi',
- 'themes/Pop-Dark.rasi',
- 'themes/Indego.rasi',
- 'themes/Monokai.rasi',
- 'themes/Paper.rasi',
- 'themes/android_notification.rasi',
- 'themes/arthur.rasi',
- 'themes/blue.rasi',
- 'themes/c64.rasi',
- 'themes/dmenu.rasi',
- 'themes/glue_pro_blue.rasi',
- 'themes/gruvbox-common.rasi',
- 'themes/gruvbox-dark-hard.rasi',
- 'themes/gruvbox-dark-soft.rasi',
- 'themes/gruvbox-dark.rasi',
- 'themes/gruvbox-light-hard.rasi',
- 'themes/gruvbox-light-soft.rasi',
- 'themes/gruvbox-light.rasi',
- 'themes/lb.rasi',
- 'themes/paper-float.rasi',
- 'themes/purple.rasi',
- 'themes/sidebar.rasi',
- 'themes/solarized.rasi',
- 'themes/solarized_alternate.rasi',
- 'themes/fancy.rasi',
- install_dir: themedir
-)
-
-pkg = import('pkgconfig')
-
-pkg.generate(
- filebase: 'rofi',
- name: 'rofi',
- version: meson.project_version(),
- description: 'Header files for rofi plugins',
- variables: [
- 'pluginsdir=@0@'.format(join_paths('${libdir}', meson.project_name())),
- ],
- requires_private: plugins_deps,
-)
-
-
-test('history test', executable('history.test', [
- 'test/history-test.c',
- ],
- objects: rofi.extract_objects([
- 'source/history.c',
- 'config/config.c',
- ]),
- dependencies: deps,
-))
-
-test('helper_pidfile test', executable('helper_pidfile.test', [
- 'test/helper-pidfile.c',
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/helper.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- ]),
- dependencies: deps,
-))
-
-
-test('widget test', executable('widget.test', [
- 'test/widget-test.c',
- theme_parser,
- theme_lexer,
- ],
- objects: rofi.extract_objects([
- 'source/widgets/widget.c',
- 'source/widgets/textbox.c',
- 'source/theme.c',
- 'source/rofi-types.c',
- 'source/css-colors.c',
- 'source/helper.c',
- 'config/config.c',
- ]),
- dependencies: deps,
-))
-
-test('box test', executable('box.test', [
- 'test/box-test.c',
- theme_parser,
- theme_lexer,
- ],
- objects: rofi.extract_objects([
- 'source/widgets/widget.c',
- 'source/widgets/box.c',
- 'source/theme.c',
- 'source/rofi-types.c',
- 'source/css-colors.c',
- 'config/config.c',
- ]),
- dependencies: deps,
-))
-
-test('scrollbar test', executable('scrollbar.test', [
- 'test/scrollbar-test.c',
- theme_parser,
- theme_lexer,
- ],
- objects: rofi.extract_objects([
- 'source/widgets/widget.c',
- 'source/widgets/scrollbar.c',
- 'source/theme.c',
- 'source/rofi-types.c',
- 'source/css-colors.c',
- 'config/config.c',
- ]),
- dependencies: deps,
-))
-
-test('textbox test', executable('textbox.test', [
- 'test/textbox-test.c',
- theme_parser,
- theme_lexer,
- ],
- objects: rofi.extract_objects([
- 'source/widgets/widget.c',
- 'source/widgets/textbox.c',
- 'source/theme.c',
- 'source/rofi-types.c',
- 'source/css-colors.c',
- 'source/helper.c',
- 'config/config.c',
- ]),
- dependencies: deps,
-))
-
-test('helper test', executable('helper.test', [
- 'test/helper-test.c',
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/helper.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- ]),
- dependencies: deps,
-))
-
-test('helper_expand test', executable('helper_expand.test', [
- 'test/helper-expand.c',
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/helper.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- ]),
- dependencies: deps,
-))
-
-test('helper_config_cmdline_parser test', executable('helper_config_cmdline_parser.test', [
- 'test/helper-config-cmdline-parser.c',
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/helper.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- ]),
- dependencies: deps,
-))
-
-if check.found()
- deps+= [ check ]
-
- test('theme_parser test', executable('theme_parser.test', [
- 'test/theme-parser-test.c',
- theme_lexer,
- theme_parser,
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/helper.c',
- 'source/xrmoptions.c',
- 'source/theme.c',
- 'source/rofi-types.c',
- 'source/css-colors.c',
- ]),
- dependencies: deps,
- ))
-
- test('mode test', executable('mode.test', [
- 'test/mode-test.c',
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/dialogs/help-keys.c',
- 'source/helper.c',
- 'source/mode.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- 'source/keyb.c',
- ]),
- dependencies: deps,
- ))
-
- test('helper_tokenize test', executable('helper_tokenize.test', [
- 'test/helper-tokenize.c',
- ],
- objects: rofi.extract_objects([
- 'config/config.c',
- 'source/helper.c',
- 'source/xrmoptions.c',
- 'source/rofi-types.c',
- ]),
- dependencies: deps,
- ))
-endif
-
-
-run_target('test-x', command: [ 'test/run_all_tests.sh' ], depends: [ rofi ])
-
-uncrustify = find_program('uncrustify', required: false)
-if uncrustify.found()
- run_target('indent',
- command: [
- uncrustify,
- '-c', join_paths(meson.source_root(), 'data', 'uncrustify.cfg'),
- '--replace',
- rofi_sources
- ],
- )
-endif
-
-rofi_sources += theme_lexer_sources
-rofi_sources += theme_parser_sources
-
-cppcheck = find_program('cppcheck', required: false)
-if cppcheck.found()
- run_target('cppcheck',
- command: [
- cppcheck,
- '--std=@0@'.format(get_option('c_std')),
- '--platform=unix64',
- '--enable=all',
- '-Uerror_dialog',
- '--inconclusive',
- '-I@0@'.format(join_paths(meson.source_root(), 'include')),
- rofi_sources
- ],
- )
-endif
-
-ohcount = find_program('ohcount', required: false)
-if ohcount.found()
- run_target('ohcount',
- command: [
- ohcount,
- rofi_sources
- ],
- )
-endif
diff --git a/meson_options.txt b/meson_options.txt
deleted file mode 100644
index 08fb0de0..00000000
--- a/meson_options.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-option('drun', type: 'boolean', value: true, description: 'Desktop file mode')
-option('window', type: 'boolean', value: true, description: 'Window switcher mode')
-option('check', type: 'feature', description: 'Build and run libcheck-based tests')