Commit graph

120 commits

Author SHA1 Message Date
adamdunkels b298e3c524 Moved APPS inclusions to before TARGET inclusions so that the platform-specific makefile can operate on definitons made by the APPS makefiles. This reverts a change that was inadvertedly made when introducing platform-specific APPS directories 2009-03-17 20:08:56 +00:00
adamdunkels 0076bfe8a5 Changed the name of the 'serial' module to 'serial-line' to signify that the module is about lines of data from the serial port, not individual bytes, and to make sdcc happy 2009-03-17 15:56:32 +00:00
adamdunkels 1122e49b72 Allow application directories to be both in the generic apps/ directory and in target-specific platform/X/apps 2009-03-12 19:10:37 +00:00
fros4943 a472adbe69 added missing sources to makefile: ringbuf.c compower.c 2009-03-02 09:39:37 +00:00
adamdunkels b80d3cfdb9 Added a . to the SOURCEDIRS variable so that system files can be overridden by having a file with the same name in a local directory 2009-02-11 09:03:52 +00:00
fros4943 80feb7ad57 added experimental checkpointing functionality:
currently only implemented on the sky platform
2009-02-04 18:12:57 +00:00
oliverschmidt e362e2b99e Replace hyphen with underline to make generated macro names more consistent. 2008-11-15 11:13:19 +00:00
oliverschmidt f40cfa2f42 Minor formatting change. 2008-11-14 22:06:53 +00:00
oliverschmidt b21b874801 Having the C preprocessor macro CONTIKI_TARGET set to $(TARGET) turned out to be not that useful for conditionals. Therefore I switched to having the macro CONTIKI_TARGET_$(TARGET) set (to the default value of 1).
In order to allow for clean C code with the usual all-uppercase macro names $(TARGET) had to be converted to uppercase. Gnumake doesn't have a builtin string function for doing so, therefore sed is called. The Gnumake doc section 14.2 lists sed as one of the utilities a makefile can always presume to be available. However it states that only generally supported utility options should be used. So the GNU sed extension \U was intentionally avoided.
2008-11-14 21:37:45 +00:00
adamdunkels 5c17a5582e Produce an error message if a TARGET= does not exist 2008-11-06 08:16:10 +00:00
adamdunkels a3f0c649f0 Automatically define the UIP_CONF_IPV6 C preprocessor macro if the UIP_CONF_IPV6 make variable is defined - not the nicest way of doing this, but ought to work for now... 2008-10-15 09:13:05 +00:00
c_oflynn d5865cb2b6 -Change needed for ravenusb to build
-Reverts Makefile.include back to 1.57, then apply the needed change
2008-10-14 20:31:46 +00:00
c_oflynn a520fe4646 Lots of changes / commits! This allows ravenusbstick example to build at least. 2008-10-14 19:06:51 +00:00
julienabeille 08465a6c19 new-ipv6 compiles on native cygwin 2008-10-14 14:00:58 +00:00
adamdunkels 573040e315 Re-added random.c, removed uip-split.c for IPv6 because of incompatible API 2008-10-14 12:25:22 +00:00
adamdunkels edae9741ed Added the uIPv6 targets to the top-level Makefile.include. uIPv6 is enabled with the UIP_CONF_IPV6 switch. 2008-10-14 09:27:07 +00:00
nvt-se 6ecffb0592 added the stimer alongside the other timers 2008-10-09 12:41:31 +00:00
adamdunkels ba2323f9ed Include CRC16 library in sources 2008-07-07 23:21:50 +00:00
oliverschmidt 4dcbc3273e Now that we started adding files to the CVS which are normally generated with a 'save...' make goal we can remove the DEFAULT_TARGET mechanism altogether and just add Makefile.target files. 2008-05-26 10:09:12 +00:00
oliverschmidt 929da590be Removed '!' as gnumake already adds '.'. 2008-05-22 19:43:08 +00:00
nifi 8b30087ce4 added ifft 2008-04-25 16:51:51 +00:00
adamdunkels d0c80b9210 Removed inclusion of old Chameleon Makefile 2008-02-25 11:57:55 +00:00
adamdunkels 7b71f23abe Factored out the time table keeping code from the profiling code and placed it in a separate 'timetable' module, that may be uesd on its own. 2008-01-17 12:19:25 +00:00
adamdunkels 02ee418313 Moving timesynch.[ch] from sys/ to core/net/rime as they have more to do with Rime than with the kernel 2008-01-14 14:22:16 +00:00
oliverschmidt cd261f3121 Show info on saved defines only if they not empty. 2008-01-04 21:01:37 +00:00
oliverschmidt 73027164c8 Added 'savedefines' target working like 'savetarget'. Replaced $(warning...) with $(info...). Aded user feedback for the two 'save...' targets. 2007-12-24 15:24:15 +00:00
oliverschmidt a5ccd9515d Allow to define arbitrary compiler preprocesor variables from the make command line. 2007-12-21 10:16:45 +00:00
oliverschmidt ae4978e994 Moved z80 specific line to z80 makefile. 2007-12-21 00:49:40 +00:00
adamdunkels 6708450749 Added timesynch.c 2007-12-16 14:37:26 +00:00
oliverschmidt 257c45776b Removed duplicate reference to uiplib.c, removed reference to ctk-term as this was moved to the backyard and did minor reformatting. 2007-11-22 11:19:27 +00:00
adamdunkels 607d27e0c6 Removed unused file rawpacket-udp 2007-11-17 17:59:08 +00:00
adamdunkels bb9e35c79e Added profiling code, statistics printing library 2007-11-12 22:25:12 +00:00
matsutsuka ee76163a8c the order of assembler parameters were changed, because some compiler like SDCC requires the output file at the last place. 2007-09-06 01:09:53 +00:00
oliverschmidt 02fb08e029 (Hopefully) only style alignment of recent change. 2007-08-30 20:42:58 +00:00
matsutsuka 9d4fc0a1a8 Support for z80(sdcc) port.
In order to support, some core modules are modified as follows:

