#61 eboard 0.9.5 fails to configure

closed-out-of-date
Felipe Bergo
9
2008-02-18
2003-12-17
No

Since 0.9.5, configure fails when searching several
includes since sys/types.h is not included, hence cc fails.
Below it's a diff to fix this. This works for me, tho
I'm not 100% happy with it. btw, this is OpenBSD, but
I'd expect similar behavior in other BSD systems as well.

f.-

Discussion

  •  
    Attachments
  • Logged In: YES
    user_id=50493

    ops, this time is (hopefully) attached.

     
  • Felipe Bergo
    Felipe Bergo
    2003-12-17

    Logged In: YES
    user_id=23863

    BSD include files are fucked up -- if they need sys/types.h,
    they should include it themselves. But next version will
    have a fix for this anyway. And 0.9.5 compiles finely on
    FreeBSD 5.1.

     
  • Felipe Bergo
    Felipe Bergo
    2003-12-17

    • labels: --> compiling/installing
    • status: open --> open-accepted
     
  • Felipe Bergo
    Felipe Bergo
    2003-12-17

    • assigned_to: nobody --> bergo
     
  • Felipe Bergo
    Felipe Bergo
    2007-01-01

    • priority: 5 --> 9
     
  • Logged In: NO

    I've tested this on a VM, and it compiles and runs on OpenBSD, but the sound doesn't work. Attached is a patch to fix this:

    --- configure 2007-05-24 16:20:19.589966963 +0300
    +++ configure 2007-05-24 21:00:07.853812053 +0300
    @@ -356,11 +356,11 @@

    if (run_cmd($cxx,@cxxflags,"-c","test.cc","-o","xxtest.o") != 0) {
    print ": no\n";
    - $y = header_def($x);
    + $y = header_def($z);
    print CONFIGH "#undef $y\n";
    ++$fail;
    } else {
    - $y = header_def($x);
    + $y = header_def($z);
    print CONFIGH "#define $y 1\n";
    print "\r";
    $y = spaces(40);
    @@ -510,7 +510,7 @@
    }

    #optional headers
    -header_check("strings.h","sys/soundcard.h","sys/audioio.h","linux/joystick.h");
    +header_check("strings.h","sys/soundcard.h","BSDBUGsys/audioio.h","linux/joystick.h");

    $t1=macro_check("netinet/in.h","IPPROTO_TCP","HAVE_IPPROTO_TCP_ON_IN_H");
    $t2=macro_check("netinet/in.h","TCP_NODELAY","HAVE_TCP_NODELAY_ON_IN_H");
    --- sound.cc 2007-05-23 21:57:45.000000000 +0300
    +++ sound.cc 2007-05-24 20:58:31.213555130 +0300
    @@ -51,11 +51,13 @@

    #define OSS_DRIVER 1
    #include <sys/soundcard.h>
    +#define SOUND_DEVICE "/dev/dsp"

    #elif defined HAVE_SYS_AUDIOIO_H

    #define OPENBSD_DRIVER 1
    #include <sys/audioio.h>
    +#define SOUND_DEVICE "/dev/audio"

    // Solaris has sys/audio.h but is incompatible with OpenBSD
    #ifndef AUMODE_PLAY
    @@ -74,7 +76,7 @@
    Pitch=800;
    Duration=250;
    Count=1;
    - strcpy(Device,"/dev/dsp");
    + strcpy(Device,SOUND_DEVICE);
    ExtraData[0]=0;
    enabled = true;
    }
    @@ -157,7 +159,7 @@
    s << e.Device << ',' << e.Count << ',' << (e.enabled?1:0);
    break;
    case EXT_WAVE:
    - if (e.Device[0] == 0) strcpy(e.Device,"/dev/dsp");
    + if (e.Device[0] == 0) strcpy(e.Device,SOUND_DEVICE);
    s << "1," << e.Device << ',' << e.ExtraData;
    s << ',' << (e.enabled?1:0);
    break;

     
  • Logged In: NO

    One thing I forgot:

    sound.cc:206 execlp("sox",ExtraData,"-t","ossdsp",Device,0);

    should be replaced with:

    #ifdef OPENBSD_DRIVER
    execlp("sox", ExtraData, "-t", "sunau", Device, NULL);
    #else
    execlp("sox", ExtraData, "-t", "ossdsp", Device, NULL);
    #endif

     
  • Felipe Bergo
    Felipe Bergo
    2008-02-18

    Logged In: YES
    user_id=23863
    Originator: NO

    whatever this was, 0.9.5 is long gone.

     
  • Felipe Bergo
    Felipe Bergo
    2008-02-18

    • status: open-accepted --> closed-out-of-date