make rpm with CVS head
Frank Schmitt
ich at Frank-Schmitt.net
Wed Jun 9 20:46:39 CEST 2004
Hello
I spend my afternoon creating XFce RPMs from CVS. It seems I'm the
first since some time who did this as there were many errors. I wrote
down what I encountered and what I had to do to fix it:
libxfcegui4:
============
I got an error that gtkdoc has to be installed and running, but I have
it installed and it does run! Commented out the @false
Then there were some files missing in the files section of the specfile:
RPM build errors:
Installed (but unpackaged) file(s) found:
/usr/share/locale/de/LC_MESSAGES/libxfcegui4.mo
/usr/share/locale/fr/LC_MESSAGES/libxfcegui4.mo
libxfce4mcs:
============
Worked
xfce-mcs-manager:
=================
RPM build errors:
Installed (but unpackaged) file(s) found:
/usr/share/applications/xfce-settings-manager.desktop
Same gtkdoc error as above.
xfce4-panel:
============
Making all in icons
make[3]: Entering directory `/usr/src/redhat/BUILD/xfce4-panel-4.1.5/icons
make[3]: *** No rule to make target `xfce-mail.png', needed by `all-am'. Stop.
make[3]: Leaving directory `/usr/src/redhat/BUILD/xfce4-panel-4.1.5/icons
Had to go back to last revision of Makefile.am and Makefile.in as I
didn't know what to do here.
RPM build errors:
File not found: /var/tmp/xfce4-panel-root/usr/share/xfce4/themes
so I removed it from specfile
RPM build errors:
Installed (but unpackaged) file(s) found:
/usr/share/applications/xfce-panel-settings.desktop
added
gtk-xfce-engine-2:
==================
Worked
xfcalendar:
===========
Worked
xfce4-appfinder:
================
config.status: executing depfiles commands
make: *** No rule to make target `ChangeLog.old', needed by `distdir'. Stop.
Had to remove Changelog.old from target EXTRA_DIST
Processing files: xfce4-appfinder-0.2.1-1
error: File not found by glob: /var/tmp/xfce4-appfinder-root/usr/share/*
Had to remove %{_datadir}/* from files section in xfce4-appfinder.spec
xfce4-iconbox:
==============
Worked
xfce4-mixer:
============
make: *** No rule to make target `config.rpath', needed by `distdir'. Stop.
Assumed that the file isn't needed anymore and removed it from target.
xfce4-mixer.spec.in wasn't transferred to xfce4-mixer.spec. Did this manually.
In directory po:
make: *** No rule to make target `../lib/trans.c', needed by `xfce4-mixer.pot'. Stop.
No idea what to do there. The Makefile looks seriously broken. Gave up
and used checkinstall instead.
xfce4-modules:
==============
One more time the old error:
make[2]: Entering directory `/home/fschmitt/cvs/xfce4/xfce4-modules/docs'
*** gtk-doc must be installed and enabled in order to make dist
mime.c:43:23: constants.h: No such file or directory
mime.c: In function `mime_build_magic':
mime.c:131: error: `MAGIC_MIME_FILE' undeclared (first use in this function)
...
It seems that the file constants.h isn't copied in the tar.gz, so I did this manually.
Then I had to change %{_libdir}/lib* to %{_libdir}/xfce4/modules/lib* in specfile
There were no manpages generatet so the %{_mandir}/ had to go, too.
One changed, one deleted, what's missing? Right: I had to add
/usr/include/xfce4/xfce4-modules/combo.h
/usr/include/xfce4/xfce4-modules/mime.h
/usr/include/xfce4/xfce4-modules/mime_icons.h
to files section and hurray, rpms.
xfce4-session:
==============
Make dist misses:
settings/scripts/xfsm-*
settings/settings.h
And the files section in the specfile misses:
/usr/libexec/xfsm-export-theme
/usr/share/applications/xfce-session-settings.desktop
/usr/share/icons/hicolor/128x128/apps/xfce4-session.png
/usr/share/icons/hicolor/48x48/apps/xfce4-session.png
/usr/share/icons/hicolor/48x48/apps/xfsm-shutdown.png
/usr/share/icons/hicolor/64x64/apps/xfsm-gnome-kde-logo.png
/usr/share/icons/hicolor/72x72/apps/xfsm-trash-hilight.png
/usr/share/icons/hicolor/72x72/apps/xfsm-trash-normal.png
xfce4-systray:
==============
Worked
xfce4-themes:
=============
Worked
xfce4-toys:
===========
Worked
xfce4-trigger-launcher:
=======================
Worked
xfce-mcs-plugins:
=================
The following files are missing in the files section of the specfile:
/usr/share/applications/xfce-display-settings.desktop
/usr/share/applications/xfce-keyboard-settings.desktop
/usr/share/applications/xfce-mouse-settings.desktop
/usr/share/applications/xfce-ui-settings.desktop
xfce-utils:
===========
Worked
xfdesktop:
==========
make dist misses:
modules/menu/dummy_icon.h
pixmaps/me-icon48.xpm
pixmaps/me-icon16.xpm
pixmaps/me-icon32.xpm
the files section in specfile misses:
/usr/lib/xfce4/modules/libxfce4_desktop_menu.a
/usr/lib/xfce4/modules/libxfce4_desktop_menu.la
/usr/lib/xfce4/modules/libxfce4_desktop_menu.so
/usr/lib/xfce4/panel-plugins/libdesktopmenu.a
/usr/lib/xfce4/panel-plugins/libdesktopmenu.la
/usr/lib/xfce4/panel-plugins/libdesktopmenu.so
/usr/share/applications/xfce-backdrop-settings.desktop
/usr/share/applications/xfce-menueditor.desktop
/usr/share/icons/hicolor/32x32/apps/xfce4-backdrop.png
/usr/share/icons/hicolor/32x32/apps/xfce4-menueditor.png
/usr/share/icons/hicolor/48x48/apps/xfce4-backdrop.png
/usr/share/icons/hicolor/48x48/apps/xfce4-menueditor.png
/usr/share/pixmaps/xfce4_xicon.png
/usr/share/pixmaps/xfce4_xicon1.png
/usr/share/pixmaps/xfce4_xicon2.png
/usr/share/pixmaps/xfce4_xicon3.png
/usr/share/pixmaps/xfce4_xicon4.png
xffm:
=====
There's the same problem with files listed under POTFILES in
po/Makefile which don't exist as in xfce4-mixer, I tried setting
POTFILES =
and it seems it worked.
make dist misses:
xffm.spec
xffm.spec.in
toolbar.i
further on, there's a direct include of
../../xfce4-modules/modules/constants.h in libs/constants.h which
breaks rpm build.
The xfce-modules constants.h file isn't installed by xfce4-modules in
/usr/include, bad too.
Then there's an #error in main.c if you don't heve DEBUG=yes enabled,
changed it to a warning.
The specfiles misses
/usr/lib/xffm/libxffm_prop.la
/usr/lib/xffm/libxffm_prop.so.0.0.0
/usr/share/applications/xfce-filemanager-settings.desktop
/usr/share/icons/Xfce/48x48/stock/*
xffm-icons:
===========
The specfile thinks icons would be installed to /usr/share/xffm, but
they go to /usr/share/xfce4/icons/XFce/...
/usr/bin/xfmime-edit
/usr/share/xfce4/icons/XFce/mime.xml
/usr/share/xfce4/mime/Gorilla.mime.xml
/usr/share/xfce4/mime/gnome.mime.xml
are missing in specfile, too.
xfprint:
========
Worked
xfwm4:
======
Files ltconfig, ltcf-c.sh is listed as target for dist but it doesn't exist.
There's the same trouble with not existing POTFILES as in xffm and xfce4-mixer.
The specfiles still says /usr/share/xfwm/themes, but they are in
/usr/share/themes/
furter on
/usr/share/applications/xfce-wm-settings.desktop
/usr/share/applications/xfce-workspaces-settings.desktop
are missing in files section
xfwm4-themes:
=============
Same as with xfwm4: Specfile must be changed from
/usr/share/xfwm/themes to /usr/share/themes/....
--
Did you ever realize how much text fits in eighty columns? If you now consider
that a signature usually consists of up to four lines, this gives you enough
space to spread a tremendous amount of information with your messages. So seize
this opportunity and don't waste your signature with bullshit nobody will read.
More information about the Xfce4-dev
mailing list