[SCM] supercollider/master: Restrict (optional) supernova to its target archs

Felipe Sateler fsateler at debian.org
Wed May 18 16:41:54 UTC 2016


On 18 May 2016 at 03:46, Dan S <danstowell+debmm at gmail.com> wrote:
> 2016-05-18 0:24 GMT+01:00 Felipe Sateler <fsateler at debian.org>:
>> On 17 May 2016 at 18:34,  <danstowell-guest at users.alioth.debian.org> wrote:
>>> The following commit has been merged in the master branch:
>>> commit 837440f53425195c71a63651856e1717678bd4b5
>>> Author: Dan Stowell <danstowell at users.sourceforge.net>
>>> Date:   Tue May 17 23:05:00 2016 +0100
>>>
>>>     Restrict (optional) supernova to its target archs
>>>
>>>     i386, ia64, amd64
>>>
>>> diff --git a/debian/control b/debian/control
>>> index f5ae176..ed8035e 100644
>>> --- a/debian/control
>>> +++ b/debian/control
>>> @@ -117,7 +117,7 @@ Description: integrated development environment for supercollider audio system
>>>   working with SuperCollider code.
>>>
>>>  Package: supercollider-supernova
>>> -Architecture: any-i386 any-amd64 armel armhf ia64 mips mipsel s390 s390x
>>> +Architecture: any-i386 any-amd64 ia64
>>>  Depends: ${shlibs:Depends}, ${misc:Depends}, jackd
>>>  Description: real time audio synthesis server (multiprocessor version)
>>>   SuperCollider is an environment and programming language for real time
>>> diff --git a/debian/rules b/debian/rules
>>> index 3d36e0a..e15375a 100755
>>> --- a/debian/rules
>>> +++ b/debian/rules
>>> @@ -21,15 +21,11 @@ DEB_INSTALL_MANPAGES_supercollider-language  = debian/sclang.1
>>>  DEB_INSTALL_MANPAGES_supercollider-vim     = debian/scvim.1 debian/sclangpipe_app.1
>>>  DEB_INSTALL_MANPAGES_supercollider-ide     = debian/scide.1
>>>
>>> -# supernova (alternative to scsynth) uses fancy simd things which fail to build on sparc/powerpc
>>> -ifeq ("$(DEB_HOST_ARCH_CPU)","sparc")
>>> +# supernova (optional alternative to scsynth) uses fancy simd things which fail to build on non-target architectures
>>> +ifeq (,$(findstring $(DEB_HOST_ARCH_CPU),"i386" "amd64" "ia64"))
>>
>> Maybe this could be replaced with:
>>
>> ifeq (,$(findstring supercollider-supernova,$(DEB_ARCH_PACKAGES)))
>>
>> This would avoid having to encode the list in more than one place.
>
> This fails when I try it.

This is an inverted match:

ifeq (,$(findstring supercollider-supernova,$(DEB_ARCH_PACKAGES)))
  DEB_BUILD_SUPERNOVA=off
else
  DEB_BUILD_SUPERNOVA=on
endif

> Also, at build time, the machine is building
> all the packages, not just supernova, so I don't think that variable
> could possibly hold the supernova-specific list could it?

Yes, because cdbs puts in that variable only the packages that will
actually be built: it skips architecture-specific packages that are
not a match for the current DEB_HOST_ARCHITECTURE. This is done
through the debhelper command dh_listpackages[1].

You can test this by removing any-amd64 from the sc-supernova list.

[1] http://sources.debian.net/src/cdbs/0.4.135/1/rules/buildvars.mk.in/#L44


-- 

Saludos,
Felipe Sateler



More information about the pkg-multimedia-maintainers mailing list