Mailinglist Archive: opensuse-buildservice (189 mails)

< Previous Next >
Re: [opensuse-buildservice] Expansion-Error on suse-macros
  • From: Christof Hanke <biber@xxxxxxxxxxxxxxx>
  • Date: Mon, 23 Feb 2009 12:40:03 +0200
  • Message-id: <200902231240.03242.biber@xxxxxxxxxxxxxxx>
On Tuesday 17 February 2009 22:16:59 MasterPatricko wrote:
Michal Marek wrote:
Michal Marek napsal(a):
Christof Hanke napsal(a):
due to my lazyness, I didn't read the instructions for KMP-packages and
fdupes correctly.
When I used the respective macros %fdupes and
%suse_kernel_module_package I got really weird errors (e.g. 'fg no job
control' for %fdupes), because the corresponding BuildRequires was not
in place.
Is it possible to integrate the suse-macros into the Expansion-check so
that the real error is made more obvious ?

I fear it's hard to do it correctly. E.g. does this snippet require
fdupes.rpm or not?

...

That said, a cool feature would be a script that takes the failed build
log and tries to gues what went wrong, e.g. /fg: no job control/ =>
undefined macro. But not "I refuse to build your package because I think
you are using undefined macros" :-).

Michal

Sorry for the delay....
Maybe im just being obvious, but generally when I am writing a spec file
I check for the existence of any custom/distro macros before using them,
makes porting them easier.
True, but it's not always that the macros don't exist... for fdupes you are
right, but
%suse_kernel_module_package just throws "internal kmp-error" IIRC if the
BuildRequires does not include the corresponding packages.

The way to avoid undefined macros killing the build is to call them with
substitution, e.g. %{?fdupes} evaluates to "" (nothing) if fdupes is not
defined and "%{fdupes}" if it is, etc.

Thanks, I'll do it like this. In that way, I only need one %if for the
Buildrequires for the enterprise versions.
You can even do if-then e.g. %{?suse_version:%fdupes} (if suse_version
is defined then run fdupes otherwise nothing).

That doesn't work, because fdupes is not in SLES_9 nor in SLE_10.

Regards,

Christof
--
To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-buildservice+help@xxxxxxxxxxxx

< Previous Next >