#
# c-ares Makefile for djgpp/gcc/Watt-32.
-# By Gisle Vanem <giva@bgnett.no> 2004.
+# By Gisle Vanem <gvanem@broadpark.no> 2004.
#
-.SUFFIXES: .exe
-include Makefile.inc
-WATT32_ROOT = $(subst \,/,$(WATT_ROOT))
+TOPDIR = ..
+
+DEPEND_PREREQ = ares_config.h
-CC = gcc
-CFLAGS = -O2 -Wall -DWATT32 -Dselect=select_s -DHAVE_AF_INET6 \
- -DHAVE_PF_INET6 -DHAVE_IOCTLSOCKET -DHAVE_STRUCT_IN6_ADDR \
- -DHAVE_STRUCT_SOCKADDR_IN6 -DHAVE_STRUCT_ADDRINFO \
- -DHAVE_ARPA_NAMESER_H -DNS_INADDRSZ=4 -I$(WATT32_ROOT)/inc
+include ../packages/DOS/common.dj
+include Makefile.inc
+
+CFLAGS += -DWATT32 -Dselect=select_s
LDFLAGS = -s
-EX_LIBS = $(WATT32_ROOT)/lib/libwatt.a
-OBJ_DIR = djgpp
+ifeq ($(USE_CURLDEBUG),1)
+ EX_LIBS = ../lib/libcurl.a
+ OBJ_HACK = $(OBJECTS)
+else
+ OBJ_HACK = libcares.a
+endif
+
+ifeq ($(USE_SSL),1)
+ EX_LIBS += $(OPENSSL_ROOT)/lib/libssl.a $(OPENSSL_ROOT)/lib/libcrypt.a
+endif
+
+ifeq ($(USE_ZLIB),1)
+ EX_LIBS += $(ZLIB_ROOT)/libz.a
+endif
+
+ifeq ($(USE_IDNA),1)
+ EX_LIBS += $(LIBIDN_ROOT)/lib/dj_obj/libidn.a -liconv
+endif
+
+EX_LIBS += $(WATT32_ROOT)/lib/libwatt.a
OBJECTS = $(addprefix $(OBJ_DIR)/, $(CSOURCES:.c=.o))
-all: $(OBJ_DIR) libcares.a ahost.exe adig.exe
+all: $(OBJ_DIR) ares_config.h libcares.a ahost.exe adig.exe acountry.exe
@echo Welcome to c-ares.
-$(OBJ_DIR):
- - mkdir $(OBJ_DIR)
-
libcares.a: $(OBJECTS)
ar rs $@ $?
-ahost.exe: ahost.c libcares.a
+ares_config.h: config-dos.h
+ $(COPY) $^ $@
+
+ahost.exe: ahost.c $(OBJ_DIR)/ares_getopt.o $(OBJ_HACK)
+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(EX_LIBS)
+
+adig.exe: adig.c $(OBJ_DIR)/ares_getopt.o $(OBJ_HACK)
$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(EX_LIBS)
-adig.exe: adig.c libcares.a
+acountry.exe: acountry.c $(OBJ_DIR)/ares_getopt.o $(OBJ_HACK)
$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $^ $(EX_LIBS)
-clean:
- rm -f $(OBJECTS) libcares.a
+# clean generated files
+#
+genclean:
+ - $(DELETE) ares_config.h
-vclean realclean: clean
- rm -f ahost.exe adig.exe depend.dj
- - rmdir $(OBJ_DIR)
+# clean object files and subdir
+#
+objclean: genclean
+ - $(DELETE) $(OBJ_DIR)$(DS)*.o
+ - $(RMDIR) $(OBJ_DIR)
-$(OBJ_DIR)/%.o: %.c
- $(CC) $(CFLAGS) -o $@ -c $<
- @echo
+# clean without removing built library and programs
+#
+clean: objclean
+ - $(DELETE) depend.dj
-depend:
- $(CC) -MM $(CFLAGS) $(CSOURCES) | \
- sed -e 's/^\([a-zA-Z0-9_-]*\.o:\)/$$(OBJ_DIR)\/\1/' > depend.dj
+# clean everything
+#
+realclean vclean: clean
+ - $(DELETE) libcares.a
+ - $(DELETE) acountry.exe
+ - $(DELETE) adig.exe
+ - $(DELETE) ahost.exe
+ - $(DELETE) libcares.a
-include depend.dj
+