properly build a library for the content of the lib directory
diff --git a/Makefile.am b/Makefile.am
index fcca031..581e1bd 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,2 +1,2 @@
 ## Process this file with automake to produce Makefile.in
-SUBDIRS = gtp ggsn sgsnemu doc
+SUBDIRS = lib gtp ggsn sgsnemu doc
diff --git a/configure.in b/configure.in
index bd55028..36a5cbe 100644
--- a/configure.in
+++ b/configure.in
@@ -109,6 +109,7 @@
                  doc/Makefile
                  ggsn/Makefile
                  gtp/Makefile
+                 lib/Makefile
                  intl/Makefile
                  po/Makefile
                  sgsnemu/Makefile
diff --git a/ggsn/Makefile.am b/ggsn/Makefile.am
index 0aff773..91aa726 100644
--- a/ggsn/Makefile.am
+++ b/ggsn/Makefile.am
@@ -6,10 +6,7 @@
 
 AM_CFLAGS = -O2 -D_GNU_SOURCE -fno-builtin -Wall -DSBINDIR='"$(sbindir)"' -ggdb
 
-ggsn_LDADD = @LIBOBJS@ @EXEC_LDADD@ -lgtp -L../gtp
-
-#ggsn_DEPENDENCIES = ../gtp/libgtp.la
-
-ggsn_SOURCES = ggsn.c ../lib/tun.c ../lib/tun.h cmdline.c cmdline.h ../lib/ippool.h ../lib/ippool.c ../lib/syserr.h ../lib/syserr.c ../lib/lookup.c ../lib/lookup.h
-#ggsn_SOURCES = ggsn.c cmdline.c cmdline.h
+ggsn_LDADD = @LIBOBJS@ @EXEC_LDADD@ -lgtp -L../gtp ../lib/libmisc.a
+ggsn_DEPENDENCIES = ../gtp/libgtp.la ../lib/libmisc.a
+ggsn_SOURCES = ggsn.c cmdline.c cmdline.h
 
diff --git a/lib/Makefile.am b/lib/Makefile.am
new file mode 100644
index 0000000..7c06e27
--- /dev/null
+++ b/lib/Makefile.am
@@ -0,0 +1,7 @@
+noinst_LIBRARIES = libmisc.a
+
+noinst_HEADERS = gnugetopt.h ippool.h lookup.h syserr.h tun.h
+
+AM_CFLAGS = -O2 -fno-builtin -Wall -DSBINDIR='"$(sbindir)"' -ggdb
+
+libmisc_a_SOURCES = getopt1.c getopt.c ippool.c lookup.c syserr.c tun.c
diff --git a/sgsnemu/Makefile.am b/sgsnemu/Makefile.am
index eecd9fd..e6b1d7d 100644
--- a/sgsnemu/Makefile.am
+++ b/sgsnemu/Makefile.am
@@ -6,9 +6,6 @@
 
 AM_CFLAGS = -O2 -D_GNU_SOURCE -fno-builtin -Wall -DSBINDIR='"$(sbindir)"' -ggdb
 
-sgsnemu_LDADD = @LIBOBJS@ @EXEC_LDADD@ -lgtp -L../gtp 
-
-#sgsnemu_DEPENDENCIES = ../gtp/libgtp.la
-
-sgsnemu_SOURCES = sgsnemu.c ../lib/tun.c ../lib/tun.h cmdline.c cmdline.h ../lib/ippool.h ../lib/ippool.c ../lib/syserr.h ../lib/syserr.c ../lib/lookup.c ../lib/lookup.h
-#sgsnemu_SOURCES = sgsnemu.c cmdline.c cmdline.h
+sgsnemu_LDADD = @LIBOBJS@ @EXEC_LDADD@ -lgtp -L../gtp ../lib/libmisc.a
+sgsnemu_DEPENDENCIES = ../gtp/libgtp.la ../lib/libmisc.a
+sgsnemu_SOURCES = sgsnemu.c cmdline.c cmdline.h