Compare commits

..

1 commit

Author SHA1 Message Date
7d2fdd93cb Multilib fix: Seed.js now searches both lib64 and lib directories
Documentation subpackage no longer depends on gtk-doc (# 707571)
2011-08-07 23:50:14 +02:00
6 changed files with 239 additions and 1 deletions

4
.gitignore vendored Normal file
View file

@ -0,0 +1,4 @@
seed-2.31.5.tar.bz2
/seed-2.31.91.tar.bz2
/seed-2.91.90.tar.bz2
/seed-3.0.0.tar.bz2

23
README.Fedora Normal file
View file

@ -0,0 +1,23 @@
There is a known problem importing the Gtk library from seed on
systems where seed is built against Gtk2, if Gtk3 is also installed;
this is because both Gtk versions install gobject-introspection
typelib files in the repository, and unless the desired version is
explicitly specified.
Simply importing Gtk fails as such:
> imports.gi.Gtk
seed: symbol lookup error: /usr/lib64/libgtk-x11-3.0.so.0: undefined
symbol: g_application_get_type
The workaround is to specify the version as such:
> // note the quotes; otherwise 2.0 gets evaluated as just 2
> imports.gi.versions.Gtk = "2.0";
2.0
> Gtk = imports.gi.Gtk;
[object Object]
>
See example 3 on the Reference Manual's Importer section:
http://library.gnome.org/devel/seed/stable/seed-importer.html

View file

@ -1 +0,0 @@
webkitgtk3 retired, doesn't build cleanly against webkitgtk4, no stable release for years and no dependents

31
seed-3.0.0-multilib.patch Normal file
View file

@ -0,0 +1,31 @@
--- seed-3.0.0/extensions/Seed.js.in.multilib 2011-02-22 23:44:01.000000000 +0100
+++ seed-3.0.0/extensions/Seed.js.in 2011-08-07 23:22:09.249981721 +0200
@@ -174,6 +174,7 @@
if(!imports.searchPath || (imports.searchPath.length == 0))
{
imports.searchPath = [ "%gnomejsdir%",
+ "%pkglib64dir%",
"%pkglibdir%",
"%pkgdatadir%",
"/usr/local/lib/seed",
--- seed-3.0.0/extensions/Makefile.in.multilib 2011-04-02 04:58:19.000000000 +0200
+++ seed-3.0.0/extensions/Makefile.in 2011-08-07 23:25:36.180525310 +0200
@@ -18,7 +18,8 @@
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
+pkglib64dir = $(prefix)/lib64/@PACKAGE@
+pkglibdir = $(prefix)/lib/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
@@ -510,7 +511,7 @@
Seed.js: Seed.js.in
- $(AM_V_GEN) $(SED) -e "s|%pkglibdir%|$(pkglibdir)@SEED_GTK_VERSION@|" -e "s|%pkgdatadir%|$(pkgdatadir)@SEED_GTK_VERSION@|" -e "s|%gnomejsdir%|$(GNOME_JS_DIR)|" $< > $@
+ $(AM_V_GEN) $(SED) -e "s|%pkglib64dir%|$(pkglib64dir)@SEED_GTK_VERSION@|" -e "s|%pkglibdir%|$(pkglibdir)@SEED_GTK_VERSION@|" -e "s|%pkgdatadir%|$(pkgdatadir)@SEED_GTK_VERSION@|" -e "s|%gnomejsdir%|$(GNOME_JS_DIR)|" $< > $@
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.

180
seed.spec Normal file
View file

@ -0,0 +1,180 @@
Name: seed
Version: 3.0.0
Release: 2%{?dist}
Summary: GNOME JavaScript interpreter
Group: Development/Languages
License: LGPLv3+
URL: http://live.gnome.org/Seed
Source0: http://ftp.gnome.org/pub/gnome/sources/seed/3.0/seed-%{version}.tar.bz2
Source1: README.Fedora
# Seed.js multilib fix
Patch0: seed-3.0.0-multilib.patch
BuildRequires: dbus-glib-devel
BuildRequires: gobject-introspection-devel
BuildRequires: gnome-js-common-devel
BuildRequires: intltool
BuildRequires: mpfr-devel
BuildRequires: readline-devel
BuildRequires: sqlite-devel
%if 0%{?fedora} > 14
BuildRequires: webkitgtk3-devel
%else
BuildRequires: webkitgtk-devel
%endif
BuildRequires: gtk-doc
#BuildRequires: automake autoconf libtool
Requires: gnome-js-common
%description
Seed is a library and interpreter, dynamically bridging (through
GObjectIntrospection) the WebKit JavaScriptCore engine, with the GNOME
platform. Seed serves as something which enables you to write
standalone applications in JavaScript, or easily enable your
application to be extensible in JavaScript.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package doc
Summary: Documentation files for %{name}
Group: Documentation
BuildArch: noarch
Requires: %{name} = %{version}-%{release}
%description doc
The %{name}-doc package contains documentation for
developing applications that use %{name}.
%prep
%setup -q
%patch0 -p1 -b .multilib
cp -p %{SOURCE1} .
#mkdir m4
#autoreconf -i -f
# add lib64 to dlsearch_path_spec
sed -i.libdir_syssearch -e \
'/sys_lib_dlsearch_path_spec/s|/usr/lib |/usr/lib /usr/lib64 /lib /lib64 |' \
configure
sed -i.cflags -e \
's|^\([ \t][ \t]*\)CFLAGS=\"[^\$].*$|\1true|' \
configure
# remove unneeded shebang
(cd extensions &&
touch -r repl.js{,.timestamp} &&
sed -i '1,2d' repl.js &&
touch -r repl.js{.timestamp,} &&
rm repl.js.timestamp)
%build
%configure \
%if 0%{?fedora} > 14
--with-webkit=3.0
%else
--with-webkit=1.0
%endif
make V=1 %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
find $RPM_BUILD_ROOT -name '*.a' -exec rm -f {} ';'
# grab developer docs
mv $RPM_BUILD_ROOT%{_docdir}/seed devdocs
# remove files already bundled with main package
rm devdocs/{AUTHORS,COPYING,INSTALL,README}
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc AUTHORS COPYING NEWS README README.Fedora
%{_bindir}/seed
%{_libdir}/*.so.*
%{_libdir}/seed-gtk3
%{_datadir}/seed-gtk3
%{_datadir}/man/man1/seed.1.*
%files devel
%defattr(-,root,root,-)
%{_includedir}/seed-gtk3
%{_libdir}/pkgconfig/seed.pc
%{_libdir}/*.so
%files doc
%defattr(-,root,root,-)
%doc devdocs/*
%dir %{_datadir}/gtk-doc
%dir %{_datadir}/gtk-doc/html
%{_datadir}/gtk-doc/html/seed
%changelog
* Sun Aug 7 2011 Michel Salim <salimma@fedoraproject.org> - 3.0.0-2
- Multilib fix: Seed.js now searches both lib64 and lib directories
- Documentation subpackage no longer depends on gtk-doc (# 707571)
* Sun Apr 3 2011 Christopher Aillon <caillon@redhat.com> - 3.0.0-1
- Update to 3.0.0
* Tue Feb 22 2011 Matthias Clasen <mclasen@redhat.com> - 2.91.90-1
- Update to 2.91.90
* Fri Feb 11 2011 Matthias Clasen <mclasen@redhat.com> - 2.31.91-7
- Rebuild against newer gtk
* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.31.91-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Wed Feb 2 2011 Matthias Clasen <mclasen@redhat.com> - 2.31.91-5
- Rebuild against newer gtk
* Sun Jan 9 2011 Matthias Clasen <mclasen@redhat.com> - 2.31.91-4
- Rebuild against newer gtk
* Fri Dec 3 2010 Matthias Clasen <mclasen@redhat.com> - 2.31.91-3
- Rebuild against newer gtk
* Fri Nov 5 2010 Michel Salim <salimma@fedoraproject.org> - 2.31.91-2
- Only build against GTK+ 3.0 on Fedora > 14
* Wed Sep 29 2010 Colin Walters <walters@verbum.org> - 2.31.91-1
- New upstream version
* Mon Jul 12 2010 Colin Walters <walters@verbum.org> - 2.31.1-3
- Rebuild against new gobject-introspection
* Mon Jul 5 2010 Michel Salim <salimma@fedoraproject.org> - 2.31.1-2
- Rebuild for webkitgtk soname change
* Tue Jun 22 2010 Michel Salim <salimma@fedoraproject.org> - 2.31.1-1
- Update to 2.31.1
* Fri Jun 18 2010 Michel Salim <salimma@fedoraproject.org> - 2.30.0-2
- Incorporate review recommendations (bz #600638)
- Remove unneeded shebang in repl.js
- Make -doc noarch
* Mon Mar 29 2010 Michel Salim <salimma@fedoraproject.org> - 2.30.0-1
- Initial package

1
sources Normal file
View file

@ -0,0 +1 @@
cd81d33cdb97bd0afa28dbe6e973355d seed-3.0.0.tar.bz2