source: rtems/c/src/lib/libbsp/i386/pc386/configure.ac @ 8621ed38

Last change on this file since 8621ed38 was 8621ed38, checked in by Sebastian Huber <sebastian.huber@…>, on Apr 3, 2018 at 5:28:03 AM

bsps: Move config macros to RTEMS_BSP_CONFIGURE

Provide HAS_NETWORKING and HAS_SMP Automake conditionals for all BSPs.

This patch is a part of the BSP source reorganization.

Update #3285.

  • Property mode set to 100644
File size: 5.6 KB
Line 
1## Process this file with autoconf to produce a configure script.
2
3AC_PREREQ([2.69])
4AC_INIT([rtems-c-src-lib-libbsp-i386-pc386],[_RTEMS_VERSION],[https://devel.rtems.org/newticket])
5AC_CONFIG_SRCDIR([make/custom/pc386.cfg])
6RTEMS_TOP(../../../../../..)
7RTEMS_SOURCE_TOP
8RTEMS_BUILD_TOP
9RTEMS_BSP_LINKCMDS
10
11RTEMS_CANONICAL_TARGET_CPU
12AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.12.2])
13RTEMS_BSP_CONFIGURE
14
15RTEMS_CHECK_TOOL(OBJCOPY,objcopy,:)
16
17
18RTEMS_BSPOPTS_SET([BSP_ENABLE_VGA],[*],[1])
19RTEMS_BSPOPTS_HELP([BSP_ENABLE_VGA],
20[Set if the VGA and keyboard console support is enabled.])
21AM_CONDITIONAL(RTEMS_VGA,[test "$BSP_ENABLE_VGA" = "1"])
22
23RTEMS_BSPOPTS_SET([BSP_ENABLE_COM1_COM4],[*],[1])
24RTEMS_BSPOPTS_HELP([BSP_ENABLE_COM1_COM4],
25[Set if COM1..COM4 support is enabled.])
26
27RTEMS_BSPOPTS_SET([BSP_ENABLE_IDE],[*],[1])
28RTEMS_BSPOPTS_HELP([BSP_ENABLE_IDE],
29[Set if IDE support is enabled.])
30AM_CONDITIONAL(HAS_IDE,[test "$BSP_ENABLE_IDE" = "1"])
31
32RTEMS_BSPOPTS_SET([USE_COM1_AS_CONSOLE],[*],[0])
33RTEMS_BSPOPTS_HELP([USE_COM1_AS_CONSOLE],
34[Determines, whether the console will be associated with the standard
35 VGA display or with the COM1 serial port.  Currently only the VGA
36 display and COM1 support printk.])
37
38RTEMS_BSPOPTS_SET([IDE_USE_PRIMARY_INTERFACE],[*],[1])
39RTEMS_BSPOPTS_HELP([IDE_USE_PRIMARY_INTERFACE],
40[Determines, whether RTEMS will try to use the primary IDE interface.
41 Disable it, if:
42 - you have no primary IDE interface
43 - or you have no disk attached to this interface
44 - or you do not want to access disks attached to this interface])
45
46RTEMS_BSPOPTS_SET([IDE_USE_SECONDARY_INTERFACE],[*],[0])
47RTEMS_BSPOPTS_HELP([IDE_USE_SECONDARY_INTERFACE],
48[Determines, whether RTEMS will try to use the secondary IDE interface.
49 Enable it, if:
50 - you have a secondary IDE interface
51 - and you have at least one disk attached to this interface
52 - and you do want to access disks attached to this interface])
53
54RTEMS_BSPOPTS_SET([BSP_VIDEO_80x50],[*],[0])
55RTEMS_BSPOPTS_HELP([BSP_VIDEO_80x50],
56[If defined, set the VGA display to 80x50.])
57
58RTEMS_BSPOPTS_SET([CLOCK_DRIVER_USE_TSC],[*],[0])
59RTEMS_BSPOPTS_HELP([CLOCK_DRIVER_USE_TSC],
60[If enabled, the clock driver will use the TSC register available
61 with Pentium-class CPUs to report close to nanosecond-accuracy
62 clock times.
63 Enable it, if:
64 - you have nanosecond timing enabled (you do NOT have
65   USE_TICKS_FOR_CPU_USAGE_STATISTICS enabled)
66 - you do NOT have CLOCK_DRIVER_USE_8254 enabled (use one, the other,
67   or neither)
68 - you have a Pentium which supports TSC (all Intels, and probably
69   all or most clones)
70 - you do not have a variable-speed CPU clock. Note that some
71   motherboard BIOS will automatically vary clock speed for thermal
72   control. Note also, however, that really new Pentium-class chips
73   from Intel and AMD will maintain a constant-rate TSC regardless.
74])
75
76#define CLOCK_DRIVER_USE_8254 $CLOCK_DRIVER_USE_8254
77RTEMS_BSPOPTS_SET([CLOCK_DRIVER_USE_8254],[*],[0])
78RTEMS_BSPOPTS_HELP([CLOCK_DRIVER_USE_8254],
79[If enabled, the clock driver will use the good old 8254 chip
80 to report microsecond-accuracy clock times.
81 Enable it, if:
82 - you have nanosecond timing enabled (you do NOT have
83   USE_TICKS_FOR_CPU_USAGE_STATISTICS enabled)
84 - you do NOT have CLOCK_DRIVER_USE_TSC enabled (use one, the other,
85   or neither)
86 - you do not mind adding roughly 5 microseconds to each context switch.
87])
88
89if test "${USE_CIRRUS_GD5446}" != "1" -a "${USE_VGA}" != "1"; then
90  USE_VBE_RM=1;
91  if test -z "${NUM_APP_DRV_GDT_DESCRIPTORS}"; then
92      NUM_APP_DRV_GDT_DESCRIPTORS=2 ;
93  else
94      NUM_APP_DRV_GDT_DESCRIPTORS+=2 ;
95  fi
96fi
97RTEMS_BSPOPTS_SET([NUM_APP_DRV_GDT_DESCRIPTORS],[*],[0])
98RTEMS_BSPOPTS_HELP([NUM_APP_DRV_GDT_DESCRIPTORS],
99[Defines how many descriptors in GDT may be allocated for application or
100 driver usage.])
101
102RTEMS_BSPOPTS_SET([USE_CIRRUS_GD5446],[*],[0])
103RTEMS_BSPOPTS_HELP([USE_CIRRUS_GD5446],
104[If defined, enables use of the Cirrus GD5446 controller rather than the
105 controller utilizing Vesa Bios Extensions - real mode interface.
106
107 NOTE: This has only been tested on Qemu.])
108AM_CONDITIONAL(USE_CIRRUS_GD5446,test "$USE_CIRRUS_GD5446" = "1")
109
110RTEMS_BSPOPTS_SET([USE_VGA],[*],[0])
111RTEMS_BSPOPTS_HELP([USE_VGA],
112[If defined, enables use of the very basic VGA driver for framebuffer support
113 rather than the controller utilizing Vesa Bios Extensions - real mode
114 interface.])
115AM_CONDITIONAL(USE_VGA,test "$USE_VGA" = "1")
116
117RTEMS_BSPOPTS_SET([USE_VBE_RM],[*],[0])
118RTEMS_BSPOPTS_HELP([USE_VBE_RM],
119[Defined by default. Enables use of the Vesa Bios Extensions - real mode
120 interface, which enables graphical mode and introduce it upon bootup.])
121AM_CONDITIONAL(USE_VBE_RM,test "$USE_VBE_RM" = "1")
122
123if test X${CLOCK_DRIVER_USE_TSC} = X1 -a X${CLOCK_DRIVER_USE_8254} = X1 ; then
124  AC_MSG_ERROR([pc386 both TSC and 8254 specified for clock driver])
125fi
126
127## The PC386 BSP supports SMP configurations if this is enabled.
128RTEMS_BSPOPTS_SET([BSP_HAS_SMP],[*],[1])
129RTEMS_BSPOPTS_HELP([BSP_HAS_SMP],
130[Always defined when on a pc386 to enable the pc386 support for
131 determining the CPU core number in an SMP configuration.])
132
133RTEMS_BSPOPTS_SET([BSP_GDB_STUB],[*],[1])
134RTEMS_BSPOPTS_HELP([BSP_GDB_STUB],
135[Defined by default. Enables use of the GDB stub for debugging via a
136 serial port.])
137AM_CONDITIONAL(BSP_GDB_STUB, test "$BSP_GDB_STUB" = "1")
138
139## if this is an i386, does gas have good code16 support?
140RTEMS_I386_GAS_CODE16
141AM_CONDITIONAL(RTEMS_GAS_CODE16,[test "$RTEMS_GAS_CODE16" = "yes"])
142
143
144AC_SUBST([RTEMS_ROOT],[${rtems_updir}'$(top_builddir)'])
145
146RTEMS_CONFIG_BUILD_SUBDIRS(tools)
147
148AC_SUBST(RTEMS_BSP)
149
150RTEMS_BSP_CLEANUP_OPTIONS
151
152# Explicitly list all Makefiles here
153AC_CONFIG_FILES([Makefile])
154AC_OUTPUT
Note: See TracBrowser for help on using the repository browser.