> Since the beginning of time, we've been running .api files through the C 
> preprocessor. Put all of your "typeonly..." definitions in a file, and 
> #include it. Should work immediately.

But not for any of the other language bindings...

Ole

> 
> Thanks to Damjan, there's only one copy of the suffix rule, in 
> .../src/suffix-rules.mk. Here's the relevant rule:
> 
> %.api.h: %.api @VPPAPIGEN@
>       @echo "  APIGEN  " $@ ;                                 \
>       mkdir -p `dirname $@` ;                                 \
>       $(CC) $(CPPFLAGS) -E -P -C -x c $<                      \
>       | @VPPAPIGEN@ --input - --output $@ --show-name $@ > /dev/null
> 
> HTH… Dave
> 
> -----Original Message-----
> From: vpp-dev-boun...@lists.fd.io [mailto:vpp-dev-boun...@lists.fd.io] On 
> Behalf Of Neale Ranns (nranns)
> Sent: Monday, November 20, 2017 3:28 AM
> To: vpp-dev@lists.fd.io
> Subject: [vpp-dev] RFC: Import/includes in .api files
> 
> 
> Hi All,
> 
> I’d like to be able to re-use types defined in one .api file in many other 
> .api files. My specific objective is to re-use a fib_path_t across the many 
> APIs that describe a destination to which to send packets.
> 
> My first attempt at this is:
>  https://gerrit.fd.io/r/#/c/9489/
> 
> I updated vppapigen to accept the keyword ‘import’, munch the subsequent 
> string, and then generate the #include in the resulting .api.h. then the fun 
> started… multiple type definitions, include guards, here be dragons, turn 
> back now and seek assistance.
> I later realised that an import statement is not required. If I create 
> vnet/fib/fib.api and add it to vnet_all_api_h.h at the top, then that has 
> some success. However, no import statement is not so friendly to other tools 
> that parse the .api files.
> 
> So an RFC that is really an RFH; how is it best to approach this?
> 
> Regards,
> Neale
> 
> 
> _______________________________________________
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev
> _______________________________________________
> vpp-dev mailing list
> vpp-dev@lists.fd.io
> https://lists.fd.io/mailman/listinfo/vpp-dev

Attachment: signature.asc
Description: Message signed with OpenPGP

_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to