blob: a76b966ded09653f9a5aa3293af9faba28c6c600 [file] [log] [blame]
adamdunkels3e4e02e2004-06-06 07:02:44 +00001# Copyright (c) 2002-2004, Adam Dunkels.
adamdunkels1103ef92003-04-02 09:17:18 +00002# All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions
6# are met:
7# 1. Redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer.
9# 2. Redistributions in binary form must reproduce the above copyright
10# notice, this list of conditions and the following disclaimer in the
11# documentation and/or other materials provided with the distribution.
adamdunkels3e4e02e2004-06-06 07:02:44 +000012# 3. The name of the author may not be used to endorse or promote
adamdunkels1103ef92003-04-02 09:17:18 +000013# products derived from this software without specific prior
14# written permission.
15#
16# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS
17# OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
20# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
22# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
24# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
25# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27#
28# This file is part of the Contiki desktop environment
29#
adamdunkelsc8132342005-02-27 13:18:50 +000030# $Id: Makefile,v 1.15 2005/02/27 13:18:50 adamdunkels Exp $
adamdunkels1103ef92003-04-02 09:17:18 +000031#
32
adamdunkelsc8132342005-02-27 13:18:50 +000033all: contiki
34
adamdunkels1103ef92003-04-02 09:17:18 +000035CONTIKI=../contiki
adamdunkelsc8132342005-02-27 13:18:50 +000036SDIRS = apps conf ctk lib uip
37CSDIRS = ${addprefix $(CONTIKI)/,apps ctk ek lib uip}
38
39-include Makefile.depend
40
adamdunkels1103ef92003-04-02 09:17:18 +000041CC=gcc
adamdunkelsd4805502003-08-20 22:37:45 +000042CFLAGS=-Wall -Wstrict-prototypes -Wmissing-prototypes \
adamdunkelsc8132342005-02-27 13:18:50 +000043 -g \
44 ${addprefix -I,$(CSDIRS)} \
45 ${addprefix -I,$(SDIRS)} \
adamdunkels3e4e02e2004-06-06 07:02:44 +000046 `pkg-config --cflags gtk+-2.0`\
adamdunkels1103ef92003-04-02 09:17:18 +000047 -DWITH_ETHERNET -DWITH_TAPDEV -DWITH_ASCII \
adamdunkelsd4805502003-08-20 22:37:45 +000048 -DWITH_WWW -DWITH_EMAIL -DWITH_UIP \
adamdunkels3e4e02e2004-06-06 07:02:44 +000049 -DWITH_CTKGTK
adamdunkels31c72a42004-08-11 21:23:29 +000050LDFLAGS= `pkg-config --libs gtk+-2.0`
adamdunkels1103ef92003-04-02 09:17:18 +000051
adamdunkelsc8132342005-02-27 13:18:50 +000052vpath %.c ${SDIRS} $(CSDIRS) ${filter-out CVS,${wildcard labs/*}}
53
adamdunkels1103ef92003-04-02 09:17:18 +000054%.o: %.c
55 $(CC) $(CFLAGS) -c $(<:.o=.c)
adamdunkels1103ef92003-04-02 09:17:18 +000056
adamdunkels12ebc1a2003-08-11 22:19:19 +000057WWW=www.o webclient.o http-strings.o htmlparser.o html-strings.o www-dsc.o http-user-agent-string.o
adamdunkels22abf982004-09-01 20:34:06 +000058EMAIL=email.o smtp-socket.o smtp-strings.o ctk-textedit.o
adamdunkelsc8132342005-02-27 13:18:50 +000059WEBSERVER=webserver.o webserver-dsc.o httpd.o httpd-fs.o http-strings.o httpd-cgi.o
adamdunkels1103ef92003-04-02 09:17:18 +000060TELNET=simpletelnet.o telnet.o
adamdunkelsc8132342005-02-27 13:18:50 +000061VNCVIEWER=vnc.o vnc-viewer.o vnc-draw.o vnc-dsc.o
adamdunkelsd4805502003-08-20 22:37:45 +000062
adamdunkels16a7b262004-07-04 21:15:53 +000063CTKGTK=ctk-gtksim.o ctk-draw.o ctk-gtksim-service.o libconio.o ctk-gtksim-draw.o
adamdunkels31c72a42004-08-11 21:23:29 +000064CTKVNC=ctk-vncserver.o libconio.o vnc-server.o vnc-out.o ctk-vncfont.o
65CTKTERM=libconio.o ctk-term.o ctk-term-in.o ctk-term-out.o ctk-termtelnet.o
adamdunkels1103ef92003-04-02 09:17:18 +000066
adamdunkelsc8132342005-02-27 13:18:50 +000067POP=pop.o popc.o popc-strings.o
68
adamdunkels16a7b262004-07-04 21:15:53 +000069contiki: contiki-main.o ek.o arg.o ek-service.o \
adamdunkels31c72a42004-08-11 21:23:29 +000070 tcpip.o uip.o uip_arch.o uip-fw.o uip-split.o \
adamdunkelsc8132342005-02-27 13:18:50 +000071 timer.o uiplib.o resolv.o resolv.o uipbuf.o \
72 cfs.o cfs-posix.o codeprop.o \
adamdunkels16a7b262004-07-04 21:15:53 +000073 tapdev-service.o tapdev.o uip_arp.o uip-fw.o uip-fw-service.o \
74 ctk.o $(CTKGTK) \
adamdunkels31c72a42004-08-11 21:23:29 +000075 ftpc.o ftp.o ftp-dsc.o \
76 about.o editor.o editor-dsc.o memb.o ctk-filedialog.o \
adamdunkels16a7b262004-07-04 21:15:53 +000077 simpletelnet.o telnet.o netconf.o program-handler.o \
78 about-dsc.o netconf-dsc.o www-dsc.o \
79 www.o webclient.o htmlparser.o html-strings.o http-strings.o http-user-agent-string.o \
80 processes-dsc.o processes.o \
81 shell-dsc.o shell.o shell-gui.o \
82 calc-dsc.o calc.o \
adamdunkels22abf982004-09-01 20:34:06 +000083 email.o email-dsc.o smtp-socket.o smtp-strings.o ctk-textedit.o \
adamdunkelsc8132342005-02-27 13:18:50 +000084 ircc.o irc.o irc-dsc.o psock.o ircc-strings.o $(VNCVIEWER) $(WEBSERVER) \
85 dhcpc.o dhcp.o dhcp-dsc.o \
adamdunkelsecfbccd2004-09-01 20:43:19 +000086# sock-httpd.o socket.o list.o filecache.o \
adamdunkels16a7b262004-07-04 21:15:53 +000087# program-handler.o about.o netconf.o processes.o \
88# about-dsc.o netconf-dsc.o processes-dsc.o \
89# $(CTKGTK) \
90# ctk.o dispatcher.o arg.o \
91# uip.o uip_arch.o uip_arp.o uip-signal.o resolv.o uipbuf.o uip-split.o uip-fw.o\
92# uiplib.o tapdev.o tapdev-drv.o $(WEBSERVER) $(WWW) \
adamdunkels3e4e02e2004-06-06 07:02:44 +000093# mailget.o popclient.o nntpc.o nntpc-strings.o \
94# newslog.o nntpd.o nntpd-strings.o\
95# $(EMAIL) email-dsc.o $(WEBSERVER) $(TELNET) telnet-dsc.o \
96# vnc.o vnc-viewer.o vnc-draw.o \
97# calc.o calc-dsc.o \
98# $(WWW) telnetd.o telnetd-dsc.o shell.o memb.o\
99# mt.o mtarch.o mtp.o \
100# coderecv.o\
adamdunkels714ec1f2003-09-04 19:20:07 +0000101 #maze.o maze-dsc.o
adamdunkels1103ef92003-04-02 09:17:18 +0000102 gcc $(LDFLAGS) -o $@ $^
103
104clean:
105 rm -f *.o *~ *core contiki *.s
106
107depend:
adamdunkelsc8132342005-02-27 13:18:50 +0000108 gcc $(CCDEPFLAGS) -MM \
109 ${addprefix -I,$(CSDIRS)} \
110 ${addprefix -I,$(SDIRS)} \
111 ${addsuffix /*.c, $(CSDIRS)} \
112 ${addsuffix /*.c, $(SDIRS)} \
113 *.c > Makefile.depend
adamdunkels1103ef92003-04-02 09:17:18 +0000114