Just putting the infrastructure in place and having it disabled is
actually good progress here; have the compiler make itself useful and
tell us what we have to do to get the basics right.
(The next commit will cause a *lot* of compile errors as soon as
`PIM_V6_TEMP_BREAK` is set; but there is no reason to force everything
into a single step here.)
To enable `pim_addr = in6_addr`, run `make PIM_V6_TEMP_BREAK=1` (remove
previous compile results with `rm pimd/pim6d-*.o`)
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
#if PIM_IPV == 4
return bprintfrr(buf, "%pI4", addr);
+#elif !defined(PIM_V6_TEMP_BREAK)
+ CPP_NOTICE("note IPv6 typing for pim_addr is temporarily disabled.");
+ return bprintfrr(buf, "%pI4", addr);
#else
return bprintfrr(buf, "%pI6", addr);
#endif
#include "jhash.h"
-#if PIM_IPV == 4
+/* temporarily disable IPv6 types to keep code compiling.
+ * Defining PIM_V6_TEMP_BREAK will show a lot of compile errors - they are
+ * very useful to see TODOs.
+ */
+#if PIM_IPV == 4 || !defined(PIM_V6_TEMP_BREAK)
typedef struct in_addr pim_addr;
#define PIM_ADDRSTRLEN INET_ADDRSTRLEN
#else
# (change noinst_ to sbin_ below to install it.)
#
noinst_PROGRAMS += pimd/pim6d
-pimd_pim6d_CFLAGS = $(AM_CFLAGS) -DPIM_IPV=6
+pimd_pim6d_CFLAGS = $(AM_CFLAGS) -DPIM_IPV=6 $(and $(PIM_V6_TEMP_BREAK),-DPIM_V6_TEMP_BREAK)
pimd_pim6d_LDADD = lib/libfrr.la $(LIBCAP)
endif
endif