It's exactly like I suspected: a system header is #defining bswap64 as a macro, causing a syntax error in my local definition. This is a upstream bug twice over. First, nothing should be giving you <machine/bswap.h> if you don't ask for it. Second, the manpage clearly states that bswap64 is a function, so it's unacceptable to implement it as a macro.
The first bug might be either NetBSD or OpenSSL's fault, I need to figure out which. The second one is clearly NetBSD's fault. I'll deal with the OpenSSL fix if a fix is needed. I'll need you to do the NetBSD reporting since I don't have a NetBSD system and won't be able to answer any follow-up questions if I file the ticket myself. For the meantime, I'll probably have to work around the issue by renaming that function in libaes_siv. On Thu, Feb 14, 2019 at 11:33 PM Daniel Franke <dfoxfra...@gmail.com> wrote: > > This looks like namespace pollution of some kind -- perhaps one of > NetBSD's standard C headers defining a bswap64 macro that conflicts > with my definition. Can you send me what aes_siv.c looks like on your > system after preprocessing? > > I'm not going to support CMake 2, but CentOS has CMake 3 available as > the 'cmake3' package. > > On Thu, Feb 14, 2019 at 11:10 PM Hal Murray <hmur...@megapathdsl.net> wrote: > > > > > > dfoxfra...@gmail.com said: > > > I think what you did will probably work if you delete your CMakeCache and > > > try > > > again > > > > Thanks. That is the hint I needed. I was scp-ing stuff from my main system > > to others giving them a bogus cache. > > > > --------- > > > > It doesn't build on NetBSD. Do you recognize the error: > > > > [ 11%] Building C object CMakeFiles/runtests.dir/aes_siv_test.c.o > > In file included from /usr/include/stddef.h:37:0, > > from /home/murray/ntpsec/libaes_siv/aes_siv.h:8, > > from /home/murray/ntpsec/libaes_siv/aes_siv.c:5, > > from /home/murray/ntpsec/libaes_siv/aes_siv_test.c:3: > > /home/murray/ntpsec/libaes_siv/aes_siv.c:114:24: error: expected declaration > > specifiers or '...' before '__builtin_constant_p' > > static inline uint64_t bswap64(uint64_t x) { return __builtin_bswap64(x); } > > > > --------- > > > > Any chance of building it with an old cmake? > > > > CMake Error at CMakeLists.txt:1 (cmake_minimum_required): > > CMake 3.0 or higher is required. You are running version 2.8.12.2 > > > > That's from CentOS. > > > > > > > > > > -- > > These are my opinions. I hate spam. > > > > > > _______________________________________________ devel mailing list devel@ntpsec.org http://lists.ntpsec.org/mailman/listinfo/devel