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

Dan S danstowell+debmm at gmail.com
Wed May 18 17:32:31 UTC 2016


2016-05-18 17:41 GMT+01:00 Felipe Sateler <fsateler at debian.org>:
> 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

Yeah you're right, I must have made a typo while testing it. Pushed.

Dan



More information about the pkg-multimedia-maintainers mailing list