Changeset df0bfdf in rtems


Ignore:
Timestamp:
Apr 17, 2008, 10:42:10 PM (13 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.9, 5, master
Children:
e31f420f
Parents:
4f2cd78
Message:

2008-04-17 Joel Sherrill <joel.sherrill@…>

  • libmisc/dummy/dummy.c, sapi/include/confdefs.h: Add checks for application configuration errors. If any POSIX objects or a POSIX init thread is configured without POSIX being configure, then error out. Similarly for ITRON. Add CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER configuration parameter so the application has to explicitly configure the Clock driver in or out if the Timer driver is not configured. Also verify RTEMS was built for multiprocessing, if the user tries to configure a multiprocessing application.
Location:
cpukit
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • cpukit/ChangeLog

    r4f2cd78 rdf0bfdf  
     12008-04-17      Joel Sherrill <joel.sherrill@oarcorp.com>
     2
     3        * libmisc/dummy/dummy.c, sapi/include/confdefs.h: Add checks for
     4        application configuration errors. If any POSIX objects or a POSIX
     5        init thread is configured without POSIX being configure, then error
     6        out. Similarly for ITRON. Add
     7        CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER configuration
     8        parameter so the application has to explicitly configure the Clock
     9        driver in or out if the Timer driver is not configured. Also verify
     10        RTEMS was built for multiprocessing, if the user tries to configure a
     11        multiprocessing application.
     12
    1132008-04-12      Chris Johns <chrisj@rtems.org>
    214
  • cpukit/libmisc/dummy/dummy.c

    r4f2cd78 rdf0bfdf  
    1 /*  Init
     1/*
     2 *  Dummy configuration file
    23 *
    3  *
    4  *  Input parameters:  NONE
    5  *
    6  *  Output parameters:  NONE
    7  *
    8  *  COPYRIGHT (c) 1989-1999.
     4 *  COPYRIGHT (c) 1989-2008.
    95 *  On-Line Applications Research Corporation (OAR).
    106 *
     
    3228/* configuration information */
    3329
     30/* This is enough to get a basic main() up. */
    3431#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
    3532#define CONFIGURE_MAXIMUM_TASKS 10
     
    3835#define CONFIGURE_INIT_TASK_ENTRY_POINT   (void *)main
    3936
     37/* Include basic device drivers needed to call delays */
     38#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
    4039#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
     40
    4141#define CONFIGURE_INIT
    4242
  • cpukit/sapi/include/confdefs.h

    r4f2cd78 rdf0bfdf  
    13691369#endif
    13701370
    1371 /*
    1372  *  Some warnings and error checking
     1371/******************************************************************
     1372 ******************************************************************
     1373 ******************************************************************
     1374 *         CONFIGURATION WARNINGS AND ERROR CHECKING              *
     1375 ******************************************************************
     1376 ******************************************************************
     1377 ******************************************************************
    13731378 */
    13741379
     
    13761381 *  Make sure a task/thread of some sort is configured
    13771382 */
    1378 
    13791383#if (CONFIGURE_MAXIMUM_TASKS == 0) && \
    13801384    (CONFIGURE_MAXIMUM_POSIX_THREADS == 0) && \
     
    13881392 *  tables was defined.
    13891393 */
    1390 
    13911394#if !defined(CONFIGURE_RTEMS_INIT_TASKS_TABLE) && \
    13921395    !defined(CONFIGURE_POSIX_INIT_THREAD_TABLE) && \
    13931396    !defined(CONFIGURE_ITRON_INIT_TASK_TABLE)
    13941397#error "CONFIGURATION ERROR: No initialization tasks or threads configured!!"
     1398#endif
     1399
     1400/*
     1401 *  If the user is trying to configure a multiprocessing application and
     1402 *  RTEMS was not configured and built multiprocessing, then error out.
     1403 */
     1404#if defined(CONFIGURE_MP_APPLICATION) && \
     1405    !defined(RTEMS_MULTIPROCESSING)
     1406#error "CONFIGURATION ERROR: RTEMS not configured for multiprocessing!!"
     1407#endif
     1408
     1409/*
     1410 *  If an attempt was made to configure POSIX objects and
     1411 *  the POSIX API was not configured into RTEMS, error out.
     1412 */
     1413#if !defined(RTEMS_POSIX_API)
     1414  #if ((CONFIGURE_MAXIMUM_POSIX_THREADS != 0) || \
     1415       (CONFIGURE_MAXIMUM_POSIX_MUTEXES != 0) || \
     1416       (CONFIGURE_MAXIMUM_POSIX_CONDITION_VARIABLES != 0) || \
     1417       (CONFIGURE_MAXIMUM_POSIX_KEYS != 0) || \
     1418       (CONFIGURE_MAXIMUM_POSIX_TIMERS != 0) || \
     1419       (CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS != 0) || \
     1420       (CONFIGURE_MAXIMUM_POSIX_MESSAGE_QUEUES != 0) || \
     1421       (CONFIGURE_MAXIMUM_POSIX_SEMAPHORES != 0) || \
     1422       (CONFIGURE_MAXIMUM_POSIX_BARRIERS != 0) || \
     1423       (CONFIGURE_MAXIMUM_POSIX_SPINLOCKS != 0) || \
     1424       (CONFIGURE_MAXIMUM_POSIX_RWLOCKS != 0) || \
     1425      defined(CONFIGURE_POSIX_INIT_THREAD_TABLE)
     1426  #error "CONFIGURATION ERROR: POSIX API support not configured!!"
     1427  #endif
     1428#endif
     1429
     1430/*
     1431 *  If an attempt was made to configure ITRON objects and
     1432 *  the ITRON API was not configured into RTEMS, error out.
     1433 */
     1434#if !defined(RTEMS_ITRON_API)
     1435  #if ((CONFIGURE_MAXIMUM_ITRON_TASKS != 0) || \
     1436       (CONFIGURE_MAXIMUM_ITRON_SEMAPHORES != 0) || \
     1437       (CONFIGURE_MAXIMUM_ITRON_EVENTFLAGS != 0) || \
     1438       (CONFIGURE_MAXIMUM_ITRON_MAILBOXES != 0) || \
     1439       (CONFIGURE_MAXIMUM_ITRON_MESSAGE_BUFFERS != 0) || \
     1440       (CONFIGURE_MAXIMUM_ITRON_PORTS != 0) || \
     1441       (CONFIGURE_MAXIMUM_ITRON_MEMORY_POOLS != 0) || \
     1442       (CONFIGURE_MAXIMUM_ITRON_FIXED_MEMORY_POOLS != 0)) || \
     1443      defined(CONFIGURE_ITRON_INIT_TASK_TABLE)
     1444  #error "CONFIGURATION ERROR: ITRON API support not configured!!"
     1445  #endif
     1446#endif
     1447
     1448/*
     1449 *  You must either explicity include or exclude the clock driver.
     1450 *  It is such a common newbie error to leave it out.  Maybe this
     1451 *  will put an end to it.
     1452 * 
     1453 *  NOTE: If you are using the timer driver, it is considered
     1454 *        mutually exclusive with the clock driver because it
     1455 *        is assume to use the smae hardware.
     1456 */
     1457#if !defined(CONFIGURE_HAS_OWN_DEVICE_DRIVER_TABLE)
     1458  #if !defined(CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER) && \
     1459      !defined(CONFIGURE_APPLICATION_DOES_NOT_NEED_CLOCK_DRIVER) && \
     1460      !defined(CONFIGURE_APPLICATION_NEEDS_TIMER_DRIVER)
     1461    #error "CONFIGURATION ERROR: Do you want the clock driver or not?!?"
     1462   #endif
    13951463#endif
    13961464
     
    14061474#endif
    14071475
    1408 
    14091476#endif
    14101477/* end of include file */
Note: See TracChangeset for help on using the changeset viewer.