GNOME/Packaging/Quirks

From openSUSE

(Difference between revisions)
Revision as of 02:00, 21 February 2009
MBoman (Talk | contribs)

� Previous diff
Revision as of 02:01, 21 February 2009
MBoman (Talk | contribs)

Next diff →
Line 50: Line 50:
=CFLAGS= =CFLAGS=
''CFLAGS="$RPM_OPT_FLAGS"'' should be removed from the .spec file '''if'''; ''CFLAGS="$RPM_OPT_FLAGS"'' should be removed from the .spec file '''if''';
-* It does not contain any other option '''and''' the package uses %configure+* It does '''not''' contain any other option '''and''' the package uses %configure
We need to investigate wheter the use of ''-fno-strict-aliasing'' in most GNOME packages are really needed. We need to investigate wheter the use of ''-fno-strict-aliasing'' in most GNOME packages are really needed.

Revision as of 02:01, 21 February 2009

Contents

sr@Latn

Upstream have gone from using sr@Latn to sr@latin. This might cause build failures. To workaround this issue, insert the following before %find_lang in the .spec file

# Change sr@Latn to sr@latin
mv %{buildroot}%{_datadir}/locale/sr@Latn %{buildroot}%{_datadir}/locale/sr@latin


ha/ig

We are currently missing locale/ha and locale/ig in the filesystem package. This causes build failures. A workaround is to add this to your .spec file in the %files lang section

## ha/ig does not exist in Factory currently
##%if %suse_version <= 1110
# exclude locales which don't exist on old versions of openSUSE
%exclude %{_datadir}/locale/ha/LC_MESSAGES/*
%exclude %{_datadir}/locale/ig/LC_MESSAGES/*
##%endif

When you use this workaround, please make sure that add the package name to https://bugzilla.novell.com/show_bug.cgi?id=470409 as well so that we can go back and clean it up once it's been included in the filesystem package.


gtk-doc/gnome-common

Always try to see if gtk-doc/gnome-common can be removed from BuildRequires. They 'might' be needed if the package is doing autoreconf. If it's determined that they can be removed, it's likely to see build failures due to directories not owned by the package. A workaround for that is to add the following in the %files doc section;

# Own these repositories to not depend on gtk-doc while building:
%dir %{_datadir}/gtk-doc
%dir %{_datadir}/gtk-doc/html


gtk-doc in -doc package

gtk-doc is development documentation only, hence, they should not be in a -doc package, but in a -devel package. If the -doc package only contains gtk-doc, then the following should be done;

1. Move the files section from -doc to -devel

2. Remove all traces of -doc

3. Add the following to the -devel package (replace packagename with the name of the package. The %{name} macro should not be used):

Obsoletes:      packagename-doc <= %{version}
Provides:       packagename-doc = %{version}

See http://en.opensuse.org/Package_Dependencies#Merging_a_package for more information about merging packages


%{_libdir} vs %{_prefix}/lib

We need confirmation, but %{_libdir} is usually needed for libraries while %{_prefix}/lib is used to host programs that shouldn't be in the path. Think about it as libdir vs libexecdir.


CFLAGS

CFLAGS="$RPM_OPT_FLAGS" should be removed from the .spec file if;

  • It does not contain any other option and the package uses %configure

We need to investigate wheter the use of -fno-strict-aliasing in most GNOME packages are really needed.