diff --git a/Makefile.am b/Makefile.am
index 95b71b34209aee746ee262b00845e216b82bd64c..6d074c868ae931aaf87792ced42e414fc0982284 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,12 +1,26 @@
 SUBDIRS = . testsuite
 
+noinst_PROGRAMS = desdata
+
 libnettleincludedir = $(includedir)/nettle
 
 lib_LIBRARIES = libnettle.a
-libnettleinclude_HEADERS = arcfour.h
+libnettleinclude_HEADERS = aes.h arcfour.h des.h md5.h sha1.h
 
-libnettle_a_SOURCES = aes.c aes.h arcfour.c arcfour.h md5.c md5.h
+libnettle_a_SOURCES = aes.c aes.h arcfour.c arcfour.h des.c des.h \
+		      md5.c md5.h sha1.c sha1.h
 
 libnettle_a_LIBADD = @LIBOBJS@
 
-EXTRA_DIST = macros.h memxor.h
+EXTRA_DIST = macros.h memxor.h $(des_headers) descore.README
+# BUILT_SOURCE = $(des_headers)
+
+# desCore rules
+des_headers = $(srcdir)/parity.h $(srcdir)/rotors.h $(srcdir)/keymap.h 
+
+# Generate DES headers.
+$(des_headers): desdata
+	./desdata $@ > $@T
+	test -s $@T && mv -f $@T $@
+
+des.o: des.c des.h $(des_headers)