From cedbbb9e7c8e32f016359149deaf80cb99a9af8f Mon Sep 17 00:00:00 2001 From: Remi Collet Date: Fri, 28 Jan 2011 21:59:24 +0100 Subject: bluegriffon-0.9-0.1.hg20110128 (0.9RC1) --- bluegriffon.spec | 263 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 263 insertions(+) create mode 100644 bluegriffon.spec (limited to 'bluegriffon.spec') diff --git a/bluegriffon.spec b/bluegriffon.spec new file mode 100644 index 0000000..393609f --- /dev/null +++ b/bluegriffon.spec @@ -0,0 +1,263 @@ +%define nspr_version 4.8.7 +%define nss_version 3.12.9 +%define cairo_version 1.10 +%define freetype_version 2.1.9 +%define lcms_version 1.18 +%define sqlite_version 3.7.1 + +%define mozappdir %{_libdir}/bluegriffon +%define tarballdir mozilla-central +%define snapdate 20110128 + +Summary: The next-generation Web Editor +Name: bluegriffon +Version: 0.9 +Release: 0.1.hg%{snapdate}%{?dist} +URL: http://bluegriffon.org/ +License: MPLv1.1 or GPLv2+ or LGPLv2+ +Group: Applications/Editors + +Source0: %{name}-%{snapdate}.tar.bz2 +Source1: %{name}.sh +Source2: %{name}.desktop + +Patch1: firefox4-build.patch +Patch2: firefox4-build-sbrk.patch +Patch3: mozilla-malloc.patch +Patch4: firefox4-libjpeg-turbo.patch + +BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) + +BuildRequires: zip +BuildRequires: libIDL-devel +BuildRequires: desktop-file-utils +BuildRequires: gtk2-devel +BuildRequires: gnome-vfs2-devel +BuildRequires: libgnomeui-devel +BuildRequires: krb5-devel +BuildRequires: pango-devel +BuildRequires: freetype-devel >= 2.1.9 +BuildRequires: libXt-devel +BuildRequires: libXrender-devel +BuildRequires: startup-notification-devel +BuildRequires: wireless-tools-devel + +# BR from Xulrunner +%if %{fedora} >= 15 +BuildRequires: sqlite-devel >= %{sqlite_version} +%endif +%if %{fedora} >= 14 +BuildRequires: nspr-devel >= %{nspr_version} +BuildRequires: nss-devel >= %{nss_version} +%endif +%if %{fedora} >= 11 +BuildRequires: hunspell-devel +%endif +%if %{fedora} >= 15 +BuildRequires: cairo-devel >= %{cairo_version} +%endif +%if %{fedora} >= 10 +BuildRequires: libnotify-devel +%endif +%if %{fedora} >= 9 +BuildRequires: lcms-devel >= %{lcms_version} +%endif +BuildRequires: system-bookmarks +BuildRequires: libpng-devel +BuildRequires: libjpeg-devel +BuildRequires: zip +BuildRequires: bzip2-devel +BuildRequires: zlib-devel +BuildRequires: libIDL-devel +BuildRequires: gtk2-devel +BuildRequires: gnome-vfs2-devel +BuildRequires: libgnome-devel +BuildRequires: libgnomeui-devel +BuildRequires: krb5-devel +BuildRequires: pango-devel +BuildRequires: freetype-devel >= %{freetype_version} +BuildRequires: libXt-devel +BuildRequires: libXrender-devel +BuildRequires: startup-notification-devel +BuildRequires: alsa-lib-devel +BuildRequires: autoconf213 +BuildRequires: mesa-libGL-devel +BuildRequires: yasm + +%if 0%{?fedora} >= 14 +Requires: nss >= %{nss_version} +Requires: nspr >= %{nspr_version} +%endif +%if %{fedora} >= 9 +BuildRequires: lcms-devel >= %{lcms_version} +%endif + +%description +BlueGriffon is a new WYSIWYG content editor for the World Wide Web. +Powered by Gecko, the rendering engine of Firefox 4, it's a modern +and robust solution to edit Web pages in conformance to the latest +Web Standards. + +%prep +%setup -q -n %{tarballdir} + +patch -p1 < bluegriffon/config/content.patch + +%patch1 -p2 -b .build +%patch2 -p2 -b .sbrk +%patch3 -p2 -b .malloc +%if %{fedora} >= 14 +%patch4 -p2 -b .jpeg-turbo +%endif + +#See http://bluegriffon.org/pages/Build-BlueGriffon + +cat <= 15 +ac_add_options --enable-system-sqlite +%endif +%if %{fedora} >= 14 +ac_add_options --with-system-nspr +ac_add_options --with-system-nss +%endif +%if %{fedora} >= 11 +ac_add_options --enable-system-hunspell +%endif +%if %{fedora} >= 15 +ac_add_options --enable-system-cairo +%endif +%if %{fedora} >= 10 +ac_add_options --enable-libnotify +%else +ac_add_options --disable-libnotify +%endif +%if %{fedora} >= 9 +ac_add_options --enable-system-lcms +%endif +%ifarch ppc ppc64 +ac_add_options --disable-necko-wifi +ac_add_options --disable-ipc +%endif +ac_add_options --with-system-jpeg +ac_add_options --with-system-zlib +ac_add_options --with-system-bz2 +ac_add_options --with-pthreads +ac_add_options --disable-strip +ac_add_options --disable-activex +ac_add_options --disable-activex-scripting +ac_add_options --disable-tests +ac_add_options --disable-airbag +ac_add_options --enable-places +ac_add_options --enable-storage +ac_add_options --enable-shared +ac_add_options --disable-static +ac_add_options --disable-mochitest +ac_add_options --disable-installer +ac_add_options --disable-debug +ac_add_options --enable-optimize="\$MOZ_OPT_FLAGS" +ac_add_options --enable-xinerama +ac_add_options --enable-default-toolkit=cairo-gtk2 +ac_add_options --disable-xprint +ac_add_options --enable-pango +ac_add_options --enable-svg +ac_add_options --enable-canvas +ac_add_options --enable-startup-notification +ac_add_options --disable-cpp-exceptions +ac_add_options --disable-javaxpcom +ac_add_options --disable-crashreporter +ac_add_options --enable-safe-browsing +ac_add_options --disable-updater +EOF_MOZCONFIG + + +%build +export MOZ_OPT_FLAGS=$(echo $RPM_OPT_FLAGS | \ + %{__sed} -e 's/-Wall//' -e 's/-fexceptions//g') + +export CFLAGS=$MOZ_OPT_FLAGS +export CXXFLAGS="$MOZ_OPT_FLAGS -fpermissive" + +export PREFIX='%{_prefix}' +export LIBDIR='%{_libdir}' + +MOZ_SMP_FLAGS=-j1 +[ -z "$RPM_BUILD_NCPUS" ] && \ + RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`" +[ "$RPM_BUILD_NCPUS" -gt 1 ] && MOZ_SMP_FLAGS=-j$RPM_BUILD_NCPUS + +MOZ_APP_DIR=%{_libdir}/%{name} + +export LDFLAGS="-Wl,-rpath,${MOZ_APP_DIR}" +make -f client.mk build_all + + +%install +%{__rm} -rf $RPM_BUILD_ROOT + +# No Make install for now :( +mkdir -p $RPM_BUILD_ROOT/%{mozappdir} +tar --create --file - --dereference --directory=dist/bin . \ + | tar --extract --file - --directory $RPM_BUILD_ROOT/%{mozappdir} + +# Launcher +install -D -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name} + +# Shortcut +desktop-file-install \ + --dir $RPM_BUILD_ROOT%{_datadir}/applications \ + --add-category Development \ + --add-category Network \ + %{SOURCE2} + +# Icons +install -D -m 644 bluegriffon/app/icons/default16.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png +install -D -m 644 bluegriffon/app/icons/default32.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png +install -D -m 644 bluegriffon/app/icons/default48.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png +install -D -m 644 bluegriffon/app/icons/default50.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png +install -D -m 644 bluegriffon/app/icons/%{name}128.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps/%{name}.png + +# Use the system hunspell dictionaries +%{__rm} -rf $RPM_BUILD_ROOT/%{mozappdir}/dictionaries +ln -s %{_datadir}/myspell $RPM_BUILD_ROOT%{mozappdir}/dictionaries + + +%post +chcon -t textrel_shlib_t %{mozappdir}/libxul.so &>/dev/null || : +update-desktop-database &> /dev/null || : +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : +if [ -x %{_bindir}/gtk-update-icon-cache ]; then + %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : +fi + + +%postun +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi +update-desktop-database &> /dev/null || : + + +%files +%defattr(-,root,root,-) +%{_bindir}/%{name} +%{mozappdir} +%{_datadir}/applications/%{name}.desktop +%{_datadir}/icons/hicolor/16x16/apps/%{name}.png +%{_datadir}/icons/hicolor/32x32/apps/%{name}.png +%{_datadir}/icons/hicolor/48x48/apps/%{name}.png +%{_datadir}/icons/hicolor/128x128/apps/%{name}.png + + +%changelog +* Fri Jan 28 2011 Remi Collet - 0.9-0.1.hg20110128 +- first work on RPM - BlueGriffon 0.9rc1 + -- cgit