mpeaton / naclports

Automatically exported from code.google.com/p/naclports
0 stars 0 forks source link

Unable to build SDL for PNaCl #140

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. NACL_ARCH=pnacl make sdl

What is the expected output? What do you see instead?
Expected: Successful build.
Actual:
bin/naclports install sdl 
naclports: sdl depends on regal; regal: disabled for current arch: pnacl.
make: *** [sdl] Error 1

What version of the product are you using? On what operating system?
Version: 000c0d1
OS: Linux

Please provide any additional information below.
I bisected and 000c0d1 (https://codereview.chromium.org/534683003) is the first 
revision that doesn't build SDL with NACL_ARCH=pnacl.

Original issue reported on code.google.com by mgiuca@chromium.org on 11 Sep 2014 at 12:30

GoogleCodeExporter commented 9 years ago
Unfortunately there is but in the pnacl toolchain right now which means it 
can't compile regal successful.

sdl depends on regal for opengl.  The change you found started enforcing 
dependencies.

There are several possible solutions (from easiest to hardest):

1) locally edit port/sdl/pkg_info and remove the regal dependency.
2) add support for "soft-dependencies" which will allow sdl to compile even 
when regal cannot be compiled.
3) fix the pnacl toolchain.

Original comment by sbc@chromium.org on 11 Sep 2014 at 12:36

GoogleCodeExporter commented 9 years ago
/this is a but/there is bug/

Original comment by sbc@google.com on 11 Sep 2014 at 12:37

GoogleCodeExporter commented 9 years ago
But it was working fine before you started enforcing the dependencies (unless 
there is an issue I haven't hit yet). Is it necessary to specify regal as a 
dependency of SDL?

Original comment by mgiuca@chromium.org on 11 Sep 2014 at 12:39

GoogleCodeExporter commented 9 years ago
regal is "soft" dependency of SDL which means that it will detect and use it if 
it finds it but it will build (without opengl support) even without it.

Prior to 000c0d1 all dependencies were soft, and not they are all hard, which 
in almost all cases except this one is better I think.

Original comment by sbc@google.com on 11 Sep 2014 at 12:41