[rubygem-cairo] Initial import

Mamoru Tasaka mtasaka at fedoraproject.org
Tue Oct 5 14:49:49 UTC 2010


commit 0d543b4dd426f6b25f2161ed3b256f2dc128e034
Author: Mamoru Tasaka <tasaka1 at localhost.localdomain>
Date:   Tue Oct 5 23:49:54 2010 +0900

    Initial import

 .gitignore                    |    1 +
 cairo-1.10.0-ext.cairo.depend |    2 +
 rubygem-cairo.spec            |  279 +++++++++++++++++++++++++++++++++++++++++
 sources                       |    1 +
 4 files changed, 283 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..5bcec15 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/cairo-1.10.0.gem
diff --git a/cairo-1.10.0-ext.cairo.depend b/cairo-1.10.0-ext.cairo.depend
new file mode 100644
index 0000000..d267ff6
--- /dev/null
+++ b/cairo-1.10.0-ext.cairo.depend
@@ -0,0 +1,2 @@
+install-so:
+	$(INSTALL_DATA) $(srcdir)/rb_cairo.h $(RUBYARCHDIR)
diff --git a/rubygem-cairo.spec b/rubygem-cairo.spec
new file mode 100644
index 0000000..b9e089d
--- /dev/null
+++ b/rubygem-cairo.spec
@@ -0,0 +1,279 @@
+%global	ruby_sitelib		%(ruby -rrbconfig -e "puts Config::CONFIG['sitelibdir']")
+%global	ruby_sitearch		%(ruby -rrbconfig -e "puts Config::CONFIG['sitearchdir']")
+%global	rubyabi		1.8
+
+%global	gemdir			%(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
+%define	gemname		cairo
+%define	geminstdir		%{gemdir}/gems/%{gemname}-%{version}
+
+%global	mainver	1.10.0
+%global	gitver		%(echo %mainver | sed -e 's|\.|_|g')
+
+# Upstream GIT http://github.com/rcairo/
+
+Summary:	Ruby bindings for cairo
+Name:		rubygem-%{gemname}
+Version:	1.10.0
+Release:	2%{?dist}
+Group:		Development/Languages
+License:	GPLv2 or Ruby
+URL:		http://cairographics.org/rcairo/
+Source0:	http://rubygems.org/downloads/%{gemname}-%{version}.gem
+# This one is needed
+# wget -N -O %%gemname-%%mainver-ext.cairo.depend http://github.com/rcairo/rcairo/raw/RELEASE_%%{gitver}/ext/cairo/depend
+Source100:	%{gemname}-1.10.0-ext.cairo.depend
+
+BuildRequires:	ruby(abi) = %{rubyabi}
+BuildRequires:	ruby(rubygems)
+BuildRequires:	cairo-devel
+BuildRequires:	ruby-devel
+BuildRequires(check):	rubygem(test-unit)
+BuildRequires(check):	rubygem(pkg-config)
+# Make sure at least one font is available for test/test_context.rb:57
+# `initialize': out of memory (NoMemoryError)
+BuildRequires(check):	dejavu-serif-fonts
+Requires:	ruby(abi) = %{rubyabi}
+Requires:	ruby(rubygems)
+Provides:	rubygem(%{gemname}) = %{version}-%{release}
+
+%description
+Ruby bindings for cairo. Cairo is a 2D graphics library with support for 
+multiple output devices. Currently supported output targets include the 
+X Window System, win32, and image buffers.
+
+%package	doc
+Summary:	Documentation for %{name}
+Group:		Documentation
+Requires:	%{name} = %{version}-%{release}
+
+%description	doc
+This package contains documentation for %{name}.
+
+%package	-n ruby-%{gemname}
+Summary:	Non-Gem support package for %{gemname}
+Group:		Development/Languages
+Requires:	%{name} = %{version}-%{release}
+Provides:	ruby(%{gemname}) = %{version}-%{release}
+
+%description	-n ruby-%{gemname}
+This package provides non-Gem support for %{gemname}.
+
+%package	devel
+Summary:	Ruby-cairo development environment
+Group:		Development/Languages
+Requires:	%{name} = %{version}-%{release}
+Requires:	cairo-devel
+Requires:	ruby-devel
+# Obsoletes / Provides
+# ruby(cairo-devel) Provides is for compatibility
+Obsoletes:	ruby-cairo-devel < 1.9
+Provides:	ruby-cairo-devel = %{version}-%{release}
+Provides:	ruby(cairo-devel) = %{version}-%{release}
+
+%description devel
+Header files and libraries for building a extension library for the
+ruby-cairo
+%prep
+%setup -q -T -c
+
+mkdir -p ./%{gemdir}
+export CONFIGURE_ARGS="--with-cflags='%{optflags}'"
+gem install \
+	--local \
+	--install-dir ./%{gemdir} \
+	-V --force \
+	%{SOURCE0}
+
+# Install ext/cairo/depend
+pushd .%{geminstdir}
+cp -p %{SOURCE100} ext/cairo/depend
+
+%build
+# Make pkg-config development-dependent
+# Already in upstream git. For now change manually
+# 
+sed -i -e '/pkg-config/s|project\.extra_deps|project.extra_dev_deps|' \
+	.%{geminstdir}/Rakefile
+sed -i -e '/pkg-config/s|add_runtime_dependency|add_development_dependency|' \
+	.%{gemdir}/specifications/%{gemname}-%{version}.gemspec
+
+pushd .%{geminstdir}
+# only create Makefile
+export CFLAGS="%{optflags}"
+ruby ./extconf.rb
+popd
+
+%install
+rm -rf %{buildroot}
+mkdir -p %{buildroot}%{gemdir}
+cp -a ./%{gemdir}/* %{buildroot}%{gemdir}
+
+# Install C extensions, header files
+pushd .%{geminstdir}
+make -C ext/cairo \
+	install \
+	INSTALL="install -p" \
+	DESTDIR=%{buildroot}/
+
+# remove all shebang, set permission to 0644
+for f in $(find %{buildroot}%{geminstdir} -name \*.rb)
+do
+	sed -i -e '/^#!/d' $f
+	chmod 0644 $f
+done
+
+# cleanups
+rm -rf %{buildroot}%{geminstdir}/ext/
+rm -f %{buildroot}%{geminstdir}/lib/*.so
+
+rm -f %{buildroot}%{geminstdir}/{Makefile*,extconf.rb}
+
+# The following method is completely copied from rubygem-gettext
+# spec file
+#
+# Create symlinks
+##
+## Note that before switching to gem %%{ruby_sitelib}/%%{gemname}
+## already existed as a directory, so this cannot be replaced
+## by symlink (cpio fails)
+## Similarly, all directories under %%{ruby_sitelib} cannot be
+## replaced by symlink
+#
+
+create_symlink_rec(){
+
+ORIGBASEDIR=$1
+TARGETBASEDIR=$2
+
+## First calculate relative path of ORIGBASEDIR 
+## from TARGETBASEDIR
+TMPDIR=$TARGETBASEDIR
+BACKDIR=
+DOWNDIR=
+num=0
+nnum=0
+while true
+do
+	num=$((num+1))
+	TMPDIR=$(echo $TMPDIR | sed -e 's|/[^/][^/]*$||')
+	DOWNDIR=$(echo $ORIGBASEDIR | sed -e "s|^$TMPDIR||")
+	if [ x$DOWNDIR != x$ORIGBASEDIR ]
+	then
+		nnum=0
+		while [ $nnum -lt $num ]
+		do
+			BACKDIR="../$BACKDIR"
+			nnum=$((nnum+1))
+		done
+		break
+	fi
+done
+
+RELBASEDIR=$( echo $BACKDIR/$DOWNDIR | sed -e 's|//*|/|g' )
+
+## Next actually create symlink
+pushd %{buildroot}/$ORIGBASEDIR
+find . -type f | while read f
+do
+	DIRNAME=$(dirname $f)
+	BACK2DIR=$(echo $DIRNAME | sed -e 's|/[^/][^/]*|/..|g')
+	mkdir -p %{buildroot}${TARGETBASEDIR}/$DIRNAME
+	LNNAME=$(echo $BACK2DIR/$RELBASEDIR/$f | \
+		sed -e 's|^\./||' | sed -e 's|//|/|g' | \
+		sed -e 's|/\./|/|' )
+	ln -s -f $LNNAME %{buildroot}${TARGETBASEDIR}/$f
+done
+popd
+
+}
+
+create_symlink_rec %{geminstdir}/lib %{ruby_sitelib}
+
+%clean
+rm -rf %{buildroot}
+
+%check
+pushd ./%{geminstdir}
+ruby ./test/run-test.rb --verbose
+popd
+
+%files
+%defattr(-,root, root,-)
+%{ruby_sitearch}/%{gemname}.so
+%dir	%{geminstdir}/
+%doc	%{geminstdir}/[A-Z]*
+%exclude %{geminstdir}/Rakefile
+%{geminstdir}/lib/
+%{gemdir}/cache/%{gemname}-%{version}.gem
+%{gemdir}/specifications/%{gemname}-%{version}.gemspec
+
+%files	doc
+%defattr(-,root,root,-)
+%{geminstdir}/Rakefile
+%{geminstdir}/misc/
+%{geminstdir}/samples/
+%{geminstdir}/test/
+%{gemdir}/doc/%{gemname}-%{version}/
+
+%files	-n ruby-%{gemname}
+%defattr(-,root,root,-)
+%{ruby_sitelib}/%{gemname}.rb
+%{ruby_sitelib}/%{gemname}/
+
+%files	devel
+%defattr(-,root,root,-)
+%{ruby_sitearch}/rb_cairo.h
+
+%changelog
+* Tue Oct  5 2010 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> 1.10.0-2
+- Install one font at BuildRequires for test	
+
+* Sun Sep 19 2010 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> 1.10.0-1
+- Update to 1.10.0
+
+* Fri Sep  3 2010 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> 1.8.5-2
+- Switch to gem
+- Fix license tag
+
+* Thu Sep  2 2010 Mamoru Tasaka <mtasaka at ioa.s.u-tokyo.ac.jp> 1.8.5-1
+- Update to 1.8.5
+
+* Wed Dec 16 2009 Allisson Azevedo <allisson at gmail.com> 1.8.1-1
+- Update to 1.8.1
+
+* Sun Jul 26 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.8.0-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Wed Feb 25 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.8.0-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Fri Jan 23 2009 Allisson Azevedo <allisson at gmail.com> 1.8.0-2
+- Rebuild
+
+* Sun Oct  5 2008 Allisson Azevedo <allisson at gmail.com> 1.8.0-1
+- Update to 1.8.0
+
+* Tue Sep  9 2008 Allisson Azevedo <allisson at gmail.com> 1.7.0-1
+- Update to 1.7.0
+
+* Sun May 18 2008 Allisson Azevedo <allisson at gmail.com> 1.6.1-1
+- Update to 1.6.1
+
+* Mon Feb 25 2008 Allisson Azevedo <allisson at gmail.com> 1.5.1-1
+- Update to 1.5.1
+- Update License for GPLv2+
+
+* Mon Feb 18 2008 Fedora Release Engineering <rel-eng at fedoraproject.org> - 1.5.0-2
+- Autorebuild for GCC 4.3
+
+* Mon Jun 11 2007 Allisson Azevedo <allisson at gmail.com> 1.5.0-1
+- Update to 1.5.0
+
+* Sun Mar 28 2007 Allisson Azevedo <allisson at gmail.com> 1.4.1-2
+- Changed license for Ruby License/GPL
+- Add ruby-devel for devel requires
+- Changed main group for System Environment/Libraries
+- Changed install for keep timestamps
+
+* Sun Mar 26 2007 Allisson Azevedo <allisson at gmail.com> 1.4.1-1
+- Initial RPM release
diff --git a/sources b/sources
index e69de29..6e8e3f4 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+9511621d4fdb60e67c8b87f63e6d54d2  cairo-1.10.0.gem


More information about the scm-commits mailing list