Print this page
3748 zfs headers should be C++ compatible
Submitted by:   Justin Gibbs <justing@spectralogic.com>
Submitted by:   Will Andrews <willa@spectralogic.com>
Reviewed by:    Matthew Ahrens <mahrens@delphix.com>

@@ -25,10 +25,11 @@
 # Copyright (c) 2012 by Delphix. All rights reserved.
 #
 
 PROG=           zfs
 OBJS=           zfs_main.o zfs_iter.o
+OUTPUTS=        $(OBJS) zfs_hdrck.cpp zfs_hdrck.o
 SRCS=           $(OBJS:%.o=%.c)
 POFILES=        zfs_main.po zfs_iter.po
 POFILE=         zfs.po
 
 include ../Makefile.cmd

@@ -67,23 +68,29 @@
 
 .PARALLEL:
 
 all: $(PROG)
 
-$(PROG): $(OBJS)
+$(PROG): $(OUTPUTS)
         $(LINK.c) -o $@ $(OBJS) $(LDLIBS)
         $(POST_PROCESS)
 
 install: all $(ROOTSBINPROG) $(ROOTUSRSBINLINKS) $(USRLIBFSTYPELINKS) \
         $(ROOTETCFSTYPELINKS)
 
+zfs_hdrck.o: zfs_hdrck.cpp
+        $(COMPILE.cc) -o $@ $^
+
+zfs_hdrck.cpp:
+        find . -name '*.[ch]' | xargs grep -h '^#include <' > $@
+
 $(POFILE): $(POFILES)
         $(RM) $@
         cat $(POFILES) > $@
 
 clean:
-        $(RM) $(OBJS)
+        $(RM) $(PROG) $(OUTPUTS)
 
 lint:   lint_SRCS
 
 # Links from /usr/sbin to /sbin
 $(ROOTUSRSBINLINKS):