40 Commits

Author SHA1 Message Date
Sebastian Huber
c935f1def2 build: Do not require RTEMS_POSIX_API 2022-06-22 17:25:12 +02:00
Chris Johns
6514d56158 sys/kern: Add VFS support
- Refactor the libio interface

- Move syscalls into an rtemsbsd location

- Provide a root directory mount point

Update #4475
2021-08-28 10:25:46 +10:00
Chris Johns
089780d2de waf: Implement module dependency checking in the build system
- Do not build a test if a dependency is not enabled.

- Perform a dependency check and generate an error if an enabled module
  depends on a disabled module.

Closes #4077
2020-09-16 15:52:15 +10:00
Chris Johns
025af7c529 build: Separate the kernel and user land include paths
- Provide support for separate user and kernel include paths in
  libbsd.py.

- Update all added files with a suitable context to build them
  with. Supported contexts are `kernel` and `user`.

- Kernel source use the kernel, CPU, and build header paths in
  this order.

- User source use the user, kernel, CPU and build header paths
  in this order. The FreeBSD /usr/include tree has some kernel
  header files installed as well as user land header files. This
  complicates the separation as some kernel header files are not
  visible to user land code while other are. This is handled by
  appending the kernel header paths to the user header paths so
  user land code will include a user header with the same name as
  a kernel header over the kernel header but will find a kernel
  header if there is no matching user header file.

Closes #4067
2020-09-16 15:52:15 +10:00
Chris Johns
93effa4b01 waf: Reformat to PEP8 using yapf 2020-09-16 15:52:15 +10:00
Christian Mauderer
d044b29ac4 wscript: Update RTEMS version to 6. 2020-07-29 13:09:11 +02:00
Vijay Kumar Banerjee
236295c67e wscript: Python2 support for unicode strings in contexts
Closes #3909
2020-03-30 11:20:38 +11:00
Christian Mauderer
854427bec4 waf: Add configurations with different modules.
Update #3351
2018-04-10 08:55:47 +02:00
Chris Johns
f7a09b5985 waf: Support building from libbsd.py directly from waf.
Remove the need to generate a waf script.

Move various pieces of data from the builder code to libbsd.py and make
it configuration data.

Update #3351
2018-04-10 08:54:52 +02:00
Sebastian Huber
b15a71914d Change RTEMS version to 5
Update #3220.
2017-11-09 14:28:55 +01:00
Christian Mauderer
d18c6435c4 Allow to set optimization level during configure.
This allows to set the optimization level for libbsd via a configure
switch. Useful for building with for example no optimization during
debug or with size optimization for space restricted targets.
2017-10-02 14:18:52 +02:00
Chris Johns
32ceb14ee2 Add support for long command lines and fix some shell rules on Windows. 2016-06-16 13:33:06 +10:00
Chris Johns
e1e10cddee waf: Add the ability to set FreeBSD options on the configure command line.
Add --freebsd-options to add specific FreeBSD compile time options to
the build. This is a developer tool.
2016-04-23 17:37:27 +10:00
Chris Johns
051ef305f7 waf: Move the generated content to libbsd_waf.py. 2016-04-20 18:22:39 +10:00
Chris Johns
00a7956122 Remove the makefile generator. 2016-04-18 11:02:00 +10:00
Chris Johns
97c5024a79 Add RTEMS version support, update all python to 2 and 3.
Add support to force the RTEMS version. This remove the need for using
the --rtems-version command line option if the automatic detection fails.

Update all python code to support python 2 and 3.

Update rtems_waf to the latest version to support the RTEMS version,
check environment variables and to display the CC version.

Sort all tests. I think the unsorted list is dependent on the version
of python and so would result in repo noise as if it regenerted.
2016-04-18 10:53:20 +10:00
Sebastian Huber
cf9836e322 Add .exe extension to test programs 2015-11-18 09:24:19 +01:00
Sebastian Huber
a76483d8dd Use latest rtems_waf 2015-11-13 10:58:45 +01:00
Sebastian Huber
c6899159e4 Use optimization level -O2 2015-11-12 13:12:22 +01:00
Sebastian Huber
d6c6017c25 Python 3 compatibility 2015-11-12 13:10:03 +01:00
Sebastian Huber
ba446132d4 dwc_otg: Port to RTEMS 2015-11-12 13:01:32 +01:00
Sebastian Huber
28bfb6bd39 waf: Add x86 include paths for i386 arch 2015-09-29 10:43:33 +02:00
Sebastian Huber
af3944c754 waf: Do not add '.' to standard include path 2015-09-29 10:16:10 +02:00
Sebastian Huber
40f7d5cf7d builder.py: addTargetSourceCPUDependentSourceFiles
Avoid and delete this function.
2015-09-25 14:14:04 +02:00
Sebastian Huber
7d460ce630 Avoid pci_bus.c file rename 2015-09-25 14:05:58 +02:00
Sebastian Huber
5e62c732fa Delete superfluous pci_bus.c files 2015-09-01 07:44:48 +02:00
Sebastian Huber
3fece79604 Delete superfluous legacy.c files 2015-09-01 07:38:49 +02:00
Sebastian Huber
88205a560b waf_generator.py: Move arch header includes
Make sure that architecture specific header files are found first.
2015-07-31 11:55:47 +02:00
Sebastian Huber
a3ef8e6a47 e1000: Add missing file 2015-07-31 11:54:27 +02:00
Gene Smith
45a60417e8 modified: waf_generator.py Fix incorrect encoding of NET_CFG_GATEWAY_IP and change _IP_IP ending to _IP. Remove _IP_IP ending from NET_TAP_INTERFACE.
modified:   wscript
Re-generated from "./freebsd-to-rtems -m" based on
waf_generator.py
2015-06-26 14:07:03 +10:00
Chris Johns
98d7c3c015 Check if RTEMS is built with POSIX. 2015-06-17 09:55:53 +10:00
Chris Johns
06cd120921 TCPDUMP and PCAP fixes to defines. 2015-06-16 13:19:32 +10:00
Chris Johns
8440506ee8 Add tcpdump and libpcap.
- Update the file builder generator to handle generator specific cflags and
  includes. The tcpdump and libpcap have localised headers and need specific
  headers paths to see them. There are also module specific flags and these
  need to be passed to the lex and yacc generators.

- Add the tcpdump support.
2015-06-15 17:42:23 +10:00
Chris Johns
1383c80c5a Add conditional support for RTEMS PCI to the waf build.
Check for the "rtems/pci.h" header and provide conditional build support
with waf to build for BSPs that do not have PCI support. The Makefile build
always defines HAVE_RTEMS_PCI_H which is the same state with this change.

The PCI calls still exist however they do nothing and return a constant.
Any PCI based driver that makes these calls on a BSP that does not have
PCI support will not work which is understandable. Either change the
driver or add PCI support the BSP.
2015-06-01 10:36:58 +10:00
Chris Johns
84288f4279 waf: Check for dlfcn.h header is availavble. 2015-05-22 12:18:31 +10:00
Chris Johns
0768880d75 waf: Add install support.
Install to the --prefix path passed to configure.
2015-05-21 17:01:34 +10:00
Chris Johns
56d787f194 wscript: Regenerate 2015-05-21 09:31:48 +10:00
Sebastian Huber
595b333ad2 Add INVARIANTS support 2015-05-20 15:03:32 +02:00
Chris Johns
8b102105ee wscript: Regenerate. 2015-05-20 22:00:11 +10:00
Chris Johns
feaf877392 wscript: Generate. 2015-05-20 17:45:38 +10:00