silcmath \
silcske \
silcutil \
+ silcclient \
+ silcsftp \
dotconf \
trq
# zlib
silcmath \
silcske \
silcutil \
+ silcsftp \
trq \
dotconf
CLEANFILES = libsilc.a libsilcclient.a
DISTCLEANFILES = libsilc.a libsilcclient.a
+if SILC_DIST_CLIENT
all: remove libsilc.a libsilcclient.a
+else
+if SILC_DIST_TOOLKIT
+all: remove libsilc.a libsilcclient.a
+else
+if SILC_DIST_WIN32DLL
+all: silc.dll silcclient.dll
+else
+all: remove libsilc.a
+endif
+endif
+endif
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