Here there are new patchiest with both versions whichever suits the best can be picked up.
On 28 June 2015 at 13:11, David CARLIER <[email protected]> wrote: > Hi yes why not .... this or something like > > #if(defined __NetBSD__ && __NetBSD_Version__ >= 600000000) > #define haproxy_popcount(a) popcountl(a) > #else > static inline unsigned int haproxy_popcount(unsigned long a) > { > ... > } > #endif > > Kind regards. > > On 28 June 2015 at 12:36, Thierry FOURNIER <[email protected]> wrote: > >> Hi David, >> >> Maybe should be simpler to declare an haproxy "popcount" function with >> a generic name: >> >> static inline unsigned int haproxy_popcount(unsigned long a) >> >> And modify the content of the function with the macro: >> >> static inline unsigned int haproxy_popcount(unsigned long a) >> { >> #if(defined __NetBSD__ && __NetBSD_Version__ >= 600000000) >> return popcountl(a); >> #else >> ... <original implementation> ... >> #endif >> } >> >> This type of modification prevent the multiplication of '#ifdef' in the >> Haproxy code. >> >> Thierry. >> >> >> On Sun, 28 Jun 2015 11:17:25 +0100 >> David CARLIER <[email protected]> wrote: >> >> > Hello all, >> > >> > Short story : >> > >> > Haproxy does not compile on NetBSD because conflicting popcount. >> > >> > Long story : >> > >> > I was trying to compile Haproxy as unikernel image via rump kernel >> tools on >> > Linux for Xen. The patch series add NetBSD TARGET and checks if we re >> > dealing with NetBSD which carry popcount* functions. >> > It might have an historical and / or technical reason why NetBSD is not >> > included in the supported platform which I ignore. Also, for the sake of >> > "simplicity", I may have just used popcount but I find popcountl more >> > appropriate for NetBSD's case. I the third patch looks too "invasive" it >> > can be safely ignored. >> > >> > Hope it has any use. >> > >> > Thanks. >> > >> > Kind regards. >> > >
0001-Add-netbsd-TARGET.patch
Description: Binary data
0002-Haproxy-popcount-implementation-or-NetBSD-internal-if-6.0-rel.patch
Description: Binary data
0002-if-it-is-NetBSD-6.0-release-we-use-popcountl.patch
Description: Binary data
0003-popcount-renamed-to-haproxy_popcount.patch
Description: Binary data