core/sys/dsc.h
- If CTK_CONF_ICONS is diabled, the whole icon-related code is disabled.
- DSC_HEADER is changed to remove extra semicolon.

core/sys/process.h
- process_data_t is expressed by void* in signatures (known bug on sdcc).

core/sys/autostart.h
- autostart_processes is changed to remove extra semicolon.

core/sys/cc.h
- CC_CONF_ASSIGN_AGGREGATE is introduced.
- CC_CONF_INC_CAST_POINTER is introduced, a workaround of a kind
  of sdcc bug for an increment.

core/net/hc.c
core/net/uip_arp.c
core/net/uaodv.c
- Aggregation assignments are changed to uip_ipaddr_copy.

core/net/psock.c
core/net/uipbuf.c
core/net/dhcpc.c
apps/shell/shell.c
core/ctk/vnc-server.c
core/ctk/vnc-out.c
- "register" keyword in a signature cannot be used in sdcc,
  CC_REGISTER_ARG is used instead.

core/net/uip-over-mesh.c
- An extra semicolon is removed.

apps/dhcp/dhcp-dsc.c
apps/shell/shell-dsc.
apps/ftp/ftp-dsc.c
apps/process-list/process-list-dsc.c
apps/email/email-dsc.c
apps/webserver/webserver-dsc.c
apps/vnc/vnc-dsc.c
apps/vnc/vnc-viewer.h
apps/webbrowser/www-dsc.c
apps/about/about-dsc.c
apps/irc/irc-dsc.c
apps/telnet/telnet-dsc.c
apps/telnetd/telnetd-dsc.c
apps/netconf/netconf-dsc.c
apps/directory/directory-dsc.c
pps/calc/calc-dsc.c
- Modify an extern type to a real declaration, which is static
  to prevent a compile error.

core/net/mac/xmac.c
- Variables cannot be defined in a head of block on sdcc.

core/ctk/ctk.h
core/ctk/ctk.c
apps/program-handler/program-handler.c
- If CTK_CONF_ICONS is diabled, the whole icon-related code is disabled.

Makefile.include
- Add a set of configuration for an assembler.
- $(CLEAN) variable is introduced for customized cleanup.

