varnish / libvmod-digest

Digest and HMAC vmod
Other
50 stars 27 forks source link

build fails with Varnish 5.2/master, @ '# error "include vrt.h before vcl.h"' #26

Closed ghost closed 7 years ago

ghost commented 7 years ago

with

    /usr/local/varnish/sbin/varnishd -V
        varnishd (varnish-trunk revision 9e5dfacd0)
        Copyright (c) 2006 Verdens Gang AS
        Copyright (c) 2006-2015 Varnish Software AS

building varnish5-libvmod-digest

    git log | head
        commit 09978549a8abb07d84e0492621580f3209378dc3
        Author: Piotr Czapla <github@piotrczapla.com>
        Date:   Sat Feb 18 13:51:57 2017 +0100

fails

    ./autogen.sh
    ./configure ...
    make V=1
        make  all-recursive
            make[1]: Entering directory '/usr/local/src/varnish5-libvmod-digest'
            Making all in src
            make[2]: Entering directory '/usr/local/src/varnish5-libvmod-digest/src'
            /bin/sh ../libtool  --tag=CC   --mode=compile /usr/bin/gcc-7 -DHAVE_CONFIG_H -I. -I..  -I/usr/local/varnish/include/varnish -Wall -Wextra -Werror -I/usr/local/include  -O3 -Wall -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fmessage-length=0 -grecord-gcc-switches -march=native -mtune=native -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c -o vmod_digest.lo vmod_digest.c
            libtool: compile:  /usr/bin/gcc-7 -DHAVE_CONFIG_H -I. -I.. -I/usr/local/varnish/include/varnish -Wall -Wextra -Werror -I/usr/local/include -O3 -Wall -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fmessage-length=0 -grecord-gcc-switches -march=native -mtune=native -MT vmod_digest.lo -MD -MP -MF .deps/vmod_digest.Tpo -c vmod_digest.c  -fPIC -DPIC -o .libs/vmod_digest.o
            In file included from vmod_digest.c:54:0:
            /usr/local/varnish/include/varnish/vcl.h:14:4: error: #error "include vrt.h before vcl.h"
             #  error "include vrt.h before vcl.h"
                ^~~~~
            /usr/local/varnish/include/varnish/vcl.h:69:2: error: unknown type name ‘vcl_event_f’
              vcl_event_f   *event_vcl;
              ^~~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:70:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *recv_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:71:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *pipe_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:72:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *pass_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:73:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *hash_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:74:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *purge_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:75:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *miss_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:76:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *hit_func;
              ^~~~~~~~~~
            /usr/local/varnish/include/varnish/vcl.h:77:2: error: unknown type name ‘vcl_func_f’
              vcl_func_f *deliver_func;
              ^~~~~~~~~~
            ...
dridi commented 7 years ago

I tested with 5.2.0 and it builds fine, the test suite passes too. So only varnish-trunk breaks, and I'm not keen on supporting trunk while the ABI work is still ongoing. We'll revisit this after the 3 months half time.

For reference: varnish/varnish-modules#83

ghost commented 7 years ago

Ok. Back to 5.1.0 for now.