sassc 2.0.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/.gitmodules +1 -1
  4. data/.travis.yml +9 -3
  5. data/CHANGELOG.md +36 -0
  6. data/CODE_OF_CONDUCT.md +1 -1
  7. data/README.md +1 -1
  8. data/Rakefile +43 -7
  9. data/ext/depend +4 -0
  10. data/ext/extconf.rb +92 -0
  11. data/ext/libsass/VERSION +1 -0
  12. data/ext/libsass/include/sass/base.h +9 -1
  13. data/ext/libsass/include/sass/context.h +5 -1
  14. data/ext/libsass/src/MurmurHash2.hpp +91 -0
  15. data/ext/libsass/src/ast.cpp +755 -2028
  16. data/ext/libsass/src/ast.hpp +492 -2477
  17. data/ext/libsass/src/{to_c.cpp → ast2c.cpp} +22 -16
  18. data/ext/libsass/src/ast2c.hpp +39 -0
  19. data/ext/libsass/src/ast_def_macros.hpp +70 -10
  20. data/ext/libsass/src/ast_fwd_decl.cpp +5 -3
  21. data/ext/libsass/src/ast_fwd_decl.hpp +107 -296
  22. data/ext/libsass/src/ast_helpers.hpp +292 -0
  23. data/ext/libsass/src/ast_sel_cmp.cpp +396 -0
  24. data/ext/libsass/src/ast_sel_super.cpp +539 -0
  25. data/ext/libsass/src/ast_sel_unify.cpp +275 -0
  26. data/ext/libsass/src/ast_sel_weave.cpp +616 -0
  27. data/ext/libsass/src/ast_selectors.cpp +1043 -0
  28. data/ext/libsass/src/ast_selectors.hpp +522 -0
  29. data/ext/libsass/src/ast_supports.cpp +114 -0
  30. data/ext/libsass/src/ast_supports.hpp +121 -0
  31. data/ext/libsass/src/ast_values.cpp +1154 -0
  32. data/ext/libsass/src/ast_values.hpp +498 -0
  33. data/ext/libsass/src/backtrace.cpp +11 -7
  34. data/ext/libsass/src/backtrace.hpp +5 -5
  35. data/ext/libsass/src/base64vlq.cpp +5 -2
  36. data/ext/libsass/src/base64vlq.hpp +1 -1
  37. data/ext/libsass/src/bind.cpp +35 -34
  38. data/ext/libsass/src/bind.hpp +3 -1
  39. data/ext/libsass/src/c2ast.cpp +64 -0
  40. data/ext/libsass/src/c2ast.hpp +14 -0
  41. data/ext/libsass/src/cencode.c +4 -6
  42. data/ext/libsass/src/check_nesting.cpp +83 -88
  43. data/ext/libsass/src/check_nesting.hpp +39 -34
  44. data/ext/libsass/src/color_maps.cpp +168 -164
  45. data/ext/libsass/src/color_maps.hpp +152 -160
  46. data/ext/libsass/src/constants.cpp +20 -0
  47. data/ext/libsass/src/constants.hpp +19 -0
  48. data/ext/libsass/src/context.cpp +104 -121
  49. data/ext/libsass/src/context.hpp +43 -55
  50. data/ext/libsass/src/cssize.cpp +103 -188
  51. data/ext/libsass/src/cssize.hpp +45 -51
  52. data/ext/libsass/src/dart_helpers.hpp +199 -0
  53. data/ext/libsass/src/debugger.hpp +524 -361
  54. data/ext/libsass/src/emitter.cpp +26 -26
  55. data/ext/libsass/src/emitter.hpp +20 -18
  56. data/ext/libsass/src/environment.cpp +41 -27
  57. data/ext/libsass/src/environment.hpp +33 -22
  58. data/ext/libsass/src/error_handling.cpp +92 -94
  59. data/ext/libsass/src/error_handling.hpp +73 -50
  60. data/ext/libsass/src/eval.cpp +380 -515
  61. data/ext/libsass/src/eval.hpp +64 -57
  62. data/ext/libsass/src/eval_selectors.cpp +75 -0
  63. data/ext/libsass/src/expand.cpp +322 -263
  64. data/ext/libsass/src/expand.hpp +55 -39
  65. data/ext/libsass/src/extender.cpp +1188 -0
  66. data/ext/libsass/src/extender.hpp +399 -0
  67. data/ext/libsass/src/extension.cpp +43 -0
  68. data/ext/libsass/src/extension.hpp +89 -0
  69. data/ext/libsass/src/file.cpp +134 -88
  70. data/ext/libsass/src/file.hpp +28 -37
  71. data/ext/libsass/src/fn_colors.cpp +596 -0
  72. data/ext/libsass/src/fn_colors.hpp +85 -0
  73. data/ext/libsass/src/fn_lists.cpp +285 -0
  74. data/ext/libsass/src/fn_lists.hpp +34 -0
  75. data/ext/libsass/src/fn_maps.cpp +94 -0
  76. data/ext/libsass/src/fn_maps.hpp +30 -0
  77. data/ext/libsass/src/fn_miscs.cpp +244 -0
  78. data/ext/libsass/src/fn_miscs.hpp +40 -0
  79. data/ext/libsass/src/fn_numbers.cpp +227 -0
  80. data/ext/libsass/src/fn_numbers.hpp +45 -0
  81. data/ext/libsass/src/fn_selectors.cpp +205 -0
  82. data/ext/libsass/src/fn_selectors.hpp +35 -0
  83. data/ext/libsass/src/fn_strings.cpp +268 -0
  84. data/ext/libsass/src/fn_strings.hpp +34 -0
  85. data/ext/libsass/src/fn_utils.cpp +158 -0
  86. data/ext/libsass/src/fn_utils.hpp +62 -0
  87. data/ext/libsass/src/inspect.cpp +253 -266
  88. data/ext/libsass/src/inspect.hpp +72 -74
  89. data/ext/libsass/src/json.cpp +2 -2
  90. data/ext/libsass/src/lexer.cpp +25 -84
  91. data/ext/libsass/src/lexer.hpp +5 -16
  92. data/ext/libsass/src/listize.cpp +27 -43
  93. data/ext/libsass/src/listize.hpp +14 -11
  94. data/ext/libsass/src/mapping.hpp +1 -0
  95. data/ext/libsass/src/memory.hpp +12 -0
  96. data/ext/libsass/src/memory/allocator.cpp +48 -0
  97. data/ext/libsass/src/memory/allocator.hpp +138 -0
  98. data/ext/libsass/src/memory/config.hpp +20 -0
  99. data/ext/libsass/src/memory/memory_pool.hpp +186 -0
  100. data/ext/libsass/src/memory/shared_ptr.cpp +33 -0
  101. data/ext/libsass/src/memory/shared_ptr.hpp +332 -0
  102. data/ext/libsass/src/operation.hpp +193 -143
  103. data/ext/libsass/src/operators.cpp +56 -29
  104. data/ext/libsass/src/operators.hpp +11 -11
  105. data/ext/libsass/src/ordered_map.hpp +112 -0
  106. data/ext/libsass/src/output.cpp +59 -75
  107. data/ext/libsass/src/output.hpp +15 -22
  108. data/ext/libsass/src/parser.cpp +662 -818
  109. data/ext/libsass/src/parser.hpp +96 -100
  110. data/ext/libsass/src/parser_selectors.cpp +189 -0
  111. data/ext/libsass/src/permutate.hpp +164 -0
  112. data/ext/libsass/src/plugins.cpp +12 -8
  113. data/ext/libsass/src/plugins.hpp +8 -8
  114. data/ext/libsass/src/position.cpp +10 -26
  115. data/ext/libsass/src/position.hpp +44 -21
  116. data/ext/libsass/src/prelexer.cpp +14 -8
  117. data/ext/libsass/src/prelexer.hpp +9 -9
  118. data/ext/libsass/src/remove_placeholders.cpp +59 -57
  119. data/ext/libsass/src/remove_placeholders.hpp +20 -18
  120. data/ext/libsass/src/sass.cpp +25 -18
  121. data/ext/libsass/src/sass.hpp +22 -14
  122. data/ext/libsass/src/sass2scss.cpp +49 -18
  123. data/ext/libsass/src/sass_context.cpp +104 -132
  124. data/ext/libsass/src/sass_context.hpp +2 -2
  125. data/ext/libsass/src/sass_functions.cpp +7 -4
  126. data/ext/libsass/src/sass_functions.hpp +1 -1
  127. data/ext/libsass/src/sass_values.cpp +26 -21
  128. data/ext/libsass/src/settings.hpp +19 -0
  129. data/ext/libsass/src/source.cpp +69 -0
  130. data/ext/libsass/src/source.hpp +95 -0
  131. data/ext/libsass/src/source_data.hpp +32 -0
  132. data/ext/libsass/src/source_map.cpp +27 -20
  133. data/ext/libsass/src/source_map.hpp +14 -11
  134. data/ext/libsass/src/stylesheet.cpp +22 -0
  135. data/ext/libsass/src/stylesheet.hpp +57 -0
  136. data/ext/libsass/src/to_value.cpp +24 -22
  137. data/ext/libsass/src/to_value.hpp +18 -22
  138. data/ext/libsass/src/units.cpp +28 -22
  139. data/ext/libsass/src/units.hpp +9 -8
  140. data/ext/libsass/src/utf8/checked.h +12 -10
  141. data/ext/libsass/src/utf8/core.h +3 -0
  142. data/ext/libsass/src/utf8_string.cpp +12 -10
  143. data/ext/libsass/src/utf8_string.hpp +7 -6
  144. data/ext/libsass/src/util.cpp +97 -107
  145. data/ext/libsass/src/util.hpp +74 -30
  146. data/ext/libsass/src/util_string.cpp +125 -0
  147. data/ext/libsass/src/util_string.hpp +73 -0
  148. data/ext/libsass/src/values.cpp +33 -24
  149. data/ext/libsass/src/values.hpp +2 -2
  150. data/lib/sassc.rb +24 -0
  151. data/lib/sassc/engine.rb +7 -5
  152. data/lib/sassc/functions_handler.rb +11 -13
  153. data/lib/sassc/native.rb +10 -9
  154. data/lib/sassc/native/native_functions_api.rb +0 -5
  155. data/lib/sassc/script.rb +4 -6
  156. data/lib/sassc/version.rb +1 -1
  157. data/sassc.gemspec +32 -12
  158. data/test/engine_test.rb +32 -2
  159. data/test/functions_test.rb +38 -1
  160. data/test/native_test.rb +4 -4
  161. metadata +95 -109
  162. data/ext/Rakefile +0 -3
  163. data/ext/libsass/.editorconfig +0 -15
  164. data/ext/libsass/.gitattributes +0 -2
  165. data/ext/libsass/.github/CONTRIBUTING.md +0 -65
  166. data/ext/libsass/.github/ISSUE_TEMPLATE.md +0 -54
  167. data/ext/libsass/.gitignore +0 -85
  168. data/ext/libsass/.travis.yml +0 -64
  169. data/ext/libsass/COPYING +0 -25
  170. data/ext/libsass/GNUmakefile.am +0 -88
  171. data/ext/libsass/INSTALL +0 -1
  172. data/ext/libsass/LICENSE +0 -25
  173. data/ext/libsass/Makefile +0 -351
  174. data/ext/libsass/Makefile.conf +0 -55
  175. data/ext/libsass/Readme.md +0 -104
  176. data/ext/libsass/SECURITY.md +0 -10
  177. data/ext/libsass/appveyor.yml +0 -91
  178. data/ext/libsass/configure.ac +0 -138
  179. data/ext/libsass/contrib/libsass.spec +0 -66
  180. data/ext/libsass/docs/README.md +0 -20
  181. data/ext/libsass/docs/api-context-example.md +0 -45
  182. data/ext/libsass/docs/api-context-internal.md +0 -163
  183. data/ext/libsass/docs/api-context.md +0 -295
  184. data/ext/libsass/docs/api-doc.md +0 -215
  185. data/ext/libsass/docs/api-function-example.md +0 -67
  186. data/ext/libsass/docs/api-function-internal.md +0 -8
  187. data/ext/libsass/docs/api-function.md +0 -74
  188. data/ext/libsass/docs/api-importer-example.md +0 -112
  189. data/ext/libsass/docs/api-importer-internal.md +0 -20
  190. data/ext/libsass/docs/api-importer.md +0 -86
  191. data/ext/libsass/docs/api-value-example.md +0 -55
  192. data/ext/libsass/docs/api-value-internal.md +0 -76
  193. data/ext/libsass/docs/api-value.md +0 -154
  194. data/ext/libsass/docs/build-on-darwin.md +0 -27
  195. data/ext/libsass/docs/build-on-gentoo.md +0 -55
  196. data/ext/libsass/docs/build-on-windows.md +0 -139
  197. data/ext/libsass/docs/build-shared-library.md +0 -35
  198. data/ext/libsass/docs/build-with-autotools.md +0 -78
  199. data/ext/libsass/docs/build-with-makefiles.md +0 -68
  200. data/ext/libsass/docs/build-with-mingw.md +0 -107
  201. data/ext/libsass/docs/build-with-visual-studio.md +0 -90
  202. data/ext/libsass/docs/build.md +0 -97
  203. data/ext/libsass/docs/compatibility-plan.md +0 -48
  204. data/ext/libsass/docs/contributing.md +0 -17
  205. data/ext/libsass/docs/custom-functions-internal.md +0 -122
  206. data/ext/libsass/docs/dev-ast-memory.md +0 -223
  207. data/ext/libsass/docs/implementations.md +0 -56
  208. data/ext/libsass/docs/plugins.md +0 -47
  209. data/ext/libsass/docs/setup-environment.md +0 -68
  210. data/ext/libsass/docs/source-map-internals.md +0 -51
  211. data/ext/libsass/docs/trace.md +0 -26
  212. data/ext/libsass/docs/triage.md +0 -17
  213. data/ext/libsass/docs/unicode.md +0 -39
  214. data/ext/libsass/extconf.rb +0 -6
  215. data/ext/libsass/include/sass/version.h.in +0 -12
  216. data/ext/libsass/m4/.gitkeep +0 -0
  217. data/ext/libsass/m4/m4-ax_cxx_compile_stdcxx_11.m4 +0 -167
  218. data/ext/libsass/res/resource.rc +0 -35
  219. data/ext/libsass/script/bootstrap +0 -13
  220. data/ext/libsass/script/branding +0 -10
  221. data/ext/libsass/script/ci-build-libsass +0 -134
  222. data/ext/libsass/script/ci-build-plugin +0 -62
  223. data/ext/libsass/script/ci-install-compiler +0 -6
  224. data/ext/libsass/script/ci-install-deps +0 -20
  225. data/ext/libsass/script/ci-report-coverage +0 -42
  226. data/ext/libsass/script/spec +0 -5
  227. data/ext/libsass/script/tap-driver +0 -652
  228. data/ext/libsass/script/tap-runner +0 -1
  229. data/ext/libsass/script/test-leaks.pl +0 -103
  230. data/ext/libsass/src/GNUmakefile.am +0 -54
  231. data/ext/libsass/src/extend.cpp +0 -2130
  232. data/ext/libsass/src/extend.hpp +0 -86
  233. data/ext/libsass/src/functions.cpp +0 -2234
  234. data/ext/libsass/src/functions.hpp +0 -198
  235. data/ext/libsass/src/memory/SharedPtr.cpp +0 -114
  236. data/ext/libsass/src/memory/SharedPtr.hpp +0 -206
  237. data/ext/libsass/src/node.cpp +0 -319
  238. data/ext/libsass/src/node.hpp +0 -118
  239. data/ext/libsass/src/paths.hpp +0 -71
  240. data/ext/libsass/src/sass_util.cpp +0 -149
  241. data/ext/libsass/src/sass_util.hpp +0 -256
  242. data/ext/libsass/src/subset_map.cpp +0 -55
  243. data/ext/libsass/src/subset_map.hpp +0 -76
  244. data/ext/libsass/src/support/libsass.pc.in +0 -11
  245. data/ext/libsass/src/to_c.hpp +0 -39
  246. data/ext/libsass/test/test_node.cpp +0 -94
  247. data/ext/libsass/test/test_paths.cpp +0 -28
  248. data/ext/libsass/test/test_selector_difference.cpp +0 -25
  249. data/ext/libsass/test/test_specificity.cpp +0 -25
  250. data/ext/libsass/test/test_subset_map.cpp +0 -472
  251. data/ext/libsass/test/test_superselector.cpp +0 -69
  252. data/ext/libsass/test/test_unification.cpp +0 -31
  253. data/ext/libsass/version.sh +0 -10
  254. data/ext/libsass/win/libsass.sln +0 -39
  255. data/ext/libsass/win/libsass.sln.DotSettings +0 -9
  256. data/ext/libsass/win/libsass.targets +0 -118
  257. data/ext/libsass/win/libsass.vcxproj +0 -188
  258. data/ext/libsass/win/libsass.vcxproj.filters +0 -357
  259. data/lib/sassc/native/lib_c.rb +0 -21
  260. data/lib/tasks/libsass.rb +0 -33
