--- lwip.py | 24 ++++++++++ ntp-file-import.yaml | 92 +++++++++++++++++++++++++++++++++++++ rtemslwip/zynqmp/lwipopts.h | 19 +++++++- 3 files changed, 134 insertions(+), 1 deletion(-) create mode 100644 ntp-file-import.yaml
diff --git a/lwip.py b/lwip.py index 627d88c..2eccb0b 100644 --- a/lwip.py +++ b/lwip.py @@ -60,9 +60,13 @@ xilinx_aarch64_driver_source = [ def build(bld): source_files = [] + ntp_source_files = [] + ntp_incl = '' common_includes = './lwip/src/include ./uLan/ports/os/rtems ./rtemslwip/include ' driver_source = [] drv_incl = ' ' + bsd_compat_sources = ["rtemslwip/bsd_compat/netdb.c", "rtemslwip/bsd_compat/ifaddrs.c", "rtemslwip/bsd_compat/rtems-kernel-program.c"] + bsd_compat_incl = './rtemslwip/bsd_compat_include ' arch_lib_path = rtems.arch_bsp_lib_path(bld.env.RTEMS_VERSION, bld.env.RTEMS_ARCH_BSP) @@ -77,6 +81,13 @@ def build(bld): source_files.append('./rtemslwip/common/rtems_lwip_io.c') source_files.append('./rtemslwip/common/network_compat.c') + with open('ntp-file-import.yaml', 'r') as cf: + files = yaml.full_load(cf.read()) + for f in files['source-files-to-import']: + ntp_source_files.append(os.path.join('./sebhbsd', f)) + for f in files['header-paths-to-import']: + ntp_incl += os.path.join('./sebhbsd', f) + ' ' + def walk_sources(path): sources = [] for root, dirs, files in os.walk(path): @@ -139,6 +150,19 @@ def build(bld): use=['lwip_obj', 'driver_obj']) bld.install_files("${PREFIX}/" + arch_lib_path, ["liblwip.a"]) + bld(features ='c', + target='ntp_obj', + cflags='-g -Wall -O0 -DHAVE_CONFIG_H=1', + includes=ntp_incl + drv_incl + bsd_compat_incl + common_includes, + source=ntp_source_files + bsd_compat_sources, + ) + + bld(features='c cstlib', + target = 'ntp', + cflags='-g -Wall -O0 -DHAVE_CONFIG_H=1', + use=['ntp_obj']) + bld.install_files("${PREFIX}/" + arch_lib_path, ["libntp.a"]) + def install_headers(root_path): for root, dirs, files in os.walk(root_path): for name in files: diff --git a/ntp-file-import.yaml b/ntp-file-import.yaml new file mode 100644 index 0000000..5e4e8a4 --- /dev/null +++ b/ntp-file-import.yaml @@ -0,0 +1,92 @@ +header-paths-to-import: + - freebsd/contrib/ntp/include + - freebsd/contrib/ntp/lib/isc/include + - freebsd/contrib/ntp/lib/isc/pthreads/include + - freebsd/contrib/ntp/lib/isc/unix/include + - freebsd/contrib/ntp/sntp/libopts + - rtemsbsd/include +source-files-to-import: + - freebsd/contrib/ntp/lib/isc/assertions.c + - freebsd/contrib/ntp/lib/isc/error.c + - freebsd/contrib/ntp/lib/isc/hmacsha.c + - freebsd/contrib/ntp/lib/isc/iterated_hash.c + - freebsd/contrib/ntp/lib/isc/lib.c + - freebsd/contrib/ntp/lib/isc/log.c + - freebsd/contrib/ntp/lib/isc/netaddr.c + - freebsd/contrib/ntp/lib/isc/nls/msgcat.c + - freebsd/contrib/ntp/lib/isc/pthreads/mutex.c + - freebsd/contrib/ntp/lib/isc/result.c + - freebsd/contrib/ntp/lib/isc/sha1.c + - freebsd/contrib/ntp/lib/isc/sockaddr.c + - freebsd/contrib/ntp/lib/isc/unix/dir.c + - freebsd/contrib/ntp/lib/isc/unix/errno2result.c + - freebsd/contrib/ntp/lib/isc/unix/file.c + - freebsd/contrib/ntp/lib/isc/unix/interfaceiter.c + - freebsd/contrib/ntp/lib/isc/unix/net.c + - freebsd/contrib/ntp/lib/isc/unix/stdio.c + - freebsd/contrib/ntp/lib/isc/unix/strerror.c + - freebsd/contrib/ntp/lib/isc/unix/time.c + - freebsd/contrib/ntp/libntp/a_md5encrypt.c + - freebsd/contrib/ntp/libntp/atoint.c + - freebsd/contrib/ntp/libntp/authkeys.c + - freebsd/contrib/ntp/libntp/authreadkeys.c + - freebsd/contrib/ntp/libntp/decodenetnum.c + - freebsd/contrib/ntp/libntp/dolfptoa.c + - freebsd/contrib/ntp/libntp/emalloc.c + - freebsd/contrib/ntp/libntp/findconfig.c + - freebsd/contrib/ntp/libntp/humandate.c + - freebsd/contrib/ntp/libntp/is_ip_address.c + - freebsd/contrib/ntp/libntp/lib_strbuf.c + - freebsd/contrib/ntp/libntp/modetoa.c + - freebsd/contrib/ntp/libntp/msyslog.c + - freebsd/contrib/ntp/libntp/netof.c + - freebsd/contrib/ntp/libntp/ntp_calendar.c + - freebsd/contrib/ntp/libntp/ntp_intres.c + - freebsd/contrib/ntp/libntp/ntp_libopts.c + - freebsd/contrib/ntp/libntp/ntp_random.c + - freebsd/contrib/ntp/libntp/ntp_rfc2553.c + - freebsd/contrib/ntp/libntp/ntp_worker.c + - freebsd/contrib/ntp/libntp/numtoa.c + - freebsd/contrib/ntp/libntp/recvbuff.c + - freebsd/contrib/ntp/libntp/refidsmear.c + - freebsd/contrib/ntp/libntp/refnumtoa.c + - freebsd/contrib/ntp/libntp/socket.c + - freebsd/contrib/ntp/libntp/socktoa.c + - freebsd/contrib/ntp/libntp/statestr.c + - freebsd/contrib/ntp/libntp/systime.c + - freebsd/contrib/ntp/libntp/vint64ops.c + - freebsd/contrib/ntp/libntp/work_fork.c + - freebsd/contrib/ntp/libntp/work_thread.c + - freebsd/contrib/ntp/libntp/xsbprintf.c + - freebsd/contrib/ntp/ntpd/cmd_args.c + - freebsd/contrib/ntp/ntpdc/ntpdc_ops.c + - freebsd/contrib/ntp/ntpd/ntp_config.c + - freebsd/contrib/ntp/ntpd/ntp_control.c + - freebsd/contrib/ntp/ntpd/ntp_crypto.c + - freebsd/contrib/ntp/ntpd/ntpd.c + - freebsd/contrib/ntp/ntpd/ntpd-opts.c + - freebsd/contrib/ntp/ntpd/ntp_filegen.c + - freebsd/contrib/ntp/ntpd/ntp_io.c + - freebsd/contrib/ntp/ntpd/ntp_leapsec.c + - freebsd/contrib/ntp/ntpd/ntp_loopfilter.c + - freebsd/contrib/ntp/ntpd/ntp_monitor.c + - freebsd/contrib/ntp/ntpd/ntp_parser.c + - freebsd/contrib/ntp/ntpd/ntp_peer.c + - freebsd/contrib/ntp/ntpd/ntp_proto.c + - freebsd/contrib/ntp/ntpd/ntp_refclock.c + - freebsd/contrib/ntp/ntpd/ntp_request.c + - freebsd/contrib/ntp/ntpd/ntp_restrict.c + - freebsd/contrib/ntp/ntpd/ntp_scanner.c + - freebsd/contrib/ntp/ntpd/ntp_signd.c + - freebsd/contrib/ntp/ntpd/ntpsim.c + - freebsd/contrib/ntp/ntpd/ntp_timer.c + - freebsd/contrib/ntp/ntpd/ntp_util.c + - freebsd/contrib/ntp/ntpd/rc_cmdlength.c + - freebsd/contrib/ntp/ntpd/version.c + - freebsd/contrib/ntp/sntp/libopts/libopts.c + - freebsd/contrib/ntp/libntp/clocktypes.c + - freebsd/contrib/ntp/lib/isc/tsmemcmp.c + - freebsd/contrib/ntp/libntp/machines.c + - freebsd/contrib/ntp/libntp/prettydate.c + - rtemsbsd/rtems/rtems-program.c + - rtemsbsd/rtems/rtems-program-socket.c diff --git a/rtemslwip/zynqmp/lwipopts.h b/rtemslwip/zynqmp/lwipopts.h index 2d358a3..ec5d70f 100644 --- a/rtemslwip/zynqmp/lwipopts.h +++ b/rtemslwip/zynqmp/lwipopts.h @@ -31,6 +31,7 @@ #define NO_SYS 0 #define LWIP_SOCKET 1 +#define SO_REUSE 1 #define LWIP_COMPAT_SOCKETS 1 #define LWIP_NETCONN 1 @@ -48,7 +49,8 @@ #define MEM_ALIGNMENT 64 #define MEM_SIZE 2 * 1024 * 1024 #define MEMP_NUM_PBUF 32 -#define MEMP_NUM_UDP_PCB 4 +#define MEMP_NUM_NETCONN 16 +#define MEMP_NUM_UDP_PCB 16 #define MEMP_NUM_TCP_PCB 32 #define MEMP_NUM_TCP_PCB_LISTEN 8 #define MEMP_NUM_TCP_SEG 256 @@ -114,10 +116,25 @@ #define CONFIG_LINKSPEED_AUTODETECT 1 #define TCPIP_MBOX_SIZE 20 #define DEFAULT_TCP_RECVMBOX_SIZE 20 +#define DEFAULT_UDP_RECVMBOX_SIZE 20 #define DEFAULT_ACCEPTMBOX_SIZE 5 #define tskIDLE_PRIORITY RTEMS_MAXIMUM_PRIORITY #define portTICK_RATE_MS ( rtems_clock_get_ticks_per_second() * 1000 ) #define vTaskDelay( x ) sys_arch_delay( x ) +#if 0 +#define LWIP_DEBUG +#define DNS_DEBUG LWIP_DBG_ON +#define DHCP_DEBUG LWIP_DBG_ON +#define TCP_DEBUG LWIP_DBG_ON +#define TCP_INPUT_DEBUG LWIP_DBG_ON +#define UDP_DEBUG LWIP_DBG_ON +#define IP_DEBUG LWIP_DBG_ON +#define NETIF_DEBUG LWIP_DBG_ON +#define SOCKETS_DEBUG LWIP_DBG_ON +#define MEMP_DEBUG LWIP_DBG_ON +#define TCPIP_DEBUG LWIP_DBG_ON +#endif + #endif /* __LWIPOPTS_H__ */ -- 2.30.2 _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel