What Ole said. This requires careful thought for impact to downstream API users.
Chris. > -----Original Message----- > From: vpp-dev-boun...@lists.fd.io [mailto:vpp-dev-boun...@lists.fd.io] On > Behalf Of Ole Troan > Sent: Monday, November 20, 2017 8:17 AM > To: Dave Barach (dbarach) <dbar...@cisco.com> > Cc: vpp-dev@lists.fd.io > Subject: Re: [vpp-dev] Import/includes in .api files > > > 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 _______________________________________________ vpp-dev mailing list vpp-dev@lists.fd.io https://lists.fd.io/mailman/listinfo/vpp-dev