@@ -1,55 +0,0 @@
1
- # this is merely a common Makefile multiple implementers can use
2
- # bigger files (in terms of compile time) tend to go to the top,
3
- # so they don't end up as the last compile unit when compiling
4
- # in parallel. But we also want to mix them a little too avoid
5
- # heavy RAM usage peaks. Other than that the order is arbitrary.
6
-
7
-
8
- SOURCES = \
9
- ast.cpp \
10
- node.cpp \
11
- context.cpp \
12
- constants.cpp \
13
- functions.cpp \
14
- color_maps.cpp \
15
- environment.cpp \
16
- ast_fwd_decl.cpp \
17
- bind.cpp \
18
- file.cpp \
19
- util.cpp \
20
- json.cpp \
21
- units.cpp \
22
- values.cpp \
23
- plugins.cpp \
24
- position.cpp \
25
- lexer.cpp \
26
- parser.cpp \
27
- prelexer.cpp \
28
- eval.cpp \
29
- expand.cpp \
30
- listize.cpp \
31
- cssize.cpp \
32
- extend.cpp \
33
- output.cpp \
34
- inspect.cpp \
35
- emitter.cpp \
36
- check_nesting.cpp \
37
- remove_placeholders.cpp \
38
- sass.cpp \
39
- sass_util.cpp \
40
- sass_values.cpp \
41
- sass_context.cpp \
42
- sass_functions.cpp \
43
- sass2scss.cpp \
44
- backtrace.cpp \
45
- operators.cpp \
46
- to_c.cpp \
47
- to_value.cpp \
48
- source_map.cpp \
49
- subset_map.cpp \
50
- error_handling.cpp \
51
- memory/SharedPtr.cpp \
52
- utf8_string.cpp \
53
- base64vlq.cpp
54
-
55
- CSOURCES = cencode.c
@@ -1,104 +0,0 @@
1
- LibSass - Sass compiler written in C++
2
- ======================================
3
-
4
- Currently maintained by Marcel Greter ([@mgreter]) and Michael Mifsud ([@xzyfer])
5
- Originally created by Aaron Leung ([@akhleung]) and Hampton Catlin ([@hcatlin])
6
-
7
- [![Unix CI](https://travis-ci.org/sass/libsass.svg?branch=master)](https://travis-ci.org/sass/libsass "Travis CI")
8
- [![Windows CI](https://ci.appveyor.com/api/projects/status/github/sass/libsass?svg=true)](https://ci.appveyor.com/project/sass/libsass/branch/master "Appveyor CI")
9
- [![Coverage Status](https://img.shields.io/coveralls/sass/libsass.svg)](https://coveralls.io/r/sass/libsass?branch=feature%2Ftest-travis-ci-3 "Code coverage of spec tests")
10
- [![Percentage of issues still open](http://isitmaintained.com/badge/open/sass/libsass.svg)](http://isitmaintained.com/project/sass/libsass "Percentage of issues still open")
11
- [![Average time to resolve an issue](http://isitmaintained.com/badge/resolution/sass/libsass.svg)](http://isitmaintained.com/project/sass/libsass "Average time to resolve an issue")
12
- [![Bountysource](https://www.bountysource.com/badge/tracker?tracker_id=283068)](https://www.bountysource.com/trackers/283068-libsass?utm_source=283068&utm_medium=shield&utm_campaign=TRACKER_BADGE "Bountysource")
13
- [![Join us](https://libsass-slack.herokuapp.com/badge.svg)](https://libsass-slack.herokuapp.com/ "Slack communication channels")
14
-
15
-
16
- [LibSass](https://github.com/sass/libsass "LibSass GitHub Project") is just a library!
17
- If you want to use LibSass to compile Sass, you need an implementer. Some
18
- implementations are only bindings into other programming languages. But most also
19
- ship with a command line interface (CLI) you can use directly. There is also
20
- [SassC](https://github.com/sass/sassc), which is the official lightweight
21
- CLI tool built by the same people as LibSass.
22
-
23
- ### Excerpt of "sanctioned" implementations:
24
-
25
- - https://github.com/sass/node-sass (Node.js)
26
- - https://github.com/sass/perl-libsass (Perl)
27
- - https://github.com/sass/libsass-python (Python)
28
- - https://github.com/wellington/go-libsass (Go)
29
- - https://github.com/sass/sassc-ruby (Ruby)
30
- - https://github.com/sass/libsass-net (C#)
31
- - https://github.com/medialize/sass.js (JS)
32
- - https://github.com/bit3/jsass (Java)
33
-
34
- This list does not say anything about the quality of either the listed or not listed [implementations](docs/implementations.md)!
35
- The authors of the listed projects above are just known to work regularly together with LibSass developers.
36
-
37
- About
38
- -----
39
-
40
- LibSass is a C++ port of the original Ruby Sass CSS compiler with a [C API](docs/api-doc.md).
41
- We coded LibSass with portability and efficiency in mind. You can expect LibSass to be a lot
42
- faster than Ruby Sass and on par or faster than the best alternative CSS compilers around.
43
-
44
- Developing
45
- ----------
46
-
47
- As noted above, the LibSass repository does not contain any binaries or other way to execute
48
- LibSass. Therefore, you need an implementer to develop LibSass. Easiest is to start with
49
- the official [SassC](http://github.com/sass/sassc) CLI wrapper. It is *guaranteed* to compile
50
- with the latest code in LibSass master, since it is also used in the CI process. There is no
51
- limitation here, as you may use any other LibSass implementer to test your LibSass branch!
52
-
53
- Testing
54
- -------
55
-
56
- Since LibSass is a pure library, tests are run through the [Sass-Spec](https://github.com/sass/sass-spec)
57
- project using the [SassC](http://github.com/sass/sassc) CLI wrapper. To run the tests against LibSass while
58
- developing, you can run `./script/spec`. This will clone SassC and Sass-Spec under the project folder and
59
- then run the Sass-Spec test suite. You may want to update the clones to ensure you have the latest version.
60
- Note that the scripts in the `./script` folder are mainly intended for our CI needs.
61
-
62
- Building
63
- --------
64
-
65
- To build LibSass you need GCC 4.6+ or Clang/LLVM. If your OS is older, you may need to upgrade
66
- them first (or install clang as an alternative). On Windows, you need MinGW with GCC 4.6+ or VS 2013
67
- Update 4+. It is also possible to build LibSass with Clang/LLVM on Windows with various build chains
68
- and/or command line interpreters.
69
-
70
- See the [build docs for further instructions](docs/build.md)!
71
-
72
- Compatibility
73
- -------------
74
-
75
- Current LibSass 3.4 should be compatible with Sass 3.4. Please refer to the [sass compatibility
76
- page](http://sass-compatibility.github.io/) for a more detailed comparison. But note that there
77
- are still a few incomplete edges which we are aware of. Otherwise LibSass has reached a good level
78
- of stability, thanks to our ever growing [Sass-Spec test suite](https://github.com/sass/sass-spec).
79
-
80
- About Sass
81
- ----------
82
-
83
- Sass is a CSS pre-processor language to add on exciting, new, awesome features to CSS. Sass was
84
- the first language of its kind and by far the most mature and up to date codebase.
85
-
86
- Sass was originally conceived of by the co-creator of this library, Hampton Catlin ([@hcatlin]).
87
- Most of the language has been the result of years of work by Natalie Weizenbaum ([@nex3]) and
88
- Chris Eppstein ([@chriseppstein]).
89
-
90
- For more information about Sass itself, please visit http://sass-lang.com
91
-
92
- Initial development of LibSass by Aaron Leung and Hampton Catlin was supported by [Moovweb](http://www.moovweb.com).
93
-
94
- Licensing
95
- ---------
96
-
97
- Our [MIT license](LICENSE) is designed to be as simple and liberal as possible.
98
-
99
- [@hcatlin]: https://github.com/hcatlin
100
- [@akhleung]: https://github.com/akhleung
101
- [@chriseppstein]: https://github.com/chriseppstein
102
- [@nex3]: https://github.com/nex3
103
- [@mgreter]: https://github.com/mgreter
104
- [@xzyfer]: https://github.com/xzyfer
@@ -1,10 +0,0 @@
1
- Serious about security
2
- ======================
3
-
4
- The LibSass team recognizes the important contributions the security research
5
- community can make. We therefore encourage reporting security issues with the
6
- code contained in this repository.
7
-
8
- If you believe you have discovered a security vulnerability, please report it at
9
- https://hackerone.com/libsass instead of GitHub.
10
-
@@ -1,91 +0,0 @@
1
- os: Visual Studio 2013
2
-
3
- environment:
4
- CTEST_OUTPUT_ON_FAILURE: 1
5
- ruby_version: 22-x64
6
- TargetPath: sassc/bin/sassc.exe
7
- matrix:
8
- - Compiler: msvc
9
- Config: Release
10
- Platform: Win32
11
- - Compiler: msvc
12
- Config: Debug
13
- Platform: Win32
14
- - Compiler: msvc
15
- Config: Release
16
- Platform: Win64
17
- - Compiler: mingw
18
- Build: static
19
- - Compiler: mingw
20
- Build: shared
21
-
22
- cache:
23
- - C:\Ruby%ruby_version%\lib\ruby\gems
24
- - C:\mingw64
25
-
26
- install:
27
- - git clone https://github.com/sass/sassc.git
28
- - git clone https://github.com/sass/sass-spec.git
29
- - set PATH=C:\Ruby%ruby_version%\bin;%PATH%
30
- - ps: |
31
- if(!(gem which minitest 2>$nul)) { gem install minitest --no-ri --no-rdoc }
32
- if ($env:Compiler -eq "mingw" -AND -Not (Test-Path "C:\mingw64")) {
33
- # Install MinGW.
34
- $file = "x86_64-4.9.2-release-win32-seh-rt_v4-rev3.7z"
35
- wget https://bintray.com/artifact/download/drewwells/generic/$file -OutFile $file
36
- &7z x -oC:\ $file > $null
37
- }
38
- - set PATH=C:\mingw64\bin;%PATH%
39
- - set CC=gcc
40
-
41
- build_script:
42
- - ps: |
43
- if ($env:Compiler -eq "mingw") {
44
- mingw32-make -j4 sassc
45
- } else {
46
- msbuild /m:4 /p:"Configuration=$env:Config;Platform=$env:Platform" sassc\win\sassc.sln
47
- }
48
-
49
- # print the branding art
50
- mv script/branding script/branding.ps1
51
- script/branding.ps1
52
-
53
- # print the version info
54
- &$env:TargetPath -v
55
- ruby -v
56
-
57
- test_script:
58
- - ps: |
59
- $PRNR = $env:APPVEYOR_PULL_REQUEST_NUMBER
60
- if ($PRNR) {
61
- echo "Fetching info for PR $PRNR"
62
- wget https://api.github.com/repos/sass/libsass/pulls/$PRNR -OutFile pr.json
63
- $json = cat pr.json -Raw
64
- $SPEC_PR = [regex]::match($json,'sass\/sass-spec(#|\/pull\/)([0-9]+)').Groups[2].Value
65
- if ($SPEC_PR) {
66
- echo "Checkout sass spec PR $SPEC_PR"
67
- git -C sass-spec fetch -q -u origin pull/$SPEC_PR/head:ci-spec-pr-$SPEC_PR
68
- git -C sass-spec checkout -q --force ci-spec-pr-$SPEC_PR
69
- }
70
- }
71
- $env:TargetPath = Join-Path $pwd.Path $env:TargetPath
72
- If (Test-Path "$env:TargetPath") {
73
- ruby sass-spec/sass-spec.rb -V 3.5 --probe-todo --impl libsass -c $env:TargetPath -s sass-spec/spec
74
- if(-not($?)) {
75
- echo "sass-spec tests failed"
76
- exit 1
77
- }
78
- } else {
79
- echo "spec runner not found (compile error?)"
80
- exit 1
81
- }
82
- Write-Host "Explicitly testing the case when cwd has Cyrillic characters: " -nonewline
83
- # See comments in gh-1774 for details.
84
- cd sass-spec/spec/libsass/Sáss-UŢF8/
85
- &$env:TargetPath ./input.scss 2>&1>$null
86
- if(-not($?)) {
87
- echo "Failed!"
88
- exit 1
89
- } else {
90
- echo "Success!"
91
- }
@@ -1,138 +0,0 @@
1
- # -*- Autoconf -*-
2
- # Process this file with autoconf to produce a configure script.
3
-
4
- AC_PREREQ([2.61])
5
-
6
- AC_INIT([libsass], m4_esyscmd_s([./version.sh]), [support@moovweb.com])
7
- AC_CONFIG_SRCDIR([src/ast.hpp])
8
- AC_CONFIG_MACRO_DIR([m4])
9
- AC_CONFIG_HEADERS([src/config.h])
10
- AC_CONFIG_FILES([include/sass/version.h])
11
- AC_CONFIG_AUX_DIR([script])
12
- # These are flags passed to automake
13
- # Though they look like gcc flags!
14
- AM_INIT_AUTOMAKE([foreign parallel-tests -Wall])
15
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([no])])
16
-
17
- # Checks for programs.
18
- AC_PROG_CC
19
- AC_PROG_CXX
20
- AC_LANG_PUSH([C])
21
- AC_LANG_PUSH([C++])
22
- AC_GNU_SOURCE
23
- # Check fails on Travis, but it works fine
24
- # AX_CXX_COMPILE_STDCXX_11([ext],[optional])
25
- AC_CHECK_TOOL([AR], [ar], [false])
26
- AC_CHECK_TOOL([DLLTOOL], [dlltool], [false])
27
- AC_CHECK_TOOL([DLLWRAP], [dllwrap], [false])
28
- AC_CHECK_TOOL([WINDRES], [windres], [false])
29
- m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
30
- LT_INIT([dlopen])
31
-
32
- # Checks for header files.
33
- AC_CHECK_HEADERS([unistd.h])
34
-
35
- # Checks for typedefs, structures, and compiler characteristics.
36
- AC_TYPE_SIZE_T
37
-
38
- # Checks for library functions.
39
- AC_FUNC_MALLOC
40
- AC_CHECK_FUNCS([floor getcwd strtol])
41
-
42
- # Checks for testing.
43
- AC_ARG_ENABLE(tests, AS_HELP_STRING([--enable-tests], [enable testing the build]),
44
- [enable_tests="$enableval"], [enable_tests=no])
45
-
46
- AS_CASE([$host], [*-*-mingw*], [is_mingw32=yes], [is_mingw32=no])
47
- AM_CONDITIONAL(COMPILER_IS_MINGW32, test "x$is_mingw32" = "xyes")
48
-
49
- dnl The dlopen() function is in the C library for *BSD and in
50
- dnl libdl on GLIBC-based systems
51
- if test "x$is_mingw32" != "xyes"; then
52
- AC_SEARCH_LIBS([dlopen], [dl dld], [], [
53
- AC_MSG_ERROR([unable to find the dlopen() function])
54
- ])
55
- fi
56
-
57
- if test "x$enable_tests" = "xyes"; then
58
- AC_PROG_CC
59
- AC_PROG_AWK
60
- # test need minitest gem
61
- AC_PATH_PROG(RUBY, [ruby])
62
- AC_PATH_PROG(TAPOUT, [tapout])
63
- AC_REQUIRE_AUX_FILE([tap-driver])
64
- AC_REQUIRE_AUX_FILE([tap-runner])
65
- AC_ARG_WITH(sassc-dir,
66
- AS_HELP_STRING([--with-sassc-dir=<dir>], [specify directory of sassc sources for testing (default: sassc)]),
67
- [sassc_dir="$withval"], [sassc_dir="sassc"])
68
- AC_CHECK_FILE([$sassc_dir/sassc.c], [], [
69
- AC_MSG_ERROR([Unable to find sassc directory.
70
- You must clone the sassc repository in this directory or specify
71
- the --with-sassc-dir=<dir> argument.
72
- ])
73
- ])
74
- SASS_SASSC_PATH=$sassc_dir
75
- AC_SUBST(SASS_SASSC_PATH)
76
-
77
- AC_ARG_WITH(sass-spec-dir,
78
- AS_HELP_STRING([--with-sass-spec-dir=<dir>], [specify directory of sass-spec for testing (default: sass-spec)]),
79
- [sass_spec_dir="$withval"], [sass_spec_dir="sass-spec"])
80
- AC_CHECK_FILE([$sass_spec_dir/sass-spec.rb], [], [
81
- AC_MSG_ERROR([Unable to find sass-spec directory.
82
- You must clone the sass-spec repository in this directory or specify
83
- the --with-sass-spec-dir=<dir> argument.
84
- ])
85
- ])
86
- # Automake doesn't like its tests in an absolute path, so we make it relative.
87
- case $sass_spec_dir in
88
- /*)
89
- SASS_SPEC_PATH=`$RUBY -e "require 'pathname'; puts Pathname.new('$sass_spec_dir').relative_path_from(Pathname.new('$PWD')).to_s"`
90
- ;;
91
- *)
92
- SASS_SPEC_PATH="$sass_spec_dir"
93
- ;;
94
- esac
95
- AC_SUBST(SASS_SPEC_PATH)
96
-
97
- # TODO: Remove this when automake requirements are 1.12+
98
- AC_MSG_CHECKING([whether we can use TAP mode])
99
- tmp=`$AWK '/TEST_LOG_DRIVER/' $srcdir/GNUmakefile.in`
100
- if test "x$tmp" != "x"; then
101
- use_tap=yes
102
- else
103
- use_tap=no
104
- fi
105
- AC_MSG_RESULT([$use_tap])
106
-
107
- fi
108
-
109
- AM_CONDITIONAL(ENABLE_TESTS, test "x$enable_tests" = "xyes")
110
- AM_CONDITIONAL(USE_TAP, test "x$use_tap" = "xyes")
111
-
112
- AC_ARG_ENABLE([coverage],
113
- [AS_HELP_STRING([--enable-coverage],
114
- [enable coverage report for test suite])],
115
- [enable_cov=$enableval],
116
- [enable_cov=no])
117
-
118
- if test "x$enable_cov" = "xyes"; then
119
-
120
- AC_CHECK_PROG(GCOV, gcov, gcov)
121
-
122
- # Remove all optimization flags from C[XX]FLAGS
123
- changequote({,})
124
- CFLAGS=`echo "$CFLAGS -O1 -fno-omit-frame-pointer" | $SED -e 's/-O[0-9]*//g'`
125
- CXXFLAGS=`echo "$CXXFLAGS -O1 -fno-omit-frame-pointer" | $SED -e 's/-O[0-9]*//g'`
126
- changequote([,])
127
-
128
- AC_SUBST(GCOV)
129
- fi
130
-
131
- AM_CONDITIONAL(ENABLE_COVERAGE, test "x$enable_cov" = "xyes")
132
-
133
- AC_SUBST(PACKAGE_VERSION)
134
-
135
- AC_MSG_NOTICE([Building libsass ($VERSION)])
136
-
137
- AC_CONFIG_FILES([GNUmakefile src/GNUmakefile src/support/libsass.pc])
138
- AC_OUTPUT
@@ -1,66 +0,0 @@
1
- Name: libsass
2
- Version: %{version}
3
- Release: 1%{?dist}
4
- Summary: A C/C++ implementation of a Sass compiler
5
-
6
- License: MIT
7
- URL: http://libsass.org
8
- Source0: %{name}-%{version}.tar.gz
9
-
10
- BuildRequires: gcc-c++ >= 4.7
11
- BuildRequires: autoconf
12
- BuildRequires: automake
13
- BuildRequires: libtool
14
-
15
-
16
- %description
17
- LibSass is a C/C++ port of the Sass engine. The point is to be simple, fast, and easy to integrate.
18
-
19
- %package devel
20
- Summary: Development files for %{name}
21
- Requires: %{name}%{?_isa} = %{version}-%{release}
22
-
23
-
24
- %description devel
25
- The %{name}-devel package contains libraries and header files for
26
- developing applications that use %{name}.
27
-
28
-
29
- %prep
30
- %setup -q
31
- autoreconf --force --install
32
-
33
-
34
- %build
35
- %configure --disable-static \
36
- --disable-tests \
37
- --enable-shared
38
-
39
- make %{?_smp_mflags}
40
-
41
-
42
- %install
43
- %make_install
44
- find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
45
-
46
-
47
- %post -p /sbin/ldconfig
48
-
49
- %postun -p /sbin/ldconfig
50
-
51
-
52
- %files
53
- %doc Readme.md LICENSE
54
- %{_libdir}/*.so.*
55
-
56
- %files devel
57
- %doc
58
- %{_includedir}/*
59
- %{_libdir}/*.so
60
- %{_libdir}/pkgconfig/*.pc
61
-
62
-
63
- %changelog
64
- * Tue Feb 10 2015 Gawain Lynch <gawain.lynch@gmail.com> - 3.1.0-1
65
- - Initial SPEC file
66
-