apps/process-list/process-list.c
- PROCESSLIST_CONF_HEIGHT is introduced to address smaller screen size.

core/lib/ctk-filedialog.c
- FILES_CONF_HEIGHT is introduced to address smaller screen size.
- "register" keyword in a signature cannot be used in sdcc,
  CC_REGISTER_ARG is used instead.

apps/vnc/vnc-viewer.c
- A cast is added to prevent a compile error.
- "register" keyword in a signature cannot be used in sdcc,
  CC_REGISTER_ARG is used instead.

apps/webbrowser/webclient.c
- CC_CONF_INC_CAST_POINTER is introduced, a workaround of a kind
  of sdcc bug for an increment.

core/loader/elfloader.c
- A cast is added to prevent a compile error.

core/net/rime/rimeaddr.c
- An initialization is added to prevent a compile error.

core/net/rime/rudolph0.c
- NULL is changed to 0, because NULL causes a compile error.

core/net/rime/route-discovery.c
- Add an argument to match the definition of nf_callbacks.

cpu/z80/strcasecmp.h
cpu/z80/strcasecmp.c
cpu/z80/contiki-sdcc-conf.h
cpu/z80/mtarch.c
cpu/z80/mtarch.h
cpu/z80/Makefile.z80
- New files to make compilation availble on sdcc.
- Added support for multithreading.
2007-08-30 14:39:16 +00:00
oliverschmidt 36b80dad8a Finally moved service.[c|h] into backyard. The "only" user left in outside backyard is the CTK on GTK simulation layer - which needs to be updated to build / run again... 2007-05-26 23:29:28 +00:00
oliverschmidt d6735fa9b2 Allow to set a default target (different from 'native') to be used if TARGET isn't set. This is i.e. useful for examples requiring network i/o. 2007-05-26 22:38:23 +00:00
oliverschmidt 5f3296e943 Changed packet drivers from services to plain processes.
Now tcpip_output() is a function pointer that is supposed to be set via the macro tcpip_set_outputfunc(). Packet drivers do so on process startup.

Thus if there are several packet drivers in a Contiki system the one started last is the one actually used. This behaviour is especially useful for the 'IP forwarding' "meta" packet driver.
2007-05-20 21:29:39 +00:00
oliverschmidt 9f97290665 Changed Contiki File System (cfs) from a service to a plain library.
This change means that one needs to select _ONE_ cfs implementation at Contiki library link time. But this doesn't appear to be an issue as all platforms have their "favorite" implementation anyway.
2007-05-19 21:05:48 +00:00
oliverschmidt ae2073cac9 Factored out setup directory search path for source files into Makefile.include.
- All compilers used support the -I option for setting an include search directory.

- The Contiki source tree follows the (common) approach of placing declarations (in headerf iles) in the same directory as definitions (in source files).

As a result it makes sense to use the -I compiler option for just the same set of directories used for the vpath gnumake directive.

Note: I checked several builds but nevertheless one or the other might need some additional adjustsments. Sorry for the inconvenience.
2007-05-19 07:54:53 +00:00
adamdunkels 5efb178dc3 Added MAC directory 2007-05-15 07:47:34 +00:00
oliverschmidt 237b1617b5 Factored out setup directory search path for source files into Makefile.include.
- Search target specific directories before CPU specific directories.
- Search CPU specific directories before generic directories.

