updates.
[silc.git] / lib / Makefile.am.pre
index 54655a9e693bb6378462db33f1a8ada6ad9cd9a9..83a39e0315f182bf54de0998f2e4f9fa1e859ca6 100644 (file)
@@ -27,6 +27,7 @@ COMMONDIRS = \
        silcske \
        silcutil \
        silcclient \
+       silcsftp \
        dotconf \
        trq
 #        zlib
@@ -35,16 +36,6 @@ SUBDIRS = SILC_DISTRIBUTION_SUBDIRS
 DIST_SUBDIRS = SILC_DISTRIBUTION_SUBDIRS
 
 # SILC Library dirs
-if SILC_DIST_WIN32DLL
-SILCLIB_DIRS = \
-       silccore \
-       silccrypt \
-       silcsim \
-       silcmath \
-       silcske \
-       silcutil \
-       trq
-else
 SILCLIB_DIRS = \
        contrib \
        silccore \
@@ -53,9 +44,9 @@ SILCLIB_DIRS = \
        silcmath \
        silcske \
        silcutil \
+       silcsftp \
        trq \
        dotconf
-endif
 
 # SILC Client Library dirs
 SILCCLIENTLIB_DIRS = \
@@ -71,7 +62,7 @@ if SILC_DIST_TOOLKIT
 all:  remove libsilc.a libsilcclient.a
 else
 if SILC_DIST_WIN32DLL
-all:  remove libsilc.a libsilcclient.a
+all:  silc.dll silcclient.dll
 else
 all:  remove libsilc.a
 endif
@@ -82,11 +73,25 @@ remove:
        -rm -rf libsilc.a
        -rm -rf libsilcclient.a
 
+if SILC_DIST_WIN32DLL
+# WIN32 DLL generation
+silc.dll: libsilc.a
+       dllwrap --export-all --output-def silc.def --output-exp silc.exp \
+       --output-lib silc.lib --driver-name $(CC) --target i386-mingw32 \
+       -mno-cygwin -o silc.dll libsilc.a -lwsock32
+
+silcclient.dll: libsilcclient.a
+       dllwrap --export-all --output-def silcclient.def \
+       --output-lib silcclient.lib --output-exp silcclient.exp \
+       --driver-name $(CC) --target i386-mingw32 \
+       -mno-cygwin -o silcclient.dll libsilcclient.a -L. -lsilc -lwsock32
+endif
+
 libsilc.a:
        find $(SILCLIB_DIRS) -type f -name *.o | xargs $(AR) cru libsilc.a
-       ranlib libsilc.a
+       $(RANLIB) libsilc.a
 
 libsilcclient.a:
        find $(SILCCLIENTLIB_DIRS) -type f -name *.o | xargs $(AR) cru libsilcclient.a
-       ranlib libsilcclient.a
+       $(RANLIB) libsilcclient.a