hercules-390 / hyperion

Hercules 390
Other
251 stars 70 forks source link

Building latest on OpenBSD 7.0 fails -- error: field has incomplete type 'struct rtentry' #295

Open kapitaali opened 2 years ago

kapitaali commented 2 years ago

I did a git clone of the current version.

bash-5.1$ uname -a
OpenBSD 7.0 GENERIC.MP#2 amd64

bash-5.1$ cmake --version
cmake version 3.20.3

CMake suite maintained and supported by Kitware (kitware.com/cmake).

Failed on:

[ 12%] Linking C shared library libhercu.so
[ 12%] Built target hercu
[ 13%] Building C object CMakeFiles/hercifc.dir/hercifc.c.o
In file included from /home/th/mainframe/hyperion/hercifc.c:23:
In file included from /home/th/mainframe/hyperion/hstdinc.h:257:
/home/th/mainframe/hyperion/hostopts.h:380:1: warning: /home/th/mainframe/hyperion/hostopts.h(380) : warning : unknown target platform: defaulting to generic platform settings [-W#pragma-messages]
WARNING( "unknown target platform: defaulting to generic platform settings" )
^
/home/th/mainframe/hyperion/ccfixme.h:85:33: note: expanded from macro 'WARNING'
  #define WARNING( _str )       QPRAGMA( message(  WARN_LINE  _str ))
                                ^
/home/th/mainframe/hyperion/ccfixme.h:47:33: note: expanded from macro 'QPRAGMA'
  #define QPRAGMA( x )          _Pragma( #x )
                                ^
<scratch space>:3:2: note: expanded from here
 message( WARN_LINE "unknown target platform: defaulting to generic platform settings" )
 ^
In file included from /home/th/mainframe/hyperion/hercifc.c:27:
/home/th/mainframe/hyperion/hercifc.h:26:25: error: field has incomplete type 'struct rtentry'
        struct rtentry  rtentry;
                        ^
/usr/include/net/route.h:360:9: note: forward declaration of 'struct rtentry'
        struct  rtentry *ro_rt;
                ^
/home/th/mainframe/hyperion/hercifc.c:114:14: error: use of undeclared identifier 'TUNSETIFF'
        case TUNSETIFF:
             ^
1 warning and 2 errors generated.
*** Error 1 in . (CMakeFiles/hercifc.dir/build.make:76 'CMakeFiles/hercifc.dir/hercifc.c.o': /usr/bin/cc -Dhercifc_EXPORTS -I/home/th/mainfr...)
*** Error 2 in . (CMakeFiles/Makefile2:330 'CMakeFiles/hercifc.dir/all': /usr/bin/make -s -f CMakeFiles/hercifc.dir/build.make CMakeFiles/he...)
*** Error 2 in /home/th/mainframe/build-hyperion (Makefile:166 'all': /usr/bin/make -s -f CMakeFiles/Makefile2 all)

And another thing, In hercules-3.13 sources, the install instructions ask you to run ./autogen.sh but such file does not exist. If you could help me locate the file, I might try building v3.13.