diff --git a/.gitignore b/.gitignore index 57e5e2b..518aee9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,9 @@ -/rmagick-*.gem -/rubygem-rmagick-*-full.tar.gz +/rmagick-2.13.4.gem +/rmagick-2.14.0.gem +/rmagick-2.15.0.gem +/rmagick-2.15.1.gem +/rmagick-2.15.2.gem +/rmagick-2.15.3.gem +/rmagick-2.15.4.gem +/rmagick-2.16.0.gem +/rmagick-3.2.0.gem diff --git a/rmagick-create-full-tarball.sh b/rmagick-create-full-tarball.sh deleted file mode 100644 index 4a60f3a..0000000 --- a/rmagick-create-full-tarball.sh +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash - -if [ $# -lt 1 ] -then - echo "$0 " - exit 1 -fi - -preserve_timestamps() -{ - while read f - do - unixtime=$(git log -n 1 --pretty='%ct' -- $f) - touch -d "@${unixtime}" $f - done < <(git ls-tree -r --name-only HEAD) - -} - -set -x -set -e - -CURRDIR=$(pwd) - -TMPDIRPATH=$(mktemp -d /var/tmp/rmagick-tar-XXXXXX) -pushd $TMPDIRPATH - -NAME=rmagick -VERSION=$1 - -VERSION_TAG=$( -echo $VERSION | sed -e 's|\.| |g' | while read major minor release -do - echo -n -e "${major}-${minor}-${release}" -done -) - - -VERSION_TAG=RMagick_${VERSION_TAG} - -git clone https://github.com/rmagick/$NAME.git -pushd ${NAME} -git reset --hard ${VERSION_TAG} -preserve_timestamps -popd - -ln -sf ${NAME} ${NAME}-${VERSION} -tar czf ${CURRDIR}/rubygem-${NAME}-${VERSION}-full.tar.gz ${NAME}-${VERSION}/./ - -popd - -rm -rf $TMPDIRPATH diff --git a/rubygem-rmagick.spec b/rubygem-rmagick.spec index 5d0da22..17e85c2 100644 --- a/rubygem-rmagick.spec +++ b/rubygem-rmagick.spec @@ -2,43 +2,31 @@ %define setIMver() \ %if 0%{?fedora}%{?rhel} == %1 \ -BuildRequires: (ImageMagick-devel >= %2 with ImageMagick-devel < %3)\ -Requires: (ImageMagick%{?_isa} >= %2 with ImageMagick%{?_isa} < %3)\ +BuildRequires: ImageMagick-devel = %2\ +Requires: ImageMagick%{?_isa} = %2\ %endif \ %{nil} Name: rubygem-%{gem_name} -Version: 6.1.5 -Release: 2%{?dist} +Version: 3.2.0 +Release: 6%{?dist} Summary: Ruby binding to ImageMagick -# SPDX confirmed License: MIT URL: https://github.com/rmagick/rmagick Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem -# %%{SOURCE2} %%{version} -Source1: rubygem-%{gem_name}-%{version}-full.tar.gz -Source2: rmagick-create-full-tarball.sh -BuildRequires: gcc-c++ +BuildRequires: gcc BuildRequires: rubygems-devel BuildRequires: ruby-devel -BuildRequires: rubygem(pkg-config) -BuildRequires: rubygem(observer) BuildRequires: rubygem(test-unit) +BuildRequires: rubygem(minitest4) BuildRequires: rubygem(rspec) -BuildRequires: rubygem(pry) -# Due to ext/RMagick/rmmain.cpp test_Magick_version(), for now +# Due to test/RMagick/rmmain.c test_Magick_version(), for now # we specify the exact version for ImageMagick -# -# With rmagick <= 5.5.0, ImageMagick X.Y.Z should all match, -# with rmagick >= 6.0.0, ImageMagick X.Y should match. %if 0%{?fedora} -%setIMver 45 1:7.1 1:7.2 -%setIMver 44 1:7.1 1:7.2 -%setIMver 43 1:7.1 1:7.2 -%setIMver 42 1:7.1 1:7.2 -%setIMver 41 1:7.1 1:7.2 +%setIMver 33 1:6.9.11.27 +%setIMver 32 1:6.9.11.27 %endif Obsoletes: ruby-RMagick < 2.13.2 @@ -61,14 +49,15 @@ Provides: ruby-RMagick-doc = %{version}-%{release} Documentation for %{name}. %prep -%setup -q -T -n %{gem_name}-%{version} -b 1 +gem unpack %{SOURCE0} +%setup -q -D -T -n %{gem_name}-%{version} gem spec %{SOURCE0} -l --ruby > %{gem_name}.gemspec # permission find . -name \*.rb -or -name \*.gif | xargs chmod ugo-x %build -export MAKE="make %{?_smp_mflags}" +export CFLAGS="%{optflags}" # Make sure that .so is to be created newly rm -rf ./%{gem_extdir_mri} gem build %{gem_name}.gemspec @@ -79,10 +68,6 @@ gem build %{gem_name}.gemspec mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ -cp -a \ - doc \ - examples \ - %{buildroot}%{gem_instdir}/ mkdir -p %{buildroot}%{gem_extdir_mri} cp -a .%{gem_extdir_mri}/{gem.build_complete,*.so} \ @@ -91,13 +76,10 @@ cp -a .%{gem_extdir_mri}/{gem.build_complete,*.so} \ pushd %{buildroot}%{gem_instdir} rm -rf \ .editorconfig \ - .devcontainer \ - .github \ .gitignore .[^.]*.yml \ wercker.yml \ .rspec \ .simplecov \ - .yardopts \ Doxyfile Gemfile Rakefile \ before_*.sh \ doc/.cvsignore \ @@ -112,29 +94,43 @@ rm -rf \ popd %check +pushd .%{gem_instdir} export RUBYLIB=$(pwd):$(pwd)/lib:$(pwd)/test:%{buildroot}%{gem_extdir_mri} -export COVERAGE=false -rm -rf tmp -mkdir tmp +# See https://github.com/rmagick/rmagick/pull/854 +# Remove taint logic which will be deprecated in Ruby (2.7) +%if 0%{?fedora} >= 32 +env LANG=C \ + grep -rl tainted test/ | \ + xargs sed -i -e '\@tainted@d' +%endif + +# ??? remove simplecov +sed -i test/test_all_basic.rb \ + -e '\@simplecov@s|require|#require|' + +# test_image@Draw.rb: skip failing composite operation +sed -i test/lib/internal/Draw.rb \ + -e 's|Magick::NoCompositeOp|Magick::NoCompositeOp, Magick::BlurCompositeOp|' + +ruby \ + -e "gem 'minitest', '~> 4' ; require 'test/test_all_basic.rb'" \ + %{nil} rspec spec/ -find spec -name \*.skip | while read f -do - mv $f ${f%.skip} -done +popd %files %dir %{gem_instdir}/ %license %{gem_instdir}/LICENSE %doc %{gem_instdir}/CONTRIBUTING.md %doc %{gem_instdir}/CHANGELOG.md -%doc %{gem_instdir}/README.md +%doc %{gem_instdir}/README.textile %{gem_libdir}/ +%{gem_instdir}/deprecated/ %{gem_extdir_mri}/ -%{gem_instdir}/sig/ %exclude %{gem_cache} %{gem_spec} @@ -145,183 +141,16 @@ done %doc %{gem_instdir}/examples/ %changelog -* Thu Jan 08 2026 Mamoru TASAKA - 6.1.5-2 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_4.0 +* Wed Aug 12 2020 Mamoru TASAKA - 3.2.0-6 +- skip test for failing composite operation -* Sun Dec 28 2025 Mamoru TASAKA - 6.1.5-1 -- 6.1.5 - -* Wed Oct 29 2025 Mamoru TASAKA - 6.1.4-2 -- Apply upstream patch for ruby3_5 Ractor change for testsuite - -* Sun Aug 24 2025 Mamoru TASAKA - 6.1.4-1 -- 6.1.4 - -* Sun Aug 17 2025 Mamoru TASAKA - 6.1.3-1 -- 6.1.3 - -* Fri Jul 25 2025 Fedora Release Engineering - 6.1.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Sun Jul 20 2025 Mamoru TASAKA - 6.1.2-1 -- 6.1.2 - -* Sun Feb 02 2025 Mamoru TASAKA - 6.1.1-1 -- 6.1.1 - -* Sun Jan 19 2025 Mamoru TASAKA - 6.1.0-1 -- 6.1.0 - -* Sat Jan 18 2025 Fedora Release Engineering - 6.0.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Tue Jan 07 2025 Mamoru TASAKA - 6.0.1-4 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.4 - -* Sat Nov 02 2024 Mamoru TASAKA - 6.0.1-3 -- Add BR: rubygem(observer) explicitly - -* Fri Jul 19 2024 Fedora Release Engineering - 6.0.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Thu May 16 2024 Mamoru TASAKA - 6.0.1-1 -- 6.0.1 - -* Fri May 03 2024 Mamoru TASAKA - 6.0.0-1 -- 6.0.0 - -* Mon Apr 08 2024 Mamoru TASAKA - 5.5.0-1 -- 5.5.0 - -* Fri Feb 16 2024 Mamoru TASAKA - 5.4.4-1 -- 5.4.4 - -* Wed Feb 14 2024 Mamoru TASAKA - 5.4.3-1 -- 5.4.3 - -* Tue Feb 13 2024 Mamoru TASAKA - 5.4.2-1 -- 5.4.2 - -* Tue Feb 06 2024 Mamoru TASAKA - 5.4.1-1 -- 5.4.1 - -* Mon Feb 05 2024 Mamoru TASAKA - 5.4.0-1 -- 5.4.0 - -* Fri Jan 26 2024 Fedora Release Engineering - 5.3.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Mamoru TASAKA - 5.3.0-3 -- Backport upstream patch to fix test with ImageMagick 7.1.1-26 - -* Wed Jan 03 2024 Mamoru TASAKA - 5.3.0-2 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 - -* Sun Jul 23 2023 Mamoru TASAKA - 5.3.0-1 -- 5.3.0 - -* Fri Jul 21 2023 Fedora Release Engineering - 5.2.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sun Apr 30 2023 Mamoru TASAKA - 5.2.0-3 -- SPDX migration -- Fix crash on ImageList#write with animation gif (upstream bug 1379) - -* Thu Mar 23 2023 Mamoru TASAKA - 5.2.0-2 -- F-39: Rebuild against ImageMagick 7.1.1 - -* Mon Mar 13 2023 Mamoru TASAKA - 5.2.0-1 -- 5.2.0 - -* Fri Jan 20 2023 Fedora Release Engineering - 5.1.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jan 05 2023 Neal Gompa - 5.1.0-3 -- F-38+: Rebuild for ImageMagick 7 - -* Wed Jan 04 2023 Mamoru TASAKA - 5.1.0-2 -- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 - -* Thu Nov 17 2022 Mamoru TASAKA - 5.1.0-1 -- 5.1.0 - -* Sun Oct 9 2022 Mamoru TASAKA - 5.0.0-1 -- 5.0.0 - -* Mon Sep 26 2022 Mamoru TASAKA - 4.3.0-1 -- 4.3.0 - -* Sat Jul 23 2022 Fedora Release Engineering - 4.2.6-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sun Jul 17 2022 Mamoru TASAKA - 4.2.6-1 -- 4.2.6 - -* Wed Apr 6 2022 Mamoru TASAKA - 4.2.5-1 -- 4.2.5 - -* Wed Jan 26 2022 Mamoru TASAKA - 4.2.4-3 -- F-36: rebuild against ruby31 - -* Fri Jan 21 2022 Fedora Release Engineering - 4.2.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Tue Dec 28 2021 Mamoru TASAKA - 4.2.4-1 -- 4.2.4 - -* Sat Dec 04 2021 Mamoru TASAKA - 4.2.3-5.1 -- Rebuild for tag issue - -* Thu Nov 25 2021 Mamoru TASAKA - 4.2.3-5 -- Use rich boolean dependency - -* Mon Nov 22 2021 Mamoru TASAKA - 4.2.3-4 -- Rebuild against new ImageMagick - -* Tue Nov 2 2021 Mamoru TASAKA - 4.2.3-3 -- Rebuild against new ImageMagick - -* Sat Oct 16 2021 Mamoru TASAKA - 4.2.3-2 -- Rebuild against new ImageMagick - -* Tue Oct 12 2021 Mamoru TASAKA - 4.2.3-1 -- 4.2.3 - -* Fri Jul 23 2021 Fedora Release Engineering - 4.2.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Feb 24 2021 Mamoru TASAKA - 4.2.2-1 -- 4.2.2 - -* Mon Feb 8 2021 Mamoru TASAKA - 4.2.1-1 -- 4.2.1 - -* Sun Feb 7 2021 Mamoru TASAKA - 4.2.0-1 -- 4.2.0 - -* Wed Jan 27 2021 Fedora Release Engineering - 4.1.2-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jan 06 2021 Mamoru TASAKA - 4.1.2-6 -- F-34: rebuild against ruby 3.0 - -* Tue Aug 11 2020 Michael Cronenworth - 4.1.2-5 +* Tue Aug 11 2020 Michael Cronenworth - 3.2.0-6 - Rebuild for ImageMagick 6.9.11-27 +- Enable test cases -* Wed Jul 29 2020 Fedora Release Engineering - 4.1.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Thu Jun 25 2020 Michael Cronenworth - 4.1.2-3 +* Thu Jun 04 2020 Michael Cronenworth - 3.2.0-5 - Rebuild for ImageMagick 6.9.11-22 - -* Wed Jun 03 2020 Michael Cronenworth - 4.1.2-2 -- Rebuild for ImageMagick 6.9.11-16 - -* Mon Apr 20 2020 Mamoru TASAKA - 4.1.2-1 -- 4.1.2 - -* Fri Feb 14 2020 Mamoru TASAKA - 4.0.0-1 -- 4.0.0 +- Disable test cases * Thu Jan 30 2020 Fedora Release Engineering - 3.2.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/sources b/sources index 6a164e1..5042295 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (rmagick-6.1.5.gem) = 15157dda3185e8677c08d9b33564d1c85e3c3573ad9f6ab2358c32ec8a790eb2aa765cde095f98eb500cd818e3b71535dd289524eb35c9c5e721be3af4b1ba18 -SHA512 (rubygem-rmagick-6.1.5-full.tar.gz) = ce65bacd8e775fc4751784d427ab52a5b936ca5a465751d63380d42e0928911389f3388474c936eeb59d93d242c9923240168911705c1243b8e5d195d258fd8a +SHA512 (rmagick-3.2.0.gem) = f6f15b013699da5c61e83ecf4ca16d64e7e2f447dc721c7db55cad6b880f9805eb8bdcbf70aef3e30a82f38bbab8ca093d8c6d2ce761cde4f47209e3f99a9f16