diff --git a/00-disable-broken-tests.patch b/00-disable-broken-tests.patch new file mode 100644 index 0000000..324c041 --- /dev/null +++ b/00-disable-broken-tests.patch @@ -0,0 +1,42 @@ +diff --git a/test/engine_test.rb b/test/engine_test.rb +index 29681d7..27c8b0c 100644 +--- a/test/engine_test.rb ++++ b/test/engine_test.rb +@@ -80,20 +80,6 @@ CSS + assert_equal expected_output, output + end + +- def test_precision_not_specified +- template = <<-SCSS +-$var: 1; +-.foo { +- baz: $var / 3; } +-SCSS +- expected_output = <<-CSS +-.foo { +- baz: 0.3333333333; } +-CSS +- output = Engine.new(template).render +- assert_equal expected_output, output +- end +- + def test_dependency_filenames_are_reported + base = temp_dir("").to_s + +diff --git a/test/native_test.rb b/test/native_test.rb +index 876f56c..914416e 100644 +--- a/test/native_test.rb ++++ b/test/native_test.rb +@@ -9,12 +9,6 @@ module SassC + SAMPLE_CSS_OUTPUT = ".hi {\n width: 30px; }\n" + BAD_SASS_STRING = "$size = 30px;" + +- class General < MiniTest::Test +- def test_it_reports_the_libsass_version +- assert_equal "3.6.4", Native.version +- end +- end +- + class DataContext < MiniTest::Test + def teardown + Native.delete_data_context(@data_context) if @data_context diff --git a/rubygem-sassc.spec b/rubygem-sassc.spec new file mode 100644 index 0000000..bbaeb12 --- /dev/null +++ b/rubygem-sassc.spec @@ -0,0 +1,101 @@ +%global gem_name sassc +%define debug_package %{nil} + +Name: rubygem-%{gem_name} +Summary: Use libsass with Ruby! +Version: 2.4.0 +Release: 1 +License: MIT + +URL: https://github.com/sass/sassc-ruby +Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem +Patch0: 00-disable-broken-tests.patch + +BuildRequires: ruby-devel >= 2.0.0 +BuildRequires: rubygems-devel +BuildRequires: ruby(release) + +# test requirements +BuildRequires: libsass +BuildRequires: rubygem(ffi) +BuildRequires: rubygem(minitest) +BuildRequires: rubygem(minitest-around) +BuildRequires: rubygem(test_construct) + +Requires: libsass + +%description +Use libsass with Ruby! + + +%package doc +Summary: Documentation for %{name} +Requires: %{name} = %{version}-%{release} +BuildArch: noarch + +%description doc +Documentation for %{name}. + + +%prep +%autosetup -n %{gem_name}-%{version} -p1 + +# disable building bundled libsass +sed -i "/s\.extensions/d" ../%{gem_name}-%{version}.gemspec + + +%build +# use libsass.so.1 from host +sed -i "s/libsass\.\#{dl_ext}/libsass\.\#{dl_ext}\.1/" lib/sassc/native.rb +sed -i "s!__dir__!\"%{_libdir}\"!" lib/sassc/native.rb + +gem build ../%{gem_name}-%{version}.gemspec + +%gem_install + + +%install +mkdir -p %{buildroot}%{gem_dir} +cp -a .%{gem_dir}/* %{buildroot}%{gem_dir}/ + + +%check +pushd .%{gem_instdir} +# Pry dependency is not really necessary. +sed -i '/require "pry"/ s/^/#/' test/test_helper.rb + +ruby -Ilib -e 'Dir.glob "./test/**_test.rb", &method(:require)' +popd + + +%files +%license %{gem_instdir}/LICENSE.txt + +%{gem_libdir} +%{gem_spec} + +%dir %{gem_instdir} + +%exclude %{gem_instdir}/ext/ +%exclude %{gem_instdir}/sassc.gemspec +%exclude %{gem_instdir}/.gitignore +%exclude %{gem_instdir}/.gitmodules +%exclude %{gem_instdir}/.travis.yml + +%exclude %{gem_cache} + +%files doc +%doc %{gem_docdir} +%doc %{gem_instdir}/CHANGELOG.md +%doc %{gem_instdir}/CODE_OF_CONDUCT.md +%doc %{gem_instdir}/README.md + +%{gem_instdir}/Gemfile +%{gem_instdir}/Rakefile +%{gem_instdir}/test/ + + +%changelog +* Wed Mar 2 2022 caodongxia - 2.4.0-1 +- Init package + diff --git a/sassc-2.4.0.gem b/sassc-2.4.0.gem new file mode 100644 index 0000000..a8e2e1f Binary files /dev/null and b/sassc-2.4.0.gem differ