build file fixes, a.k.a spring cleaning

Jasper Huijsmans jasper at moongroup.com
Mon May 5 13:53:43 CEST 2003


Hello all,

I've been trying to clean up the build files a bit to fix the make rpm
and make distcheck targets. Very educational I must say ;-)

Basically, only the gtk engine module could build rpm's. The following
common problems were encountered:

+ most modules included only the *.spec.in file in the dist tarball.
  However, the *.spec file must be included, since it's kinda hard to
  build rpm's without a spec file ;-)

+ missing (header) files from the distfile.

+ use of relative paths to include headers from other dirs.
  $(top_srcdir) should be used instead.

+ use of relative paths to link to libs in the package. Use
  $(top_builddir) instead.

+ missing location in the spec file to colect files from (e.g.
  %{_datadir}/locale).

I actually was able to build rpm's for all modules in xfce-devel now
(using --nodeps, I was quite amazed it worked at all) ;-) xfce4-extras
still needs to be done.

The libraries all pass distcheck, but the other modules do not. I'm not
sure what causes the problems yet. Distcheck does a number of things, it
makes a tarball, then builds it in a separate builddir (hence the need
for $(top_srcdir) et al.), installs it to another dir and uninstalls it
again. The error is in the uninstall part, so it may be some DESTDIR
problem.

Anyway, if someone on an rpm based system could find the time to try and
build rpms to test if it works that would be great. All that should be
needed is to run `./configure && make rpm'. 

If someone with actual knowledge of spec files would check the files to
make sure we're not doing something stupid that would also be very much
appreciated.


	Jasper



More information about the Xfce4-dev mailing list