aboutsummaryrefslogtreecommitdiffstats
path: root/Source/charon
diff options
context:
space:
mode:
authorMartin Willi <martin@strongswan.org>2005-11-23 13:34:45 +0000
committerMartin Willi <martin@strongswan.org>2005-11-23 13:34:45 +0000
commitface0be4c2f7d89ffe0b4facdf8e30c9dbf53a73 (patch)
tree0c74c94881f300664dc2fe03465e12d3c56201d0 /Source/charon
parent543c1db0eae1df7fbe554f7798b545aa771b1545 (diff)
downloadstrongswan-face0be4c2f7d89ffe0b4facdf8e30c9dbf53a73.tar.bz2
strongswan-face0be4c2f7d89ffe0b4facdf8e30c9dbf53a73.tar.xz
-
Diffstat (limited to 'Source/charon')
-rw-r--r--Source/charon/Makefile34
-rw-r--r--Source/charon/encoding/payloads/Makefile.payloads6
-rw-r--r--Source/charon/testcases/Makefile.testcases102
-rw-r--r--Source/charon/testcases/testcases.c6
-rw-r--r--Source/charon/threads/Makefile.threads31
-rw-r--r--Source/charon/transforms/Makefile.transforms32
-rw-r--r--Source/charon/transforms/crypters/Makefile.crypters19
-rw-r--r--Source/charon/transforms/hashers/Makefile.hashers27
-rw-r--r--Source/charon/transforms/prfs/Makefile.prfs23
-rw-r--r--Source/charon/transforms/signers/Makefile.signers19
-rw-r--r--Source/charon/utils/Makefile.utils48
11 files changed, 328 insertions, 19 deletions
diff --git a/Source/charon/Makefile b/Source/charon/Makefile
index 0c2240bfe..e43e36a3b 100644
--- a/Source/charon/Makefile
+++ b/Source/charon/Makefile
@@ -16,28 +16,35 @@ BUILD_DIR= ./bin/
MAIN_DIR= ./
-LIBS= -lgmp -lpthread
+LDFLAGS= -lgmp -lpthread
CFLAGS+= -DLEAK_DETECTIVE -I.
# objects is extended by each included Makefile
OBJS=
-daemon : build_dir $(BUILD_DIR)charon
+all : build_dir $(BUILD_DIR)charon $(BUILD_DIR)run_tests
-all : build_dir $(BUILD_DIR)charon $(BUILD_DIR)run_tests
+daemon : $(BUILD_DIR)charon
+
+testcases : $(BUILD_DIR)run_tests
doxygen :
doxygen doxyconfig.DoxyFile
+
include $(MAIN_DIR)network/Makefile.network
include $(MAIN_DIR)config/Makefile.config
include $(MAIN_DIR)encoding/Makefile.encoding
include $(MAIN_DIR)queues/Makefile.queues
include $(MAIN_DIR)sa/Makefile.sa
+include $(MAIN_DIR)threads/Makefile.threads
+include $(MAIN_DIR)transforms/Makefile.transforms
+include $(MAIN_DIR)utils/Makefile.utils
+
build_dir:
- mkdir $(BUILD_DIR)
+ mkdir -p $(BUILD_DIR)
$(BUILD_DIR)daemon.o : daemon.c daemon.h
$(CC) $(CFLAGS) -c -o $@ $<
@@ -50,18 +57,15 @@ OBJS+=$(BUILD_DIR)definitions.o
$(BUILD_DIR)definitions.o : definitions.c definitions.h
$(CC) $(CFLAGS) -c -o $@ $<
+$(BUILD_DIR)charon : $(OBJS) $(BUILD_DIR)daemon.o
+ $(CC) $(LDFLAGS) $(OBJS) $(BUILD_DIR)daemon.o -o $@
+TEST_OBJS = $(OBJS)
+include $(MAIN_DIR)testcases/Makefile.testcases
-$(BUILD_DIR)charon : $(OBJS) $(BUILD_DIR)daemon.o
- $(CC) $(CFLAGS) $(OBJS) $(BUILD_DIR)daemon.o -o $@
-
-
-#include testcases/Makefile.testcases
-
-#$(BUILD_DIR)run_tests : $(OBJS)
- $(CC) $(CFLAGS) $(OBJS) -o $@
-
+$(BUILD_DIR)run_tests : $(TEST_OBJS)
+ $(CC) $(LDFLAGS) $(TEST_OBJS) -o $@
clean :
- rm $(OBJS) $(BUILD_DIR)charon $(BUILD_DIR)daemon.o; \
- rmdir $(BUILD_DIR) \ No newline at end of file
+ rm -f $(TEST_OBJS) $(BUILD_DIR)charon $(BUILD_DIR)run_tests $(BUILD_DIR)daemon.o; \
+ rmdir $(BUILD_DIR)
diff --git a/Source/charon/encoding/payloads/Makefile.payloads b/Source/charon/encoding/payloads/Makefile.payloads
index 1a32e000d..2aedd3840 100644
--- a/Source/charon/encoding/payloads/Makefile.payloads
+++ b/Source/charon/encoding/payloads/Makefile.payloads
@@ -30,6 +30,10 @@ OBJS+= $(BUILD_DIR)nonce_payload.o
$(BUILD_DIR)nonce_payload.o : $(PAYLOADS_DIR)nonce_payload.c $(PAYLOADS_DIR)nonce_payload.h
$(CC) $(CFLAGS) -c -o $@ $<
+OBJS+= $(BUILD_DIR)notify_payload.o
+$(BUILD_DIR)notify_payload.o : $(PAYLOADS_DIR)notify_payload.c $(PAYLOADS_DIR)notify_payload.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
OBJS+= $(BUILD_DIR)payload.o
$(BUILD_DIR)payload.o : $(PAYLOADS_DIR)payload.c $(PAYLOADS_DIR)payload.h
$(CC) $(CFLAGS) -c -o $@ $<
@@ -49,4 +53,4 @@ $(BUILD_DIR)transform_attribute.o : $(PAYLOADS_DIR)transform_attribute.c $(PAYL
OBJS+= $(BUILD_DIR)transform_substructure.o
$(BUILD_DIR)transform_substructure.o : $(PAYLOADS_DIR)transform_substructure.c $(PAYLOADS_DIR)transform_substructure.h
$(CC) $(CFLAGS) -c -o $@ $<
- \ No newline at end of file
+
diff --git a/Source/charon/testcases/Makefile.testcases b/Source/charon/testcases/Makefile.testcases
new file mode 100644
index 000000000..f43a94e1f
--- /dev/null
+++ b/Source/charon/testcases/Makefile.testcases
@@ -0,0 +1,102 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+TESTCASES_DIR= $(MAIN_DIR)testcases/
+
+
+TEST_OBJS+= $(BUILD_DIR)diffie_hellman_test.o
+$(BUILD_DIR)diffie_hellman_test.o : $(TESTCASES_DIR)diffie_hellman_test.c $(TESTCASES_DIR)diffie_hellman_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)hasher_md5_test.o
+$(BUILD_DIR)hasher_md5_test.o : $(TESTCASES_DIR)hasher_md5_test.c $(TESTCASES_DIR)hasher_md5_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)event_queue_test.o
+$(BUILD_DIR)event_queue_test.o : $(TESTCASES_DIR)event_queue_test.c $(TESTCASES_DIR)event_queue_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)generator_test.o
+$(BUILD_DIR)generator_test.o : $(TESTCASES_DIR)generator_test.c $(TESTCASES_DIR)generator_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)ike_sa_id_test.o
+$(BUILD_DIR)ike_sa_id_test.o : $(TESTCASES_DIR)ike_sa_id_test.c $(TESTCASES_DIR)ike_sa_id_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)job_queue_test.o
+$(BUILD_DIR)job_queue_test.o : $(TESTCASES_DIR)job_queue_test.c $(TESTCASES_DIR)job_queue_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)parser_test.o
+$(BUILD_DIR)parser_test.o : $(TESTCASES_DIR)parser_test.c $(TESTCASES_DIR)parser_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)hasher_sha1_test.o
+$(BUILD_DIR)hasher_sha1_test.o : $(TESTCASES_DIR)hasher_sha1_test.c $(TESTCASES_DIR)hasher_sha1_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)ike_sa_manager_test.o
+$(BUILD_DIR)ike_sa_manager_test.o : $(TESTCASES_DIR)ike_sa_manager_test.c $(TESTCASES_DIR)ike_sa_manager_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)linked_list_test.o
+$(BUILD_DIR)linked_list_test.o : $(TESTCASES_DIR)linked_list_test.c $(TESTCASES_DIR)linked_list_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)hmac_test.o
+$(BUILD_DIR)hmac_test.o : $(TESTCASES_DIR)hmac_test.c $(TESTCASES_DIR)hmac_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)scheduler_test.o
+$(BUILD_DIR)scheduler_test.o : $(TESTCASES_DIR)scheduler_test.c $(TESTCASES_DIR)scheduler_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)prf_plus_test.o
+$(BUILD_DIR)prf_plus_test.o : $(TESTCASES_DIR)prf_plus_test.c $(TESTCASES_DIR)prf_plus_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)send_queue_test.o
+$(BUILD_DIR)send_queue_test.o : $(TESTCASES_DIR)send_queue_test.c $(TESTCASES_DIR)send_queue_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)socket_test.o
+$(BUILD_DIR)socket_test.o : $(TESTCASES_DIR)socket_test.c $(TESTCASES_DIR)socket_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)packet_test.o
+$(BUILD_DIR)packet_test.o : $(TESTCASES_DIR)packet_test.c $(TESTCASES_DIR)packet_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)testcases.o
+$(BUILD_DIR)testcases.o : $(TESTCASES_DIR)testcases.c
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)receiver_test.o
+$(BUILD_DIR)receiver_test.o : $(TESTCASES_DIR)receiver_test.c $(TESTCASES_DIR)receiver_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)ike_sa_test.o
+$(BUILD_DIR)ike_sa_test.o : $(TESTCASES_DIR)ike_sa_test.c $(TESTCASES_DIR)ike_sa_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)sender_test.o
+$(BUILD_DIR)sender_test.o : $(TESTCASES_DIR)sender_test.c $(TESTCASES_DIR)sender_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+TEST_OBJS+= $(BUILD_DIR)thread_pool_test.o
+$(BUILD_DIR)thread_pool_test.o : $(TESTCASES_DIR)thread_pool_test.c $(TESTCASES_DIR)thread_pool_test.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+
diff --git a/Source/charon/testcases/testcases.c b/Source/charon/testcases/testcases.c
index 52b25db68..9574632ac 100644
--- a/Source/charon/testcases/testcases.c
+++ b/Source/charon/testcases/testcases.c
@@ -26,9 +26,9 @@
#include <queues/job_queue.h>
#include <queues/event_queue.h>
#include <queues/send_queue.h>
-#include <configuration_manager.h>
-#include <ike_sa_manager.h>
-#include <socket.h>
+#include <config/configuration_manager.h>
+#include <sa/ike_sa_manager.h>
+#include <network/socket.h>
#include <utils/logger_manager.h>
#include <utils/allocator.h>
#include <utils/tester.h>
diff --git a/Source/charon/threads/Makefile.threads b/Source/charon/threads/Makefile.threads
new file mode 100644
index 000000000..4c9cd5e47
--- /dev/null
+++ b/Source/charon/threads/Makefile.threads
@@ -0,0 +1,31 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+THREADS_DIR= $(MAIN_DIR)threads/
+
+OBJS+= $(BUILD_DIR)receiver.o
+$(BUILD_DIR)receiver.o : $(THREADS_DIR)receiver.c $(THREADS_DIR)receiver.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)scheduler.o
+$(BUILD_DIR)scheduler.o : $(THREADS_DIR)scheduler.c $(THREADS_DIR)scheduler.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)sender.o
+$(BUILD_DIR)sender.o : $(THREADS_DIR)sender.c $(THREADS_DIR)sender.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)thread_pool.o
+$(BUILD_DIR)thread_pool.o : $(THREADS_DIR)thread_pool.c $(THREADS_DIR)thread_pool.h
+ $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/Source/charon/transforms/Makefile.transforms b/Source/charon/transforms/Makefile.transforms
new file mode 100644
index 000000000..9bc807672
--- /dev/null
+++ b/Source/charon/transforms/Makefile.transforms
@@ -0,0 +1,32 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+TRANSFORMS_DIR= $(MAIN_DIR)transforms/
+
+include $(TRANSFORMS_DIR)crypters/Makefile.crypters
+include $(TRANSFORMS_DIR)hashers/Makefile.hashers
+include $(TRANSFORMS_DIR)prfs/Makefile.prfs
+include $(TRANSFORMS_DIR)signers/Makefile.signers
+
+OBJS+= $(BUILD_DIR)diffie_hellman.o
+$(BUILD_DIR)diffie_hellman.o : $(TRANSFORMS_DIR)diffie_hellman.c $(TRANSFORMS_DIR)diffie_hellman.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)hmac.o
+$(BUILD_DIR)hmac.o : $(TRANSFORMS_DIR)hmac.c $(TRANSFORMS_DIR)hmac.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)prf_plus.o
+$(BUILD_DIR)prf_plus.o : $(TRANSFORMS_DIR)prf_plus.c $(TRANSFORMS_DIR)prf_plus.h
+ $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/Source/charon/transforms/crypters/Makefile.crypters b/Source/charon/transforms/crypters/Makefile.crypters
new file mode 100644
index 000000000..e4ce023dd
--- /dev/null
+++ b/Source/charon/transforms/crypters/Makefile.crypters
@@ -0,0 +1,19 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+CRYPTERS_DIR= $(TRANSFORMS_DIR)crypters/
+
+OBJS+= $(BUILD_DIR)crypter.o
+$(BUILD_DIR)crypter.o : $(CRYPTERS_DIR)crypter.c $(CRYPTERS_DIR)crypter.h
+ $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/Source/charon/transforms/hashers/Makefile.hashers b/Source/charon/transforms/hashers/Makefile.hashers
new file mode 100644
index 000000000..36a5b4cdb
--- /dev/null
+++ b/Source/charon/transforms/hashers/Makefile.hashers
@@ -0,0 +1,27 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+HASHERS_DIR= $(TRANSFORMS_DIR)hashers/
+
+OBJS+= $(BUILD_DIR)hasher.o
+$(BUILD_DIR)hasher.o : $(HASHERS_DIR)hasher.c $(HASHERS_DIR)hasher.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)hasher_sha1.o
+$(BUILD_DIR)hasher_sha1.o : $(HASHERS_DIR)hasher_sha1.c $(HASHERS_DIR)hasher_sha1.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)hasher_md5.o
+$(BUILD_DIR)hasher_md5.o : $(HASHERS_DIR)hasher_md5.c $(HASHERS_DIR)hasher_md5.h
+ $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/Source/charon/transforms/prfs/Makefile.prfs b/Source/charon/transforms/prfs/Makefile.prfs
new file mode 100644
index 000000000..1934361ce
--- /dev/null
+++ b/Source/charon/transforms/prfs/Makefile.prfs
@@ -0,0 +1,23 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+PRFS_DIR= $(TRANSFORMS_DIR)prfs/
+
+OBJS+= $(BUILD_DIR)prf.o
+$(BUILD_DIR)prf.o : $(PRFS_DIR)prf.c $(PRFS_DIR)prf.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)prf_hmac.o
+$(BUILD_DIR)prf_hmac.o : $(PRFS_DIR)prf_hmac.c $(PRFS_DIR)prf_hmac.h
+ $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/Source/charon/transforms/signers/Makefile.signers b/Source/charon/transforms/signers/Makefile.signers
new file mode 100644
index 000000000..823f82896
--- /dev/null
+++ b/Source/charon/transforms/signers/Makefile.signers
@@ -0,0 +1,19 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+SIGNERS_DIR= $(TRANSFORMS_DIR)signers/
+
+OBJS+= $(BUILD_DIR)signer.o
+$(BUILD_DIR)signer.o : $(SIGNERS_DIR)signer.c $(SIGNERS_DIR)signer.h
+ $(CC) $(CFLAGS) -c -o $@ $<
diff --git a/Source/charon/utils/Makefile.utils b/Source/charon/utils/Makefile.utils
new file mode 100644
index 000000000..20ea9f7b0
--- /dev/null
+++ b/Source/charon/utils/Makefile.utils
@@ -0,0 +1,48 @@
+# Copyright (C) 2005 Jan Hutter, Martin Willi
+# Hochschule fuer Technik Rapperswil
+#
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by the
+# Free Software Foundation; either version 2 of the License, or (at your
+# option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+# for more details.
+#
+
+UTILS_DIR= $(MAIN_DIR)utils/
+
+
+OBJS+= $(BUILD_DIR)allocator.o
+$(BUILD_DIR)allocator.o : $(UTILS_DIR)allocator.c $(UTILS_DIR)allocator.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)gmp_helper.o
+$(BUILD_DIR)gmp_helper.o : $(UTILS_DIR)gmp_helper.c $(UTILS_DIR)gmp_helper.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)host.o
+$(BUILD_DIR)host.o : $(UTILS_DIR)host.c $(UTILS_DIR)host.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)linked_list.o
+$(BUILD_DIR)linked_list.o : $(UTILS_DIR)linked_list.c $(UTILS_DIR)linked_list.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)logger.o
+$(BUILD_DIR)logger.o : $(UTILS_DIR)logger.c $(UTILS_DIR)logger.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)logger_manager.o
+$(BUILD_DIR)logger_manager.o : $(UTILS_DIR)logger_manager.c $(UTILS_DIR)logger_manager.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)randomizer.o
+$(BUILD_DIR)randomizer.o : $(UTILS_DIR)randomizer.c $(UTILS_DIR)randomizer.h
+ $(CC) $(CFLAGS) -c -o $@ $<
+
+OBJS+= $(BUILD_DIR)tester.o
+$(BUILD_DIR)tester.o : $(UTILS_DIR)tester.c $(UTILS_DIR)tester.h
+ $(CC) $(CFLAGS) -c -o $@ $<