# Para valgrind o debug
CFLAGS += -ggdb -DDEBUG
+# Para más verbose
+CFLAGS += -DDEBUG2
+
# Opciones para el compilador C++.
CXXFLAGS = $(CFLAGS) -fno-inline
CC=g++
# Programas
-targets=test_send test_recv test_ipaddr
+targets=ip
+tests=test_send test_recv test_ipaddr test_ipin test_ipout
# Fuentes
fuentes ?= $(wildcard *.cpp)
all: depend $(targets)
-test_send: test_send.o dev.o
+tests: depend $(tests)
+
+test_send: test_send.o devque.o
+
+test_recv: test_recv.o devque.o
+
+test_ipaddr: test_ipaddr.o ipaddr.o ipheader.o
+
+test_ipin: test_ipin.o ipin.o ipaddr.o ipheader.o devque.o
-test_recv: test_recv.o dev.o
+test_ipout: test_ipout.o ipout.o ipaddr.o ipheader.o devque.o routetable.o
-test_ipaddr: test_ipaddr.o ipaddr.o
+ip: ip.o ipout.o ipin.o ipaddr.o ipheader.o devque.o routetable.o
depend:
@makedepend $(fuentes) > /dev/null 2>&1
clean:
- @$(RM) -fv *.o $(targets)
+ @$(RM) -fv *.o Makefile.bak $(targets)
# DO NOT DELETE
-dev.o: dev.h /usr/include/unistd.h /usr/include/features.h
-dev.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
-dev.o: /usr/include/bits/posix_opt.h /usr/include/bits/types.h
-dev.o: /usr/include/bits/wordsize.h /usr/include/bits/typesizes.h
-dev.o: /usr/include/bits/confname.h /usr/include/getopt.h
-dev.o: /usr/include/fcntl.h /usr/include/bits/fcntl.h
-dev.o: /usr/include/sys/types.h /usr/include/time.h /usr/include/endian.h
-dev.o: /usr/include/bits/endian.h /usr/include/sys/select.h
-dev.o: /usr/include/bits/select.h /usr/include/bits/sigset.h
-dev.o: /usr/include/bits/time.h /usr/include/sys/sysmacros.h
-dev.o: /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h
-dev.o: /usr/include/sys/ipc.h /usr/include/bits/ipctypes.h
-dev.o: /usr/include/bits/ipc.h /usr/include/sys/msg.h /usr/include/bits/msq.h
+devque.o: devque.h dev.h /usr/include/unistd.h /usr/include/features.h
+devque.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+devque.o: /usr/include/bits/posix_opt.h /usr/include/bits/types.h
+devque.o: /usr/include/bits/wordsize.h /usr/include/bits/typesizes.h
+devque.o: /usr/include/bits/confname.h /usr/include/getopt.h
+devque.o: /usr/include/fcntl.h /usr/include/bits/fcntl.h
+devque.o: /usr/include/sys/types.h /usr/include/time.h /usr/include/endian.h
+devque.o: /usr/include/bits/endian.h /usr/include/sys/select.h
+devque.o: /usr/include/bits/select.h /usr/include/bits/sigset.h
+devque.o: /usr/include/bits/time.h /usr/include/sys/sysmacros.h
+devque.o: /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h
+devque.o: /usr/include/sys/ipc.h /usr/include/bits/ipctypes.h
+devque.o: /usr/include/bits/ipc.h /usr/include/sys/msg.h
+devque.o: /usr/include/bits/msq.h
+ip.o: ipout.h ipaddr.h ipheader.h /usr/include/stdint.h
+ip.o: /usr/include/features.h /usr/include/sys/cdefs.h
+ip.o: /usr/include/gnu/stubs.h /usr/include/bits/wchar.h
+ip.o: /usr/include/bits/wordsize.h routetable.h dev.h ipin.h devque.h
+ip.o: /usr/include/unistd.h /usr/include/bits/posix_opt.h
+ip.o: /usr/include/bits/types.h /usr/include/bits/typesizes.h
+ip.o: /usr/include/bits/confname.h /usr/include/getopt.h /usr/include/fcntl.h
+ip.o: /usr/include/bits/fcntl.h /usr/include/sys/types.h /usr/include/time.h
+ip.o: /usr/include/endian.h /usr/include/bits/endian.h
+ip.o: /usr/include/sys/select.h /usr/include/bits/select.h
+ip.o: /usr/include/bits/sigset.h /usr/include/bits/time.h
+ip.o: /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h
+ip.o: /usr/include/bits/sched.h /usr/include/sys/wait.h /usr/include/signal.h
+ip.o: /usr/include/bits/signum.h /usr/include/bits/siginfo.h
+ip.o: /usr/include/bits/sigaction.h /usr/include/bits/sigcontext.h
+ip.o: /usr/include/asm/sigcontext.h /usr/include/asm-i486/sigcontext.h
+ip.o: /usr/include/linux/compiler.h /usr/include/bits/sigstack.h
+ip.o: /usr/include/bits/sigthread.h /usr/include/sys/resource.h
+ip.o: /usr/include/bits/resource.h /usr/include/bits/waitflags.h
+ip.o: /usr/include/bits/waitstatus.h /usr/include/sys/ipc.h
+ip.o: /usr/include/bits/ipctypes.h /usr/include/bits/ipc.h
+ip.o: /usr/include/sys/msg.h /usr/include/bits/msq.h
ipaddr.o: ipaddr.h
-test_ipaddr.o: ipaddr.h
-test_recv.o: dev.h /usr/include/unistd.h /usr/include/features.h
+ipheader.o: ipheader.h ipaddr.h /usr/include/stdint.h /usr/include/features.h
+ipheader.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
+ipheader.o: /usr/include/bits/wchar.h /usr/include/bits/wordsize.h
+ipin.o: ipin.h ipaddr.h ipheader.h /usr/include/stdint.h
+ipin.o: /usr/include/features.h /usr/include/sys/cdefs.h
+ipin.o: /usr/include/gnu/stubs.h /usr/include/bits/wchar.h
+ipin.o: /usr/include/bits/wordsize.h dev.h
+ipout.o: ipout.h ipaddr.h ipheader.h /usr/include/stdint.h
+ipout.o: /usr/include/features.h /usr/include/sys/cdefs.h
+ipout.o: /usr/include/gnu/stubs.h /usr/include/bits/wchar.h
+ipout.o: /usr/include/bits/wordsize.h routetable.h dev.h
+ipout.o: /usr/include/unistd.h /usr/include/bits/posix_opt.h
+ipout.o: /usr/include/bits/types.h /usr/include/bits/typesizes.h
+ipout.o: /usr/include/bits/confname.h /usr/include/getopt.h
+ipout.o: /usr/include/fcntl.h /usr/include/bits/fcntl.h
+ipout.o: /usr/include/sys/types.h /usr/include/time.h /usr/include/endian.h
+ipout.o: /usr/include/bits/endian.h /usr/include/sys/select.h
+ipout.o: /usr/include/bits/select.h /usr/include/bits/sigset.h
+ipout.o: /usr/include/bits/time.h /usr/include/sys/sysmacros.h
+ipout.o: /usr/include/bits/pthreadtypes.h /usr/include/bits/sched.h
+ipout.o: /usr/include/sys/ipc.h /usr/include/bits/ipctypes.h
+ipout.o: /usr/include/bits/ipc.h /usr/include/sys/msg.h
+ipout.o: /usr/include/bits/msq.h
+routetable.o: routetable.h dev.h ipaddr.h
+test_ipaddr.o: ipaddr.h ipheader.h /usr/include/stdint.h
+test_ipaddr.o: /usr/include/features.h /usr/include/sys/cdefs.h
+test_ipaddr.o: /usr/include/gnu/stubs.h /usr/include/bits/wchar.h
+test_ipaddr.o: /usr/include/bits/wordsize.h
+test_ipin.o: ipin.h ipaddr.h ipheader.h /usr/include/stdint.h
+test_ipin.o: /usr/include/features.h /usr/include/sys/cdefs.h
+test_ipin.o: /usr/include/gnu/stubs.h /usr/include/bits/wchar.h
+test_ipin.o: /usr/include/bits/wordsize.h dev.h devque.h
+test_ipin.o: /usr/include/unistd.h /usr/include/bits/posix_opt.h
+test_ipin.o: /usr/include/bits/types.h /usr/include/bits/typesizes.h
+test_ipin.o: /usr/include/bits/confname.h /usr/include/getopt.h
+test_ipin.o: /usr/include/fcntl.h /usr/include/bits/fcntl.h
+test_ipin.o: /usr/include/sys/types.h /usr/include/time.h
+test_ipin.o: /usr/include/endian.h /usr/include/bits/endian.h
+test_ipin.o: /usr/include/sys/select.h /usr/include/bits/select.h
+test_ipin.o: /usr/include/bits/sigset.h /usr/include/bits/time.h
+test_ipin.o: /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h
+test_ipin.o: /usr/include/bits/sched.h /usr/include/sys/ipc.h
+test_ipin.o: /usr/include/bits/ipctypes.h /usr/include/bits/ipc.h
+test_ipin.o: /usr/include/sys/msg.h /usr/include/bits/msq.h
+test_ipout.o: ipout.h ipaddr.h ipheader.h /usr/include/stdint.h
+test_ipout.o: /usr/include/features.h /usr/include/sys/cdefs.h
+test_ipout.o: /usr/include/gnu/stubs.h /usr/include/bits/wchar.h
+test_ipout.o: /usr/include/bits/wordsize.h routetable.h dev.h devque.h
+test_ipout.o: /usr/include/unistd.h /usr/include/bits/posix_opt.h
+test_ipout.o: /usr/include/bits/types.h /usr/include/bits/typesizes.h
+test_ipout.o: /usr/include/bits/confname.h /usr/include/getopt.h
+test_ipout.o: /usr/include/fcntl.h /usr/include/bits/fcntl.h
+test_ipout.o: /usr/include/sys/types.h /usr/include/time.h
+test_ipout.o: /usr/include/endian.h /usr/include/bits/endian.h
+test_ipout.o: /usr/include/sys/select.h /usr/include/bits/select.h
+test_ipout.o: /usr/include/bits/sigset.h /usr/include/bits/time.h
+test_ipout.o: /usr/include/sys/sysmacros.h /usr/include/bits/pthreadtypes.h
+test_ipout.o: /usr/include/bits/sched.h /usr/include/sys/ipc.h
+test_ipout.o: /usr/include/bits/ipctypes.h /usr/include/bits/ipc.h
+test_ipout.o: /usr/include/sys/msg.h /usr/include/bits/msq.h
+test_recv.o: devque.h dev.h /usr/include/unistd.h /usr/include/features.h
test_recv.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
test_recv.o: /usr/include/bits/posix_opt.h /usr/include/bits/types.h
test_recv.o: /usr/include/bits/wordsize.h /usr/include/bits/typesizes.h
test_recv.o: /usr/include/bits/sched.h /usr/include/sys/ipc.h
test_recv.o: /usr/include/bits/ipctypes.h /usr/include/bits/ipc.h
test_recv.o: /usr/include/sys/msg.h /usr/include/bits/msq.h
-test_send.o: dev.h /usr/include/unistd.h /usr/include/features.h
+test_send.o: devque.h dev.h /usr/include/unistd.h /usr/include/features.h
test_send.o: /usr/include/sys/cdefs.h /usr/include/gnu/stubs.h
test_send.o: /usr/include/bits/posix_opt.h /usr/include/bits/types.h
test_send.o: /usr/include/bits/wordsize.h /usr/include/bits/typesizes.h