-EXTRA_DIST = spl.h
-EXTRA_DIST += spl-condvar.h spl-kmem.h spl-random.h spl-thread.h
-EXTRA_DIST += spl-types.h spl-cred.h spl-kstat.h spl-rwlock.h
-EXTRA_DIST += spl-time.h spl-callb.h spl-generic.h spl-mutex.h
-EXTRA_DIST += spl-taskq.h spl-timer.h
-EXTRA_DIST += splat-ctl.h
-EXTRA_DIST += list.h
+SUBDIRS = fs linux rpc sharefs sys util vm
+
+COMMON_H =
+
+KERNEL_H = \
+ $(top_srcdir)/include/splat-ctl.h \
+ $(top_srcdir)/include/spl-ctl.h \
+ $(top_srcdir)/include/strings.h \
+ $(top_srcdir)/include/unistd.h
+
+USER_H =
+
+EXTRA_DIST = $(COMMON_H) $(KERNEL_H) $(USER_H)
+
+if CONFIG_KERNEL
+kerneldir = @prefix@/src/spl-$(VERSION)/include
+kernel_HEADERS = $(KERNEL_H)
+endif