| Commit message (Collapse) | Author | Files | Lines |
|
Close #3250.
Close #4081.
|
|
|
|
A "make dist" is not supported. So, it makes no sense to have pure "make
dist" related stuff in the Makefile.am.
|
|
A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.
This has at least seven problems:
* The make preinstall step itself needs time and disk space.
* Errors in header files show up in the build tree copy. This makes it
hard for editors to open the right file to fix the error.
* There is no clear relationship between source and build tree header
files. This makes an audit of the build process difficult.
* The visibility of all header files in the build tree makes it
difficult to enforce API barriers. For example it is discouraged to
use BSP-specifics in the cpukit.
* An introduction of a new build system is difficult.
* Include paths specified by the -B option are system headers. This
may suppress warnings.
* The parallel build had sporadic failures on some hosts.
This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.
The new cpukit include directories are:
* cpukit/include
* cpukit/score/cpu/@RTEMS_CPU@/include
* cpukit/libnetworking
The new BSP include directories are:
* bsps/include
* bsps/@RTEMS_CPU@/include
* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include
There are build tree include directories for generated files.
The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.
The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.
Update #3254.
|
|
|
|
Fix the interrupt and stop the spurious interrupt from happening.
The fix moves the EOI to C code and cleans that functionality out
of the asm part of the ISR handler.
The code checks the ISR and IRR registers on the enable.
Only ack the master for a slave IRQ if the slave has no other pending
requests.
|
|
configuration space
This patch fundamentally results from enhancements to the pc386 BSP
to support systems which do **NOT** have the legacy PCI BIOS. The
patch adds support for detecting when legacy PCI BIOS is not
present and then using IO space to access to PCI Configuration Space.
This resulted in dynamically selected between two implementations
of PCI and refactoring out the shared methods.
This patch adds shared implementations of pci_bus_count() and
pci_find_device(). Subsequent patches will remove implementations
of these methods in other BSPs where possible.
|
|
This first step eliminates the following as public APIs for the pc386
BSP:
+ pcib_conf_read8
+ pcib_conf_read16
+ pcib_conf_read32
+ pcib_conf_write8
+ pcib_conf_write16
+ pcib_conf_write32
The if_fxp.c driver uses these enough where I provided local macros
to allow the code to be mostly unmodified. On other architectures
these names have been used privately. It will take multiple patches
to completely eliminate these symbols from the RTEMS source tree.
The focus of the first effort is just to eliminate these as a public
pc386 API so support can be added for systems without legacy PCI BIOS.
|
|
|
|
|
|
* Makefile.am: Merge-in shared/Makefile.am.
* ChangeLog: Merge-in shared/ChangeLog.
* configure.ac: Remove shared/Makefile.am.
|
|
* Makefile.am: Use @RTEMS_BSP_FAMILY@ instead of
$(RTEMS_BSP_FAMILY).
|
|
* Makefile.am: Reflect having moved aclocal/.
|
|
Makefile.am: Reflect having moved automake.
|
|
* configure.ac:
AC_INIT(package,_RTEMS_VERSION,_RTEMS_BUGS).
AM_INIT_AUTOMAKE([no-define foreign 1.6]).
* Makefile.am: Remove AUTOMAKE_OPTIONS.
|
|
* Makefile.am: Use ... instead of RTEMS_TOPdir in ACLOCAL_AMFLAGS.
|
|
* Makefile.am: Switch to ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal.
|
|
* Makefile.am: ACLOCAL_AMFLAGS= -I $(RTEMS_TOPdir)/macros.
Switch to GNU canonicalization.
|
|
|
|
that converts the i386 directory to automake.
NOTE: Ralf is unable to build any i386 BSPs. This was true before and
after this patch and appears (to Joel) to be a tool issue unrelated since
others can build i386 BSPs.
|
|
that converts the m68k directory to automake.
NOTE: This one is fully tested by building *all* bsps with
../../rtems-rc-20000104/configure \
--target=m68k-rtems \
--prefix=/tmp/rtems \
--enable-cxx \
--disable-posix \
--enable-rdbg \
--disable-networking \
--enable-maintainer-mode \
--enable-multiprocessing \
--disable-tests
make
|
|
that converts the mips64orion directory to automake.
Ralf's Note: This patch demonstrates another kind of supporting the new
style of configuration, which avoids having to port all Makefile.ins to
automake, but to keep using most old style Makefile.ins.
|
|
that converts the unix directory to automake.
Ralf's note: Please check c/src/lib/libbsp/unix/posix/startup/Makefile.am.
I am not sure if it is correct.
|
|
that converts the sparc directory to automake.
Ralf's note: The implementation of libbsp/sparc/* gives a nearly minimal
example of the new configuration scheme.
|
|
that converts nearly all of libbsp/sh to automake. Comments follow:
1. Almost full automake support for the libbsp/sh/ subdirectories
(exception libbsp/sh/gensh*/wrapup/*)
2. Fixes for libbsp/bare/*
3. Updates to libbsp/* configuration which supports old (autoconf/deep
configuration) and new (automake/flat/cascaded configuration) style
configuration of libbsp/<cpu>/*
|
|
to automake by Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
|
|
which ontains all what was left over from the other patches (Primarily
minor configuration cleanups).
To apply:
patch -p1 < rtems-rc-19991203-9.diff
./bootstrap
|
|
which adds automake support to libbsp/bare.
|