Note: I checked several builds but nevertheless one or the other might need some additional adjustsments. Sorry for the inconvenience.
2007-05-13 08:41:11 +00:00
oliverschmidt f023e03976 Improved (hopefully) name of function variable. 2007-04-21 15:13:14 +00:00
oliverschmidt fe0e1fca17 Added minimal support for handling assembler sources. 2007-04-21 14:56:52 +00:00
oliverschmidt ffe5f48d55 Replace (very uncommon) 'tab' in prerequisites with 'space'. 2007-04-18 22:38:44 +00:00
oliverschmidt 0acdd92457 Improved compatibility with different platforms - and inline documentation. 2007-04-18 21:28:28 +00:00
oliverschmidt 8b7de528fb Consistently use curly brackets for function calls. 2007-04-14 18:37:06 +00:00
oliverschmidt 661a58cddb Make lists of source files for each app available individually - i.e. for creation of dynamically loadable modules. 2007-04-05 19:50:43 +00:00
adamdunkels eb77a2b2df Added rtimer.c 2007-04-03 19:08:06 +00:00
oliverschmidt e2165bc38b Brought back mt.c which I had removed with revision 1.12 now that we have a cpu/native implementation of mtarch.c. 2007-04-03 00:46:18 +00:00
adamdunkels 509ad55a2e Added text that shows what the computer is doing when making dependencies 2007-03-31 18:40:52 +00:00
adamdunkels 62430052ff Added core elfloader to SYSTEM 2007-03-22 23:54:16 +00:00
adamdunkels 5a0929be91 Added uip-over-mesh 2007-03-22 19:02:42 +00:00
adamdunkels 3a89bafd38 Added a PROJECT_LIBRARIES variable that can be used to add libaries to the .$(TARGET) file 2007-03-16 06:56:58 +00:00
adamdunkels 6f9877d1a8 Added core/net/rime directory 2007-03-15 21:45:15 +00:00
nifi 338aa9e7a2 removed clean of node-id.c because it is no longer auto-generated 2007-01-18 13:47:40 +00:00
oliverschmidt 859ab1b706 Allow a target-specific makesfile to supply a custom rule for dependency file generation in the same way it is done for all other rules. 2006-12-31 14:16:32 +00:00
oliverschmidt 07a26c584a Introduced a new variable CONTIKI_OBJECTFILES in order to allow target-specific makesfile to add object files to the Contiki library which are not compiled from .c files but i.e. assembled from .S files. 2006-12-31 13:54:24 +00:00
oliverschmidt 355630f2d6 The whole Contiki 2.x CVS project doesn't contain a single usage of the Contiki preemptive multithreading library. Therefore I argue to remove it from the default build in order to lower the barrier to entry for new - or old ;-) targets - especially those without a timer interrupt.
If the Contiki preemptive multithreading library is desirable for a specific target it can be added with a simple

CONTIKIFILES += $(THREADS)

in the Makefile.$(TARGET).
2006-12-31 13:46:40 +00:00
oliverschmidt 99fd132d3c If we explicitly do a
ifndef LD
  LD = $(CC)
endif

we could as well use $(LD) for linking ;-)
2006-12-31 13:34:59 +00:00
adamdunkels 0ed1d401d5 Added experimental non-routed packets rawpacket-udp.c 2006-10-22 12:32:43 +00:00
adamdunkels 0aa57dcab5 Added CONTIKI_TARGET #define 2006-10-09 10:09:10 +00:00
adamdunkels a918793e19 Put mt.c back in there, but this time the problematic code that was in the file is commented out 2006-09-01 22:57:32 +00:00
adamdunkels b7a0184eac Removed compilation of unused file mt.c 2006-09-01 07:13:56 +00:00
adamdunkels deba5cfcd5 Added uip-udp-packet.c. Made native the default target. Added a 'targets' target that lists all available targets. 2006-08-31 09:36:29 +00:00
adamdunkels 2fe1ccf8c5 Changed linking to use CC instead of LD to make things work with the current Makefiles (particularly platform/native). Not sure if this change is a good thing; it not, it should be reverted once we get the other Makefiles up to speed. 2006-08-08 13:06:54 +00:00
gpz 5dec29ce00 added some ifdefs to allow overiding some rules by arch specific makefiles 2006-06-26 02:01:30 +00:00
adamdunkels 8ee4f7fc3d Removed out-commented stuff from Makefiles 2006-06-24 06:23:47 +00:00
adamdunkels 6c96877cdf Added the RUNES component model (crtk.c) to the Makefile. (Note: the function names in the crtk.c must be fixed to comply with the Contiki nameing model before becoming a part of Contiki.) 2006-06-23 07:37:15 +00:00
adamdunkels c9e808d638 Import of the contiki-2.x development code from the SICS internal CVS server 2006-06-17 22:41:10 +00:00