build: switch stylesheet to scss (#20283)

This commit is contained in:
Frédéric Péters 2017-11-26 17:14:49 +01:00
parent 49c86650b4
commit 98f34a0080
3 changed files with 36 additions and 2 deletions

2
debian/control vendored
View File

@ -2,7 +2,7 @@ Source: chrono
Maintainer: Frederic Peters <fpters@entrouvert.com>
Section: python
Priority: optional
Build-Depends: python-setuptools (>= 0.6b3), python-all (>= 2.6.6-3), python-django, debhelper (>= 7), dh-systemd
Build-Depends: python-setuptools (>= 0.6b3), python-all (>= 2.6.6-3), python-django, debhelper (>= 7), dh-systemd, ruby-sass
Standards-Version: 3.9.6
X-Python-Version: >= 2.7

View File

@ -11,6 +11,7 @@ from setuptools.command.install_lib import install_lib as _install_lib
from distutils.command.build import build as _build
from distutils.command.sdist import sdist
from distutils.cmd import Command
from distutils.spawn import find_executable
from setuptools import setup, find_packages
class eo_sdist(sdist):
@ -72,8 +73,40 @@ class compile_translations(Command):
sys.stderr.write('!!! Please install Django >= 1.4 to build translations\n')
class compile_scss(Command):
description = 'compile scss files into css files'
user_options = []
def initialize_options(self):
pass
def finalize_options(self):
pass
def run(self):
sass_bin = None
for program in ('sass', 'sassc'):
sass_bin = find_executable(program)
if sass_bin:
break
if not sass_bin:
raise CompileError('A sass compiler is required but none was found. See sass-lang.com for choices.')
for package in self.distribution.packages:
for package_path in __import__(package).__path__:
for path, dirnames, filenames in os.walk(package_path):
for filename in filenames:
if not filename.endswith('.scss'):
continue
if filename.startswith('_'):
continue
subprocess.check_call([sass_bin, '%s/%s' % (path, filename),
'%s/%s' % (path, filename.replace('.scss', '.css'))])
class build(_build):
sub_commands = [('compile_translations', None)] + _build.sub_commands
sub_commands = [('compile_translations', None),
('compile_scss', None) ] + _build.sub_commands
class install_lib(_install_lib):
@ -113,6 +146,7 @@ setup(
zip_safe=False,
cmdclass={
'build': build,
'compile_scss': compile_scss,
'compile_translations': compile_translations,
'install_lib': install_lib,
'sdist': eo_sdist,