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!
We could specify current_source_dir() in our *.scss.in.
Finally we can get rid of the ugliest workaround from our meson!
by roundabout, Saturday, 6 March 2021, 23:37:43 (1615073863), pushed by roundabout, 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,