Switch bindings to https://github.com/Chris00/ocaml-cairo
- See: https://lists.fedoraproject.org/pipermail/devel/2015-March/209182.html
This commit is contained in:
parent
df7e8eab04
commit
dc649ed982
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,3 +1,4 @@
|
||||
ocaml-cairo-1.2.0-gita5c5ee9f.tar.gz
|
||||
/ocaml-cairo-1.2.0-git08b40192975.tar.gz
|
||||
/ocaml-cairo-1.2.0-git872c9bc92e6.tar.gz
|
||||
/ocaml-cairo-5c1df1516ad99bde444bf5717801e7df75252a6c.tar.gz
|
||||
|
@ -1,12 +0,0 @@
|
||||
diff -ur cairo-ocaml-1.0.0.orig/src/ml_cairo_bigarr.c cairo-ocaml-1.0.0.compat/src/ml_cairo_bigarr.c
|
||||
--- cairo-ocaml-1.0.0.orig/src/ml_cairo_bigarr.c 2009-06-18 19:01:26.000000000 +0100
|
||||
+++ cairo-ocaml-1.0.0.compat/src/ml_cairo_bigarr.c 2009-10-08 12:46:54.795555155 +0100
|
||||
@@ -9,6 +9,8 @@
|
||||
#include "ml_cairo.h"
|
||||
|
||||
#include <caml/bigarray.h>
|
||||
+#undef CAML_NAME_SPACE
|
||||
+#include <caml/compatibility.h>
|
||||
|
||||
unsigned long bigarray_byte_size (struct caml_bigarray *);
|
||||
|
@ -1,14 +0,0 @@
|
||||
--- ocaml-cairo-1.2.0/Makefile.rules~ 2011-09-11 16:09:06.000000000 +0100
|
||||
+++ ocaml-cairo-1.2.0/Makefile.rules 2013-09-14 14:51:18.682632883 +0100
|
||||
@@ -1,8 +1,8 @@
|
||||
%.cmo : %.ml
|
||||
- $(OCAMLC) -c $(INCFLAGS) $<
|
||||
+ $(OCAMLC) -g -c $(INCFLAGS) $<
|
||||
%.cmx : %.ml
|
||||
- $(OCAMLOPT) -c $(INCFLAGS) $<
|
||||
+ $(OCAMLOPT) -g -c $(INCFLAGS) $<
|
||||
%.cmi : %.mli
|
||||
- $(OCAMLC) $(INCFLAGS) $<
|
||||
+ $(OCAMLC) -g $(INCFLAGS) $<
|
||||
%.o : %.c
|
||||
$(OCAMLC) -ccopt "$(CPPFLAGS)" $<
|
@ -1,11 +1,11 @@
|
||||
name = "cairo-ocaml"
|
||||
name = "cairo2"
|
||||
description = "Bindings to the cairo library."
|
||||
archive(byte) = "cairo.cma"
|
||||
archive(native) = "cairo.cmxa"
|
||||
archive(byte) = "cairo2.cma"
|
||||
archive(native) = "cairo2.cmxa"
|
||||
requires = "bigarray"
|
||||
|
||||
package "lablgtk2" (
|
||||
requires = "cairo lablgtk2"
|
||||
archive(byte) = "cairo_lablgtk.cma"
|
||||
archive(native) = "cairo_lablgtk.cmxa"
|
||||
requires = "cairo2 lablgtk2"
|
||||
archive(byte) = "cairo_gtk.cma"
|
||||
archive(native) = "cairo_gtk.cmxa"
|
||||
)
|
||||
|
124
ocaml-cairo.spec
124
ocaml-cairo.spec
@ -1,42 +1,41 @@
|
||||
%global opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0)
|
||||
%ifarch %{ocaml_native_compiler}
|
||||
%global native_compiler 1
|
||||
%else
|
||||
%global native_compiler 0
|
||||
%endif
|
||||
|
||||
# Important note! There are at least two quite separate OCaml cairo
|
||||
# projects. This one is: http://cairographics.org/cairo-ocaml/
|
||||
# The other one is: http://forge.ocamlcore.org/projects/cairo/
|
||||
|
||||
# There are no source releases for ocaml-cairo > 1.0.0. To get the
|
||||
# source matching this you have to do:
|
||||
# Important note!
|
||||
# There are at least two quite separate OCaml cairo projects.
|
||||
#
|
||||
# git clone git://anongit.freedesktop.org/cairo-ocaml
|
||||
# cd cairo-ocaml
|
||||
# git archive --prefix=ocaml-cairo-%{version}/ %{commit} | \
|
||||
# gzip > ../ocaml-cairo-1.2.0-git%{commit}.tar.gz
|
||||
%global commit 872c9bc92e6
|
||||
# This is (packaged in Fedora >= 23):
|
||||
# http://forge.ocamlcore.org/projects/cairo/
|
||||
# https://github.com/Chris00/ocaml-cairo
|
||||
#
|
||||
# The other one (which used to be packaged in Fedora <= 22) is:
|
||||
# http://cairographics.org/cairo-ocaml/
|
||||
|
||||
# Packaging git pre-releases here.
|
||||
%global commit 5c1df1516ad99bde444bf5717801e7df75252a6c
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: ocaml-cairo
|
||||
Epoch: 1
|
||||
Version: 1.2.0
|
||||
Release: 0.20.git%{commit}%{?dist}
|
||||
Epoch: 2
|
||||
Version: 0.4.7
|
||||
Release: 0.4.git%{shortcommit}%{?dist}
|
||||
Summary: OCaml library for accessing cairo graphics
|
||||
|
||||
ExcludeArch: sparc64 s390 s390x
|
||||
License: LGPLv3+
|
||||
URL: https://github.com/Chris00/%{name}
|
||||
|
||||
License: LGPLv2
|
||||
URL: http://cairographics.org/cairo-ocaml/
|
||||
|
||||
Source0: ocaml-cairo-%{version}-git%{commit}.tar.gz
|
||||
Source0: https://github.com/Chris00/%{name}/archive/%{commit}/%{name}-%{commit}.tar.gz
|
||||
Source1: ocaml-cairo-META
|
||||
|
||||
Patch1: ocaml-cairo-1.2.0-enable-ocamlopt-debug.patch
|
||||
|
||||
BuildRequires: ocaml >= 3.10.0
|
||||
BuildRequires: ocaml-findlib-devel
|
||||
BuildRequires: ocaml-ocamldoc
|
||||
BuildRequires: ocaml-lablgtk-devel
|
||||
BuildRequires: cairo-devel >= 1.2.0
|
||||
BuildRequires: automake
|
||||
BuildRequires: gtk2-devel
|
||||
BuildRequires: chrpath
|
||||
|
||||
|
||||
%description
|
||||
@ -53,6 +52,8 @@ significant addition of translucence in the imaging model). When
|
||||
complete, the API is intended to support the complete imaging model of
|
||||
PDF 1.4.
|
||||
|
||||
This package contains OCaml bindings for Cairo.
|
||||
|
||||
|
||||
%package devel
|
||||
Summary: Development files for %{name}
|
||||
@ -66,19 +67,44 @@ developing applications that use %{name}.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%setup -q -n %{name}-%{commit}
|
||||
|
||||
%patch1 -p1
|
||||
|
||||
aclocal -I support
|
||||
autoconf
|
||||
./configure --libdir=%{_libdir}
|
||||
cp %{SOURCE1} META
|
||||
|
||||
|
||||
%build
|
||||
make
|
||||
make doc
|
||||
# The upstream package uses some crackpot build system which is
|
||||
# not supported in Fedora. Just build the files by hand instead.
|
||||
pushd src
|
||||
|
||||
# OCaml files.
|
||||
ocamlfind ocamlc -package lablgtk2 -g -c cairo.mli
|
||||
ocamlfind ocamlc -package lablgtk2 -g -c cairo.ml
|
||||
ocamlfind ocamlc -package lablgtk2 -g -c cairo_gtk.mli
|
||||
ocamlfind ocamlc -package lablgtk2 -g -c cairo_gtk.ml
|
||||
%if %{native_compiler}
|
||||
ocamlfind ocamlopt -package lablgtk2 -g -c cairo.ml
|
||||
ocamlfind ocamlopt -package lablgtk2 -g -c cairo_gtk.ml
|
||||
%endif
|
||||
|
||||
# C files.
|
||||
CFLAGS="%{optflags} -fPIC `pkg-config gtk+-2.0 --cflags` -I%{_libdir}/ocaml -I%{_libdir}/ocaml/lablgtk2"
|
||||
gcc $CFLAGS -c cairo_stubs.c
|
||||
gcc $CFLAGS -c cairo_gtk_stubs.c
|
||||
|
||||
# Build the two libraries, twice (bytecode & native).
|
||||
ocamlfind ocamlmklib -o cairo2 cairo_stubs.o cairo.cmo \
|
||||
`pkg-config gtk+-2.0 --libs`
|
||||
ocamlfind ocamlmklib -o cairo_gtk cairo_gtk_stubs.o cairo_gtk.cmo \
|
||||
`pkg-config gtk+-2.0 --libs`
|
||||
%if %{native_compiler}
|
||||
ocamlfind ocamlmklib -o cairo2 cairo_stubs.o cairo.cmx \
|
||||
`pkg-config gtk+-2.0 --libs`
|
||||
ocamlfind ocamlmklib -o cairo_gtk cairo_gtk_stubs.o cairo_gtk.cmx \
|
||||
`pkg-config gtk+-2.0 --libs`
|
||||
%endif
|
||||
|
||||
popd
|
||||
|
||||
|
||||
%install
|
||||
@ -86,35 +112,37 @@ export DESTDIR=$RPM_BUILD_ROOT
|
||||
export OCAMLFIND_DESTDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml
|
||||
mkdir -p $OCAMLFIND_DESTDIR $OCAMLFIND_DESTDIR/stublibs
|
||||
|
||||
ocamlfind install cairo src/{*.mli,*.cmi,*.cma,*.a,*.cmxa,*.cmx,dll*.so} META
|
||||
|
||||
chrpath --delete $RPM_BUILD_ROOT%{_libdir}/ocaml/stublibs/dll*.so
|
||||
ocamlfind install cairo2 src/{*.mli,*.cmi,*.cma,*.a,*.cmxa,*.cmx,dll*.so} META
|
||||
|
||||
|
||||
%files
|
||||
%doc COPYING
|
||||
%{_libdir}/ocaml/cairo
|
||||
%if %opt
|
||||
%exclude %{_libdir}/ocaml/cairo/*.a
|
||||
%exclude %{_libdir}/ocaml/cairo/*.cmxa
|
||||
%exclude %{_libdir}/ocaml/cairo/*.cmx
|
||||
%{_libdir}/ocaml/cairo2
|
||||
%if %{native_compiler}
|
||||
%exclude %{_libdir}/ocaml/cairo2/*.a
|
||||
%exclude %{_libdir}/ocaml/cairo2/*.cmxa
|
||||
%exclude %{_libdir}/ocaml/cairo2/*.cmx
|
||||
%endif
|
||||
%exclude %{_libdir}/ocaml/cairo/*.mli
|
||||
%exclude %{_libdir}/ocaml/cairo2/*.mli
|
||||
%{_libdir}/ocaml/stublibs/*.so
|
||||
%{_libdir}/ocaml/stublibs/*.so.owner
|
||||
|
||||
|
||||
%files devel
|
||||
%doc COPYING ChangeLog README doc/html
|
||||
%if %opt
|
||||
%{_libdir}/ocaml/cairo/*.a
|
||||
%{_libdir}/ocaml/cairo/*.cmxa
|
||||
%{_libdir}/ocaml/cairo/*.cmx
|
||||
# XXX The tutorial doesn't build.
|
||||
%doc examples
|
||||
%if %{native_compiler}
|
||||
%{_libdir}/ocaml/cairo2/*.a
|
||||
%{_libdir}/ocaml/cairo2/*.cmxa
|
||||
%{_libdir}/ocaml/cairo2/*.cmx
|
||||
%endif
|
||||
%{_libdir}/ocaml/cairo/*.mli
|
||||
%{_libdir}/ocaml/cairo2/*.mli
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Mar 19 2015 Richard W.M. Jones <rjones@redhat.com> - 2:0.4.7-0.4.git5c1df15
|
||||
- Switch bindings to https://github.com/Chris00/ocaml-cairo
|
||||
- See: https://lists.fedoraproject.org/pipermail/devel/2015-March/209182.html
|
||||
|
||||
* Tue Feb 17 2015 Richard W.M. Jones <rjones@redhat.com> - 1:1.2.0-0.20.git872c9bc92e6
|
||||
- ocaml-4.02.1 rebuild.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user