Re: Use perl or csh or tcl from inside the spec file?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 02/15/2012 12:25 AM, Red Cricket wrote:
I could of sworn there was a way to do something like this ...

%install #!/usr/SD/perl/bin/perl
my $DESTDIR=$ENV{'RPM_BUILD_ROOT');
my $VAS_STOW_TOP        = ".";
my $LICENSE_DIRNAME     = "/etc/opt/quest/vas/.licenses";
my $LICENSE_FILENAME    = "QAS-100-813-787.txt";

But obviously that is not right as rpmbuild fails with this message:


/var/tmp/rpm-tmp.5HpWke: line 28: syntax error near unexpected token `)'
error: Bad exit status from /var/tmp/rpm-tmp.5HpWke (%install)

Isn't a way to use something besides /bin/sh inside the spec file?

Not really. For install-time scripts like %post etc you can specify an alternative interpreter with eg "%post -p /usr/bin/perl" but that doesn't work for the build-time scripts.

Technically you can change the shell used for building by overriding %___build_shell but rpmbuild assumes a Bourne shell compatible shell, and if it's changed to something else, not a whole lot is going to work.

What you can do is have the other-language scripts as separate sources, and then explicitly run those. Eg

Source10: my-install.pl

%install
/usr/SD/perl/bin/perl %{SOURCE10}

Creating them in-place with here-documents and running that also works.

	- Panu -
_______________________________________________
Rpm-list mailing list
Rpm-list@xxxxxxxxxxxxx
http://lists.rpm.org/mailman/listinfo/rpm-list


[Index of Archives]     [RPM Ecosystem]     [Linux Kernel]     [Red Hat Install]     [PAM]     [Red Hat Watch]     [Red Hat Development]     [Red Hat]     [Gimp]     [Yosemite News]     [IETF Discussion]

  Powered by Linux