all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Obs on non-x86
@ 2016-07-12  7:00 Andreas Enge
  2016-07-12  8:06 ` Efraim Flashner
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Enge @ 2016-07-12  7:00 UTC (permalink / raw)
  To: guix-devel

Hello,

the obs package fails to build on arm:
   http://hydra.gnu.org:3000/build/1298768/nixlog/1/tail-reload
since it uses "-msse" and so on.

Can this be disabled on non-x86 architectures, or should we mark it
as non available there?

Andreas

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Obs on non-x86
  2016-07-12  7:00 Obs on non-x86 Andreas Enge
@ 2016-07-12  8:06 ` Efraim Flashner
  2016-07-12 10:17   ` Efraim Flashner
  2016-07-14 15:03   ` Andreas Enge
  0 siblings, 2 replies; 4+ messages in thread
From: Efraim Flashner @ 2016-07-12  8:06 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1080 bytes --]

On Tue, Jul 12, 2016 at 09:00:19AM +0200, Andreas Enge wrote:
> Hello,
> 
> the obs package fails to build on arm:
>    http://hydra.gnu.org:3000/build/1298768/nixlog/1/tail-reload
> since it uses "-msse" and so on.
> 
> Can this be disabled on non-x86 architectures, or should we mark it
> as non available there?
> 
> Andreas

I grepped the source and found the offending code here:
https://github.com/jp9000/obs-studio/blob/master/libobs/CMakeLists.txt#L350

A quick fix would be to change `IF(NOT MSVC)' to `IF(MSVC)' and (without
checking) that would likely get the old functionality back, but I bet
there's somewhere else we can change it.

Looking at git blame that code has been there for almost 2 years, so it
looks like something else changed that caused them to either change the
default config or finally read and process the flags.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Obs on non-x86
  2016-07-12  8:06 ` Efraim Flashner
@ 2016-07-12 10:17   ` Efraim Flashner
  2016-07-14 15:03   ` Andreas Enge
  1 sibling, 0 replies; 4+ messages in thread
From: Efraim Flashner @ 2016-07-12 10:17 UTC (permalink / raw)
  To: Andreas Enge; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 1708 bytes --]

On Tue, Jul 12, 2016 at 11:06:27AM +0300, Efraim Flashner wrote:
> On Tue, Jul 12, 2016 at 09:00:19AM +0200, Andreas Enge wrote:
> > Hello,
> > 
> > the obs package fails to build on arm:
> >    http://hydra.gnu.org:3000/build/1298768/nixlog/1/tail-reload
> > since it uses "-msse" and so on.
> > 
> > Can this be disabled on non-x86 architectures, or should we mark it
> > as non available there?
> > 
> > Andreas
> 
> I grepped the source and found the offending code here:
> https://github.com/jp9000/obs-studio/blob/master/libobs/CMakeLists.txt#L350
> 
> A quick fix would be to change `IF(NOT MSVC)' to `IF(MSVC)' and (without
> checking) that would likely get the old functionality back, but I bet
> there's somewhere else we can change it.
> 
> Looking at git blame that code has been there for almost 2 years, so it
> looks like something else changed that caused them to either change the
> default config or finally read and process the flags.
> 

I found debian's obs patch for this issue
https://sources.debian.net/src/obs-studio/0.14.2%2Bdfsg1-3/debian/patches/0002-Buildsystem.patch/
so it looks like I'm on the right path. I don't have easy access to
non-Intel hardware to test my patch, so I'll at least test that it
doesn't break x86_64.  My goal to keep failed builds under 600 went out
the window when I switched a bunch of packages to modular Qt, but I bet
there's a number of similar issues out there for failed builds among
armhf and mips.

-- 
Efraim Flashner   <efraim@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Obs on non-x86
  2016-07-12  8:06 ` Efraim Flashner
  2016-07-12 10:17   ` Efraim Flashner
@ 2016-07-14 15:03   ` Andreas Enge
  1 sibling, 0 replies; 4+ messages in thread
From: Andreas Enge @ 2016-07-14 15:03 UTC (permalink / raw)
  To: Efraim Flashner; +Cc: guix-devel

On Tue, Jul 12, 2016 at 11:06:27AM +0300, Efraim Flashner wrote:
> A quick fix would be to change `IF(NOT MSVC)' to `IF(MSVC)' and (without
> checking) that would likely get the old functionality back, but I bet
> there's somewhere else we can change it.

This is a somewhat misleading fix, and if I understand things correctly,
it disables the special instructions "-mmx" etc. everywhere; but we should
keep them for x86_64. For instance, in the definition of zynaddsubfx we have
         (add-after 'unpack 'remove-sse-flags-from-generic-target
          (lambda _
            (substitute* "src/CMakeLists.txt"
              (("-msse -msse2 -mfpmath=sse") "")
              (("-march=(athlon64|core2)" flag)
               (string-append flag " -msse -msse2 -mfpmath=sse")))
            #t)))))

I think this would warrant a bug report upstream, preferably by someone
who uses the package.

Andreas

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-07-14 15:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-12  7:00 Obs on non-x86 Andreas Enge
2016-07-12  8:06 ` Efraim Flashner
2016-07-12 10:17   ` Efraim Flashner
2016-07-14 15:03   ` Andreas Enge

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.