Page MenuHomeFreeBSD

D32498.id96918.diff
No OneTemporary

D32498.id96918.diff

Index: bin/hdrtest/Makefile
===================================================================
--- /dev/null
+++ bin/hdrtest/Makefile
@@ -0,0 +1,44 @@
+#
+# A number of header files in sys/* have, going back to 7th Edition Unix in
+# 1979, reqiured other files (like sys/types.h) to compile. Likewise the 4BSD
+# networking code has had prerequisites. However, going back to around the turn
+# of the century, other systems have made them be independently includable
+# (wide-spread header include protection post-dates 7th edition Unix by maybe 4
+# or 5 years judging from netnews sources). Start down the path of making them
+# all independently includable by creating this test that fails buildworld when
+# they are not.
+#
+PROG= hdrtest
+SRCS= hdrtest.c
+INTERNALPROG= This is a compile-only test
+MAN=
+
+# Some files have to be clean for extra defines too...
+#CFLAGS.event.c= -D_WANT_KEVENT32 -D_WANT_FREEBSD11_KEVENT
+
+.include "goodfiles.inc"
+
+.for h in ${HDRS}
+SRCS+= ${h:R}.c
+CLEANFILES+=${h:R}.c
+${h:R}.c:
+ echo "#include <$h>" > ${.TARGET}
+.endfor
+
+#
+# Target to make the current known good list. Only run it when this hdrtest is
+# building so the list never shrinks (except when files are removed entirely
+# that are on the list).
+#
+goodfiles.inc!
+ @(cd ${SRCTOP}/sys; \
+ echo "# DO NOT EDIT-- this file is automatically @""generated."; \
+ echo "HDRS= \\"; \
+ for i in sys/*.h net*/*.h; do \
+ echo "#include <$$i>" | \
+ ${CC} ${CFLAGS} -xc - -c -o /dev/null 2> /dev/null && \
+ echo " $$i \\"; \
+ done; \
+ echo) > ${.CURDIR}/goodfiles.inc
+
+.include <bsd.prog.mk>
Index: bin/hdrtest/goodfiles.inc
===================================================================
--- /dev/null
+++ bin/hdrtest/goodfiles.inc
@@ -0,0 +1,241 @@
+# DO NOT EDIT-- this file is automatically @generated.
+HDRS= \
+ sys/_bitset.h \
+ sys/_bus_dma.h \
+ sys/_clock_id.h \
+ sys/_cpuset.h \
+ sys/_domainset.h \
+ sys/_eventhandler.h \
+ sys/_iovec.h \
+ sys/_null.h \
+ sys/_pthreadtypes.h \
+ sys/_stdarg.h \
+ sys/_termios.h \
+ sys/_timespec.h \
+ sys/_timeval.h \
+ sys/_types.h \
+ sys/_uio.h \
+ sys/_umtx.h \
+ sys/_winsize.h \
+ sys/abi_compat.h \
+ sys/acl.h \
+ sys/aio.h \
+ sys/arb.h \
+ sys/asan.h \
+ sys/assym.h \
+ sys/auxv.h \
+ sys/bitset.h \
+ sys/blockcount.h \
+ sys/boot.h \
+ sys/bufobj.h \
+ sys/capsicum.h \
+ sys/cdefs.h \
+ sys/cdio.h \
+ sys/chio.h \
+ sys/ck.h \
+ sys/clock.h \
+ sys/cnv.h \
+ sys/compressor.h \
+ sys/condvar.h \
+ sys/consio.h \
+ sys/csan.h \
+ sys/ctype.h \
+ sys/devicestat.h \
+ sys/dirent.h \
+ sys/disk.h \
+ sys/disklabel.h \
+ sys/dkstat.h \
+ sys/dnv.h \
+ sys/elf.h \
+ sys/endian.h \
+ sys/errno.h \
+ sys/event.h \
+ sys/eventfd.h \
+ sys/fbio.h \
+ sys/fcntl.h \
+ sys/fdcio.h \
+ sys/file.h \
+ sys/filio.h \
+ sys/gsb_crc32.h \
+ sys/hash.h \
+ sys/imgact_binmisc.h \
+ sys/ioccom.h \
+ sys/ioctl.h \
+ sys/ipc.h \
+ sys/joystick.h \
+ sys/kbio.h \
+ sys/kcov.h \
+ sys/kenv.h \
+ sys/kern_prefetch.h \
+ sys/kerneldump.h \
+ sys/kpilite.h \
+ sys/kthread.h \
+ sys/ktr.h \
+ sys/ktr_class.h \
+ sys/limits.h \
+ sys/link_elf.h \
+ sys/lockstat.h \
+ sys/malloc.h \
+ sys/mchain.h \
+ sys/mman.h \
+ sys/mount.h \
+ sys/mouse.h \
+ sys/mqueue.h \
+ sys/msan.h \
+ sys/msg.h \
+ sys/mtio.h \
+ sys/nlist_aout.h \
+ sys/nv.h \
+ sys/param.h \
+ sys/pcpu.h \
+ sys/pidctrl.h \
+ sys/poll.h \
+ sys/priv.h \
+ sys/procctl.h \
+ sys/procdesc.h \
+ sys/procfs.h \
+ sys/protosw.h \
+ sys/ptio.h \
+ sys/ptrace.h \
+ sys/queue.h \
+ sys/random.h \
+ sys/rangelock.h \
+ sys/rangeset.h \
+ sys/rctl.h \
+ sys/reboot.h \
+ sys/reg.h \
+ sys/regression.h \
+ sys/resource.h \
+ sys/sched.h \
+ sys/sdt.h \
+ sys/select.h \
+ sys/selinfo.h \
+ sys/sem.h \
+ sys/seqc.h \
+ sys/serial.h \
+ sys/shm.h \
+ sys/signal.h \
+ sys/sleepqueue.h \
+ sys/slicer.h \
+ sys/smp.h \
+ sys/sndstat.h \
+ sys/snoop.h \
+ sys/sockbuf.h \
+ sys/socket.h \
+ sys/sockio.h \
+ sys/soundcard.h \
+ sys/specialfd.h \
+ sys/spigenio.h \
+ sys/stat.h \
+ sys/statvfs.h \
+ sys/stdatomic.h \
+ sys/stddef.h \
+ sys/stdint.h \
+ sys/syscall.h \
+ sys/sysctl.h \
+ sys/sysent.h \
+ sys/syslog.h \
+ sys/sysproto.h \
+ sys/thr.h \
+ sys/tim_filter.h \
+ sys/time.h \
+ sys/timers.h \
+ sys/times.h \
+ sys/timespec.h \
+ sys/timex.h \
+ sys/tree.h \
+ sys/tslog.h \
+ sys/tty.h \
+ sys/ttycom.h \
+ sys/ttydefaults.h \
+ sys/turnstile.h \
+ sys/types.h \
+ sys/ucontext.h \
+ sys/ucred.h \
+ sys/uio.h \
+ sys/umtxvar.h \
+ sys/un.h \
+ sys/unistd.h \
+ sys/utsname.h \
+ sys/vmem.h \
+ sys/wait.h \
+ sys/watchdog.h \
+ net/debugnet.h \
+ net/dlt.h \
+ net/ieee8023ad_lacp.h \
+ net/ieee_oui.h \
+ net/if.h \
+ net/if_clone.h \
+ net/if_gif.h \
+ net/if_gre.h \
+ net/if_ipsec.h \
+ net/if_types.h \
+ net/if_vxlan.h \
+ net/infiniband.h \
+ net/netmap_user.h \
+ net/netmap_virt.h \
+ net/ppp_defs.h \
+ net/sff8436.h \
+ net/sff8472.h \
+ net/vnet.h \
+ net80211/ieee80211_phy.h \
+ net80211/ieee80211_regdomain.h \
+ net80211/ieee80211_wps.h \
+ netgraph/ng_UI.h \
+ netgraph/ng_atmllc.h \
+ netgraph/ng_device.h \
+ netgraph/ng_echo.h \
+ netgraph/ng_eiface.h \
+ netgraph/ng_ether.h \
+ netgraph/ng_ether_echo.h \
+ netgraph/ng_frame_relay.h \
+ netgraph/ng_gif.h \
+ netgraph/ng_gif_demux.h \
+ netgraph/ng_hub.h \
+ netgraph/ng_iface.h \
+ netgraph/ng_ip_input.h \
+ netgraph/ng_ipfw.h \
+ netgraph/ng_rfc1490.h \
+ netgraph/ng_split.h \
+ netgraph/ng_sppp.h \
+ netgraph/ng_tty.h \
+ netinet/in.h \
+ netinet/ip_divert.h \
+ netinet/ip_ecn.h \
+ netinet/ip_encap.h \
+ netinet/pim.h \
+ netinet/sctp.h \
+ netinet/sctp_asconf.h \
+ netinet/sctp_constants.h \
+ netinet/sctp_crc32.h \
+ netinet/sctp_header.h \
+ netinet/sctp_indata.h \
+ netinet/sctp_input.h \
+ netinet/sctp_lock_bsd.h \
+ netinet/sctp_output.h \
+ netinet/sctp_peeloff.h \
+ netinet/sctp_timer.h \
+ netinet/sctp_uio.h \
+ netinet/sctp_var.h \
+ netinet/sctputil.h \
+ netinet/tcp.h \
+ netinet/tcp_accounting.h \
+ netinet/tcp_fastopen.h \
+ netinet/tcp_fsm.h \
+ netinet/tcp_seq.h \
+ netinet/tcp_syncache.h \
+ netinet/tcp_timer.h \
+ netinet6/in6_ifattach.h \
+ netinet6/in6_pcb.h \
+ netinet6/ip6_ecn.h \
+ netinet6/scope6_var.h \
+ netinet6/sctp6_var.h \
+ netinet6/tcp6_var.h \
+ netinet6/udp6_var.h \
+ netipsec/ipsec_support.h \
+ netipsec/key.h \
+ netipsec/key_var.h \
+ netipsec/keydb.h \
+ netsmb/smb_dev.h \
+ netsmb/smb_trantcp.h \
+

File Metadata

Mime Type
text/plain
Expires
Sun, Aug 2, 9:44 PM (20 h, 15 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35855070
Default Alt Text
D32498.id96918.diff (6 KB)

Event Timeline