meson: Avoid copying configured SCSS files to current_source_dir()
We could specify current_source_dir() in our *.scss.in.
Finally we can get rid of the ugliest workaround from our meson!
By using this site, you agree to have cookies stored on your device, strictly for functional purposes, such as storing your session and preferences.
We could specify current_source_dir() in our *.scss.in.
Finally we can get rid of the ugliest workaround from our meson!
roundabout,
created on Saturday, 6 March 2021, 23:37:43 (1615073863),
received on Sunday, 11 May 2025, 13:22:59 (1746969779)
Author identity: nana-4 <hnmaigo@gmail.com>
0d9c423e9d83b3ac1805352fe8173a7b828589c3
*.pem
tmp/
*build*/
src/cinnamon/cinnamon.*.scss
src/gnome-shell/gnome-shell.*.scss
src/gtk-3.0/gtk.*.scss
src/gtk-3.0/gtk-dark.*.scss
src/gtk-4.0/gtk.*.scss
src/gtk-4.0/gtk-dark.*.scss
$light-topbar: @light_topbar@;
$compact: @compact@;
@import "../variables";
@import "../colors";
@import "../gnome-shell/sass/variables";
@import "../gnome-shell/sass/drawing";
@import "sass/over-rides";
@import "sass/extends";
@import "sass/common";
@import "@current_source_dir@/../variables";
@import "@current_source_dir@/../colors";
@import "@current_source_dir@/../gnome-shell/sass/variables";
@import "@current_source_dir@/../gnome-shell/sass/drawing";
@import "@current_source_dir@/sass/over-rides";
@import "@current_source_dir@/sass/extends";
@import "@current_source_dir@/sass/common";
cinnamon_scss_conf.set('dark_theme', theme['scss_dark_theme'])
cinnamon_scss_conf.set('light_topbar', theme['scss_light_topbar'])
cinnamon_scss_conf.set('compact', theme['scss_compact'])
cinnamon_scss_conf.set('current_source_dir', meson.current_source_dir())
# Configure SCSS file
cinnamon_scss = configure_file(
configuration: cinnamon_scss_conf,
)
# Copy it from build dir to source dir
run_command(
'cp',
cinnamon_scss,
meson.current_source_dir(),
)
# Generate CSS file
cinnamon_css = custom_target(
'cinnamon.@0@.css'.format(theme['name']),
input: 'cinnamon.@0@.scss'.format(theme['name']),
input: cinnamon_scss,
output: 'cinnamon.@0@.css'.format(theme['name']),
command: [sassc, sassc_opts, '@INPUT@', '@OUTPUT@'],
depend_files: cinnamon_scss_depend_files,
$compact: @compact@;
$version: @version@;
@import "../variables";
@import "../colors";
@import "sass/variables";
@import "sass/drawing";
@import "sass/components";
@import "sass/extensions";
@import "@current_source_dir@/../variables";
@import "@current_source_dir@/../colors";
@import "@current_source_dir@/sass/variables";
@import "@current_source_dir@/sass/drawing";
@import "@current_source_dir@/sass/components";
@import "@current_source_dir@/sass/extensions";
gnome_shell_scss_conf.set('light_topbar', theme['scss_light_topbar'])
gnome_shell_scss_conf.set('compact', theme['scss_compact'])
gnome_shell_scss_conf.set('version', gnome_shell_version)
gnome_shell_scss_conf.set('current_source_dir', meson.current_source_dir())
# Configure SCSS file
gnome_shell_scss = configure_file(
configuration: gnome_shell_scss_conf,
)
# Copy it from build dir to source dir
run_command(
'cp',
gnome_shell_scss,
meson.current_source_dir(),
)
# Generate CSS file
gnome_shell_css = custom_target(
'gnome-shell.@0@.css'.format(theme['name']),
input: 'gnome-shell.@0@.scss'.format(theme['name']),
input: gnome_shell_scss,
output: 'gnome-shell.@0@.css'.format(theme['name']),
command: [sassc, sassc_opts, '@INPUT@', '@OUTPUT@'],
depend_files: gnome_shell_scss_depend_files,
$light-topbar: false;
$compact: @compact@;
@import "../variables";
@import "../colors";
@import "sass/drawing";
@import "sass/common";
@import "sass/apps";
@import "sass/colors-public";
@import "@current_source_dir@/../variables";
@import "@current_source_dir@/../colors";
@import "@current_source_dir@/sass/drawing";
@import "@current_source_dir@/sass/common";
@import "@current_source_dir@/sass/apps";
@import "@current_source_dir@/sass/colors-public";
$light-topbar: @light_topbar@;
$compact: @compact@;
@import "../variables";
@import "../colors";
@import "sass/drawing";
@import "sass/common";
@import "sass/apps";
@import "sass/colors-public";
@import "@current_source_dir@/../variables";
@import "@current_source_dir@/../colors";
@import "@current_source_dir@/sass/drawing";
@import "@current_source_dir@/sass/common";
@import "@current_source_dir@/sass/apps";
@import "@current_source_dir@/sass/colors-public";
gtk3_scss_conf.set('dark_theme', theme['scss_dark_theme'])
gtk3_scss_conf.set('light_topbar', theme['scss_light_topbar'])
gtk3_scss_conf.set('compact', theme['scss_compact'])
gtk3_scss_conf.set('current_source_dir', meson.current_source_dir())
foreach gtk3_variant: gtk3_variants
gtk3_temp_name = 'gtk@0@.@1@'.format(gtk3_variant, theme['name'])
configuration: gtk3_scss_conf,
)
# Copy it from build dir to source dir
run_command(
'cp',
gtk3_scss,
meson.current_source_dir(),
)
# Generate CSS file
gtk3_css = custom_target(
'@0@.css'.format(gtk3_temp_name),
input: '@0@.scss'.format(gtk3_temp_name),
input: gtk3_scss,
output: '@0@.css'.format(gtk3_temp_name),
command: [sassc, sassc_opts, '@INPUT@', '@OUTPUT@'],
depend_files: gtk3_scss_depend_files,
$compact: @compact@;
$version: @version@;
@import "../variables";
@import "../colors";
@import "sass/drawing";
@import "sass/common";
@import "../gtk-3.0/sass/colors-public";
@import "@current_source_dir@/../variables";
@import "@current_source_dir@/../colors";
@import "@current_source_dir@/sass/drawing";
@import "@current_source_dir@/sass/common";
@import "@current_source_dir@/../gtk-3.0/sass/colors-public";
$compact: @compact@;
$version: @version@;
@import "../variables";
@import "../colors";
@import "sass/drawing";
@import "sass/common";
@import "../gtk-3.0/sass/colors-public";
@import "@current_source_dir@/../variables";
@import "@current_source_dir@/../colors";
@import "@current_source_dir@/sass/drawing";
@import "@current_source_dir@/sass/common";
@import "@current_source_dir@/../gtk-3.0/sass/colors-public";
gtk4_scss_conf.set('light_topbar', theme['scss_light_topbar'])
gtk4_scss_conf.set('compact', theme['scss_compact'])
gtk4_scss_conf.set('version', gtk4_version)
gtk4_scss_conf.set('current_source_dir', meson.current_source_dir())
foreach gtk4_variant: gtk4_variants
gtk4_temp_name = 'gtk@0@.@1@'.format(gtk4_variant, theme['name'])
configuration: gtk4_scss_conf,
)
# Copy it from build dir to source dir
run_command(
'cp',
gtk4_scss,
meson.current_source_dir(),
)
# Generate CSS file
gtk4_css = custom_target(
'@0@.css'.format(gtk4_temp_name),
input: '@0@.scss'.format(gtk4_temp_name),
input: gtk4_scss,
output: '@0@.css'.format(gtk4_temp_name),
command: [sassc, sassc_opts, '@INPUT@', '@OUTPUT@'],
depend_files: gtk4_scss_depend_files,