# You must have mingw installed. BUILD=build/ SRCDIR=$(BUILD)/source LIBDIR=$(BUILD)/lib OBJS=src/libircclient.obj all: prep static dynamic package-win32 package-linux prep: mkdir -p $(LIBDIR) $(OBJS) : src/colors.c src/dcc.c src/errors.c src/libircclient.c src/portable.c src/sockets.c src/utils.c Makefile.mingw src/libircclient.obj: src/libircclient.c i586-mingw32msvc-gcc -Iinclude -O2 -s -Isrc -DWIN32 -c -o src/libircclient.obj src/libircclient.c static: $(OBJS) i586-mingw32msvc-ar cr $(LIBDIR)/libircclient-static.lib $(OBJS) i586-mingw32msvc-ranlib $(LIBDIR)/libircclient-static.lib dynamic: $(OBJS) i586-mingw32msvc-gcc -s -shared $(OBJS) src/libircclient.def -o $(LIBDIR)/libircclient.dll -Wl,-out-implib,$(LIBDIR)/libircclient.lib -lkernel32 -lwsock32 docs: doxygen Doxyfile package-win32: mkdir -p $(BUILD)/doc mkdir -p $(BUILD)/include mkdir -p $(BUILD)/examples cp include/libircclient.h include/libirc_errors.h include/libirc_events.h $(BUILD)/include/ cp include/libircclient.h include/libirc_errors.h include/libirc_events.h $(BUILD)/include/ cp examples/*.cpp examples/*.c $(BUILD)/examples/ cp src/win32/spammer.dsp $(BUILD)/examples/ cp doc/html/* $(BUILD)/doc/ rm -f libircclient-win32.zip (cd $(BUILD) && zip -r ../libircclient-win32.zip .) package-linux: mkdir -p $(SRCDIR) rm -rf $(SRCDIR)/libircclient svn export . $(SRCDIR)/libircclient (cd $(SRCDIR) && tar zcf ../../libircclient.tar.gz libircclient)