[PATCH] Include libmd in freebsd-libs
Hello,
I'm sending the following patch for comments and possibly inclusion.
It introduces the libmd{0,-dev} binary packages in the freebsd-libs
source package. libmd is a message digest library (it includes digest
algorithms from the MD{4,5} and SHA{1,2} family).
My ultimate goal here is to have support for encrypted disk devices
(the "eli" class in geom), and libmd is a dependancy of the userland
geli(8) utility.
Laurent.
>From cc7bec8e638b0e45bfc5d8539ca3fb31dbfceaae Mon Sep 17 00:00:00 2001
From: Laurent Fousse <laurent@persil.lateralis.org>
Date: Fri, 17 Dec 2010 15:45:51 +0100
Subject: [PATCH 1/2] Build libmd.
---
debian/control | 15 ++++++++++++++
debian/libmd-dev.install | 49 ++++++++++++++++++++++++++++++++++++++++++++++
debian/libmd0.install | 1 +
debian/rules | 11 ++++++++-
4 files changed, 74 insertions(+), 2 deletions(-)
create mode 100644 debian/libmd-dev.install
create mode 100644 debian/libmd0.install
diff --git a/debian/control b/debian/control
index 6686571..8d0432a 100644
--- a/debian/control
+++ b/debian/control
@@ -187,6 +187,21 @@ Description: Development files for libmemstat
This package contains the header files and static library needed to
compile applications that use libmemstat.
+Package: libmd0
+Architecture: kfreebsd-any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: FreeBSD message digest library
+ The md library provides various message digest ("hash") functions.
+
+Package: libmd-dev
+Section: libdevel
+Architecture: kfreebsd-any
+Depends: libmd0 (= ${binary:Version}), ${misc:Depends}, libc0.1-dev | libc-dev,
+ libbsd-dev
+Description: Development files for libmd
+ This package contains the header files and static library needed to
+ compile applications that use libmd.
+
Package: libnetgraph4
Architecture: kfreebsd-any
Depends: ${shlibs:Depends}, ${misc:Depends}
diff --git a/debian/libmd-dev.install b/debian/libmd-dev.install
new file mode 100644
index 0000000..7f1d14e
--- /dev/null
+++ b/debian/libmd-dev.install
@@ -0,0 +1,49 @@
+usr/lib/libmd*.so
+usr/lib/libmd.a
+usr/share/man/man3/md2.3.gz
+usr/share/man/man3/MD2Data.3.gz
+usr/share/man/man3/MD2End.3.gz
+usr/share/man/man3/MD2File.3.gz
+usr/share/man/man3/MD2FileChunk.3.gz
+usr/share/man/man3/MD2Final.3.gz
+usr/share/man/man3/MD2Init.3.gz
+usr/share/man/man3/MD2Update.3.gz
+usr/share/man/man3/md4.3.gz
+usr/share/man/man3/MD4Data.3.gz
+usr/share/man/man3/MD4End.3.gz
+usr/share/man/man3/MD4File.3.gz
+usr/share/man/man3/MD4FileChunk.3.gz
+usr/share/man/man3/MD4Final.3.gz
+usr/share/man/man3/MD4Init.3.gz
+usr/share/man/man3/MD4Update.3.gz
+usr/share/man/man3/md5.3.gz
+usr/share/man/man3/MD5Data.3.gz
+usr/share/man/man3/MD5End.3.gz
+usr/share/man/man3/MD5File.3.gz
+usr/share/man/man3/MD5FileChunk.3.gz
+usr/share/man/man3/MD5Final.3.gz
+usr/share/man/man3/MD5Init.3.gz
+usr/share/man/man3/MD5Update.3.gz
+usr/share/man/man3/SHA1_Data.3.gz
+usr/share/man/man3/SHA1_End.3.gz
+usr/share/man/man3/SHA1_File.3.gz
+usr/share/man/man3/SHA1_FileChunk.3.gz
+usr/share/man/man3/SHA1_Final.3.gz
+usr/share/man/man3/SHA1_Init.3.gz
+usr/share/man/man3/SHA1_Update.3.gz
+usr/share/man/man3/sha256.3.gz
+usr/share/man/man3/SHA256_Data.3.gz
+usr/share/man/man3/SHA256_End.3.gz
+usr/share/man/man3/SHA256_File.3.gz
+usr/share/man/man3/SHA256_FileChunk.3.gz
+usr/share/man/man3/SHA256_Final.3.gz
+usr/share/man/man3/SHA256_Init.3.gz
+usr/share/man/man3/SHA256_Update.3.gz
+usr/share/man/man3/sha.3.gz
+usr/share/man/man3/SHA_Data.3.gz
+usr/share/man/man3/SHA_End.3.gz
+usr/share/man/man3/SHA_File.3.gz
+usr/share/man/man3/SHA_FileChunk.3.gz
+usr/share/man/man3/SHA_Final.3.gz
+usr/share/man/man3/SHA_Init.3.gz
+usr/share/man/man3/SHA_Update.3.gz
diff --git a/debian/libmd0.install b/debian/libmd0.install
new file mode 100644
index 0000000..56536be
--- /dev/null
+++ b/debian/libmd0.install
@@ -0,0 +1 @@
+usr/lib/libmd*.so.*
diff --git a/debian/rules b/debian/rules
index 525a9b9..6c794b0 100755
--- a/debian/rules
+++ b/debian/rules
@@ -29,7 +29,7 @@ export SHLIB_MAJOR=0
get-orig-source:
rm -rf $(ORIGDIR)
for i in lib/libcam lib/libdevstat lib/libgeom lib/libipx \
- lib/libkiconv lib/libnetgraph \
+ lib/libkiconv lib/libmd lib/libnetgraph \
lib/libkvm lib/libmemstat lib/libsbuf lib/libusb \
lib/libusbhid sys/cam ; do \
svn export $(SVN)/$$i $(ORIGDIR)/$$i ; \
@@ -49,7 +49,7 @@ patch-stamp:
QUILT_PATCHES=debian/patches quilt push -a || test $$? = 2
touch $@
-build: build-cam build-geom build-sbuf build-ipx build-kiconv build-kvm build-usbhid build-usb build-devstat build-memstat build-netgraph
+build: build-cam build-geom build-sbuf build-ipx build-kiconv build-kvm build-usbhid build-usb build-devstat build-memstat build-md build-netgraph
build-cam: build-cam-stamp
build-cam-stamp: patch build-sbuf
@@ -61,6 +61,11 @@ build-geom-stamp: patch build-sbuf
$(PMAKE) -C $(CURDIR)/lib/libgeom SHLIBDIR=./
touch $@
+build-md: build-md-stamp
+build-md-stamp: patch
+ $(PMAKE) -C $(CURDIR)/lib/libmd SHLIBDIR=./
+ touch $@
+
build-netgraph: build-netgraph-stamp
build-netgraph-stamp: patch
$(PMAKE) -C $(CURDIR)/lib/libnetgraph SHLIBDIR=./
@@ -113,6 +118,7 @@ clean:
$(PMAKE) -C $(CURDIR)/lib/libnetgraph clean
$(PMAKE) -C $(CURDIR)/lib/libdevstat clean
$(PMAKE) -C $(CURDIR)/lib/libmemstat clean
+ $(PMAKE) -C $(CURDIR)/lib/libmd clean
$(PMAKE) -C $(CURDIR)/lib/libgeom clean
$(PMAKE) -C $(CURDIR)/lib/libipx clean
$(PMAKE) -C $(CURDIR)/lib/libkiconv clean
@@ -140,6 +146,7 @@ install: build
$(PMAKE) -C $(CURDIR)/lib/libkvm install SHLIBDIR=/lib
$(PMAKE) -C $(CURDIR)/lib/libdevstat install SHLIBDIR=/usr/lib
$(PMAKE) -C $(CURDIR)/lib/libmemstat install SHLIBDIR=/usr/lib
+ $(PMAKE) -C $(CURDIR)/lib/libmd install SHLIBDIR=/usr/lib
$(PMAKE) -C $(CURDIR)/lib/libnetgraph install SHLIBDIR=/usr/lib
$(PMAKE) -C $(CURDIR)/lib/libusbhid install SHLIBDIR=/usr/lib
$(PMAKE) -C $(CURDIR)/lib/libusb install SHLIBDIR=/lib
--
1.7.2.3
>From 661a052926486d972423ff3c1a06b613b787b233 Mon Sep 17 00:00:00 2001
From: Laurent Fousse <laurent@persil.lateralis.org>
Date: Fri, 17 Dec 2010 15:59:48 +0100
Subject: [PATCH 2/2] Include missing header <stdint.h>.
---
lib/libmd/sha256.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/lib/libmd/sha256.h b/lib/libmd/sha256.h
index ce51787..930a121 100644
--- a/lib/libmd/sha256.h
+++ b/lib/libmd/sha256.h
@@ -30,6 +30,7 @@
#define _SHA256_H_
#include <sys/types.h>
+#include <stdint.h>
typedef struct SHA256Context {
uint32_t state[8];
--
1.7.2.3
Reply to: