1
0
Fork 0
forked from nuttx/nuttx-update

Build system: Remove fixed lib/ subdirectory and its content. Replace with new directory called staging/ that is created dynamically when building and removed when 'make clean' is done. This both improves the name and eliminates a garbage directory from the repository.

This commit is contained in:
Gregory Nutt 2018-05-29 11:36:21 -06:00
parent 18273b437a
commit f2a89813f2
28 changed files with 200 additions and 245 deletions

1
.gitignore vendored
View file

@ -15,6 +15,7 @@ core
/.version
/defconfig
/Make.defs
/staging
/nuttx
/nuttx.*
/nuttx-*

View file

@ -1,7 +1,7 @@
############################################################################
# FlatLibs.mk
#
# Copyright (C) 2007-2012, 2014, 2016-2017 Gregory Nutt. All rights
# Copyright (C) 2007-2012, 2014, 2016-2018 Gregory Nutt. All rights
# reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
@ -43,88 +43,88 @@
# EXPORTLIBS is the list of libraries that should be exported by
# 'make export' is
NUTTXLIBS = lib$(DELIM)libsched$(LIBEXT)
NUTTXLIBS = staging$(DELIM)libsched$(LIBEXT)
USERLIBS =
# Driver support. Generally depends on file descriptor support but there
# are some components in the drivers directory that are needed even if file
# descriptors are not supported.
NUTTXLIBS += lib$(DELIM)libdrivers$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libdrivers$(LIBEXT)
# Add libraries for board support
NUTTXLIBS += lib$(DELIM)libconfigs$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libconfigs$(LIBEXT)
# Add libraries for syscall support.
NUTTXLIBS += lib$(DELIM)libc$(LIBEXT) lib$(DELIM)libmm$(LIBEXT)
NUTTXLIBS += lib$(DELIM)libarch$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libc$(LIBEXT) staging$(DELIM)libmm$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libarch$(LIBEXT)
ifeq ($(CONFIG_LIB_SYSCALL),y)
NUTTXLIBS += lib$(DELIM)libstubs$(LIBEXT)
USERLIBS += lib$(DELIM)libproxies$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libstubs$(LIBEXT)
USERLIBS += staging$(DELIM)libproxies$(LIBEXT)
endif
# Add libraries for C++ support. CXX, CXXFLAGS, and COMPILEXX must
# be defined in Make.defs for this to work!
ifeq ($(CONFIG_HAVE_CXX),y)
NUTTXLIBS += lib$(DELIM)libcxx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcxx$(LIBEXT)
endif
# Add library for application support.
ifneq ($(APPDIR),)
NUTTXLIBS += lib$(DELIM)libapps$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libapps$(LIBEXT)
endif
# Add libraries for network support
ifeq ($(CONFIG_NET),y)
NUTTXLIBS += lib$(DELIM)libnet$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libnet$(LIBEXT)
endif
# Add libraries for Crypto API support
ifeq ($(CONFIG_CRYPTO),y)
NUTTXLIBS += lib$(DELIM)libcrypto$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcrypto$(LIBEXT)
endif
# Add libraries for file system support
ifeq ($(CONFIG_NFILE_DESCRIPTORS),0)
ifneq ($(CONFIG_NSOCKET_DESCRIPTORS),0)
NUTTXLIBS += lib$(DELIM)libfs$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libfs$(LIBEXT)
endif
else
NUTTXLIBS += lib$(DELIM)libfs$(LIBEXT) lib$(DELIM)libbinfmt$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libfs$(LIBEXT) staging$(DELIM)libbinfmt$(LIBEXT)
endif
# Add libraries for the NX graphics sub-system
ifeq ($(CONFIG_NX),y)
NUTTXLIBS += lib$(DELIM)libgraphics$(LIBEXT)
NUTTXLIBS += lib$(DELIM)libnx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libgraphics$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libnx$(LIBEXT)
else ifeq ($(CONFIG_NXFONTS),y)
NUTTXLIBS += lib$(DELIM)libnx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libnx$(LIBEXT)
endif
# Add libraries for the Audio sub-system
ifeq ($(CONFIG_AUDIO),y)
NUTTXLIBS += lib$(DELIM)libaudio$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libaudio$(LIBEXT)
endif
# Add libraries for the Wireless sub-system
ifeq ($(CONFIG_WIRELESS),y)
NUTTXLIBS += lib$(DELIM)libwireless$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libwireless$(LIBEXT)
endif
# Add C++ library
ifeq ($(CONFIG_HAVE_CXX),y)
NUTTXLIBS += lib$(DELIM)libcxx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcxx$(LIBEXT)
endif
# Export all libraries

View file

@ -1,7 +1,7 @@
############################################################################
# KernalLibs.mk
# KernelLibs.mk
#
# Copyright (C) 2014, 2016 Gregory Nutt. All rights reserved.
# Copyright (C) 2014, 2016, 2018 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
# Redistribution and use in source and binary forms, with or without
@ -42,84 +42,84 @@
# EXPORTLIBS is the list of libraries that should be exported by
# 'make export' is
NUTTXLIBS = lib$(DELIM)libsched$(LIBEXT)
NUTTXLIBS = staging$(DELIM)libsched$(LIBEXT)
USERLIBS =
# Driver support. Generally depends on file descriptor support but there
# are some components in the drivers directory that are needed even if file
# descriptors are not supported.
NUTTXLIBS += lib$(DELIM)libdrivers$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libdrivers$(LIBEXT)
# Add libraries for board support
NUTTXLIBS += lib$(DELIM)libconfigs$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libconfigs$(LIBEXT)
# Add libraries for syscall support. The C library will be needed by
# both the kernel- and user-space builds. For now, the memory manager (mm)
# is placed in user space (only).
NUTTXLIBS += lib$(DELIM)libstubs$(LIBEXT) lib$(DELIM)libkc$(LIBEXT)
NUTTXLIBS += lib$(DELIM)libkmm$(LIBEXT) lib$(DELIM)libkarch$(LIBEXT)
USERLIBS += lib$(DELIM)libproxies$(LIBEXT) lib$(DELIM)libuc$(LIBEXT)
USERLIBS += lib$(DELIM)libumm$(LIBEXT) lib$(DELIM)libuarch$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libstubs$(LIBEXT) staging$(DELIM)libkc$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libkmm$(LIBEXT) staging$(DELIM)libkarch$(LIBEXT)
USERLIBS += staging$(DELIM)libproxies$(LIBEXT) staging$(DELIM)libuc$(LIBEXT)
USERLIBS += staging$(DELIM)libumm$(LIBEXT) staging$(DELIM)libuarch$(LIBEXT)
# Add libraries for C++ support. CXX, CXXFLAGS, and COMPILEXX must
# be defined in Make.defs for this to work!
ifeq ($(CONFIG_HAVE_CXX),y)
USERLIBS += lib$(DELIM)libcxx$(LIBEXT)
USERLIBS += staging$(DELIM)libcxx$(LIBEXT)
endif
# Add libraries for network support
ifeq ($(CONFIG_NET),y)
NUTTXLIBS += lib$(DELIM)libnet$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libnet$(LIBEXT)
endif
# Add libraries for Crypto API support
ifeq ($(CONFIG_CRYPTO),y)
NUTTXLIBS += lib$(DELIM)libcrypto$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcrypto$(LIBEXT)
endif
# Add libraries for file system support
ifeq ($(CONFIG_NFILE_DESCRIPTORS),0)
ifneq ($(CONFIG_NSOCKET_DESCRIPTORS),0)
NUTTXLIBS += lib$(DELIM)libfs$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libfs$(LIBEXT)
endif
else
NUTTXLIBS += lib$(DELIM)libfs$(LIBEXT) lib$(DELIM)libbinfmt$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libfs$(LIBEXT) staging$(DELIM)libbinfmt$(LIBEXT)
endif
# Add libraries for the NX graphics sub-system
ifeq ($(CONFIG_NX),y)
NUTTXLIBS += lib$(DELIM)libgraphics$(LIBEXT)
NUTTXLIBS += lib$(DELIM)libknx$(LIBEXT)
USERLIBS += lib$(DELIM)libunx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libgraphics$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libknx$(LIBEXT)
USERLIBS += staging$(DELIM)libunx$(LIBEXT)
else ifeq ($(CONFIG_NXFONTS),y)
NUTTXLIBS += lib$(DELIM)libknx$(LIBEXT)
USERLIBS += lib$(DELIM)libunx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libknx$(LIBEXT)
USERLIBS += staging$(DELIM)libunx$(LIBEXT)
endif
# Add libraries for the Audio sub-system
ifeq ($(CONFIG_AUDIO),y)
NUTTXLIBS += lib$(DELIM)libaudio$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libaudio$(LIBEXT)
endif
# Add libraries for the Wireless sub-system
ifeq ($(CONFIG_WIRELESS),y)
NUTTXLIBS += lib$(DELIM)libwireless$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libwireless$(LIBEXT)
endif
# Add C++ library
ifeq ($(CONFIG_HAVE_CXX),y)
NUTTXLIBS += lib$(DELIM)libcxx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcxx$(LIBEXT)
endif
# Export only the user libraries

View file

@ -43,91 +43,91 @@
libc$(DELIM)libkc$(LIBEXT): context
$(Q) $(MAKE) -C libc TOPDIR="$(TOPDIR)" libkc$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libkc$(LIBEXT): libc$(DELIM)libkc$(LIBEXT)
staging$(DELIM)libkc$(LIBEXT): libc$(DELIM)libkc$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
libnx$(DELIM)libknx$(LIBEXT): context
$(Q) $(MAKE) -C libnx TOPDIR="$(TOPDIR)" libknx$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libknx$(LIBEXT): libnx$(DELIM)libknx$(LIBEXT)
staging$(DELIM)libknx$(LIBEXT): libnx$(DELIM)libknx$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
mm$(DELIM)libkmm$(LIBEXT): context
$(Q) $(MAKE) -C mm TOPDIR="$(TOPDIR)" libkmm$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libkmm$(LIBEXT): mm$(DELIM)libkmm$(LIBEXT)
staging$(DELIM)libkmm$(LIBEXT): mm$(DELIM)libkmm$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
$(ARCH_SRC)$(DELIM)libkarch$(LIBEXT): context
$(Q) $(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" libkarch$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libkarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libkarch$(LIBEXT)
staging$(DELIM)libkarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libkarch$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
sched$(DELIM)libsched$(LIBEXT): context
$(Q) $(MAKE) -C sched TOPDIR="$(TOPDIR)" libsched$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libsched$(LIBEXT): sched$(DELIM)libsched$(LIBEXT)
staging$(DELIM)libsched$(LIBEXT): sched$(DELIM)libsched$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
net$(DELIM)libnet$(LIBEXT): context
$(Q) $(MAKE) -C net TOPDIR="$(TOPDIR)" libnet$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libnet$(LIBEXT): net$(DELIM)libnet$(LIBEXT)
staging$(DELIM)libnet$(LIBEXT): net$(DELIM)libnet$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
configs$(DELIM)libconfigs$(LIBEXT): context
$(Q) $(MAKE) -C configs TOPDIR="$(TOPDIR)" libconfigs$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libconfigs$(LIBEXT): configs$(DELIM)libconfigs$(LIBEXT)
staging$(DELIM)libconfigs$(LIBEXT): configs$(DELIM)libconfigs$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
crypto$(DELIM)libcrypto$(LIBEXT): context
$(Q) $(MAKE) -C crypto TOPDIR="$(TOPDIR)" libcrypto$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libcrypto$(LIBEXT): crypto$(DELIM)libcrypto$(LIBEXT)
staging$(DELIM)libcrypto$(LIBEXT): crypto$(DELIM)libcrypto$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
fs$(DELIM)libfs$(LIBEXT): context
$(Q) $(MAKE) -C fs TOPDIR="$(TOPDIR)" libfs$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libfs$(LIBEXT): fs$(DELIM)libfs$(LIBEXT)
staging$(DELIM)libfs$(LIBEXT): fs$(DELIM)libfs$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
drivers$(DELIM)libdrivers$(LIBEXT): context
$(Q) $(MAKE) -C drivers TOPDIR="$(TOPDIR)" libdrivers$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libdrivers$(LIBEXT): drivers$(DELIM)libdrivers$(LIBEXT)
staging$(DELIM)libdrivers$(LIBEXT): drivers$(DELIM)libdrivers$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
binfmt$(DELIM)libbinfmt$(LIBEXT): context
$(Q) $(MAKE) -C binfmt TOPDIR="$(TOPDIR)" libbinfmt$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libbinfmt$(LIBEXT): binfmt$(DELIM)libbinfmt$(LIBEXT)
staging$(DELIM)libbinfmt$(LIBEXT): binfmt$(DELIM)libbinfmt$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
graphics$(DELIM)libgraphics$(LIBEXT): context
$(Q) $(MAKE) -C graphics TOPDIR="$(TOPDIR)" libgraphics$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libgraphics$(LIBEXT): graphics$(DELIM)libgraphics$(LIBEXT)
staging$(DELIM)libgraphics$(LIBEXT): graphics$(DELIM)libgraphics$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
audio$(DELIM)libaudio$(LIBEXT): context
$(Q) $(MAKE) -C audio TOPDIR="$(TOPDIR)" libaudio$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libaudio$(LIBEXT): audio$(DELIM)libaudio$(LIBEXT)
staging$(DELIM)libaudio$(LIBEXT): audio$(DELIM)libaudio$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
wireless$(DELIM)libwireless$(LIBEXT): context
$(Q) $(MAKE) -C wireless TOPDIR="$(TOPDIR)" libwireless$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libwireless$(LIBEXT): wireless$(DELIM)libwireless$(LIBEXT)
staging$(DELIM)libwireless$(LIBEXT): wireless$(DELIM)libwireless$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
$(ARCH_SRC)$(DELIM)libarch$(LIBEXT): context
$(Q) $(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" libarch$(LIBEXT) KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libarch$(LIBEXT)
staging$(DELIM)libarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libarch$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
# Special case
@ -135,7 +135,7 @@ lib$(DELIM)libarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libarch$(LIBEXT)
syscall$(DELIM)libstubs$(LIBEXT): context
$(Q) $(MAKE) -C syscall TOPDIR="$(TOPDIR)" libstubs$(LIBEXT) # KERNEL=y EXTRADEFINES=$(KDEFINE)
lib$(DELIM)libstubs$(LIBEXT): syscall$(DELIM)libstubs$(LIBEXT)
staging$(DELIM)libstubs$(LIBEXT): syscall$(DELIM)libstubs$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
# Possible user-mode builds
@ -143,43 +143,43 @@ lib$(DELIM)libstubs$(LIBEXT): syscall$(DELIM)libstubs$(LIBEXT)
libc$(DELIM)libuc$(LIBEXT): context
$(Q) $(MAKE) -C libc TOPDIR="$(TOPDIR)" libuc$(LIBEXT) KERNEL=n
lib$(DELIM)libuc$(LIBEXT): libc$(DELIM)libuc$(LIBEXT)
staging$(DELIM)libuc$(LIBEXT): libc$(DELIM)libuc$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
libnx$(DELIM)libunx$(LIBEXT): context
$(Q) $(MAKE) -C libnx TOPDIR="$(TOPDIR)" libunx$(LIBEXT) KERNEL=n
lib$(DELIM)libunx$(LIBEXT): libnx$(DELIM)libunx$(LIBEXT)
staging$(DELIM)libunx$(LIBEXT): libnx$(DELIM)libunx$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
mm$(DELIM)libumm$(LIBEXT): context
$(Q) $(MAKE) -C mm TOPDIR="$(TOPDIR)" libumm$(LIBEXT) KERNEL=n
lib$(DELIM)libumm$(LIBEXT): mm$(DELIM)libumm$(LIBEXT)
staging$(DELIM)libumm$(LIBEXT): mm$(DELIM)libumm$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
$(ARCH_SRC)$(DELIM)libuarch$(LIBEXT): context
$(Q) $(MAKE) -C $(ARCH_SRC) TOPDIR="$(TOPDIR)" libuarch$(LIBEXT) KERNEL=n
lib$(DELIM)libuarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libuarch$(LIBEXT)
staging$(DELIM)libuarch$(LIBEXT): $(ARCH_SRC)$(DELIM)libuarch$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
libxx$(DELIM)libcxx$(LIBEXT): context
$(Q) $(MAKE) -C libxx TOPDIR="$(TOPDIR)" libcxx$(LIBEXT) KERNEL=n
lib$(DELIM)libcxx$(LIBEXT): libxx$(DELIM)libcxx$(LIBEXT)
staging$(DELIM)libcxx$(LIBEXT): libxx$(DELIM)libcxx$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
$(APPDIR)$(DELIM)libapps$(LIBEXT): context
$(Q) $(MAKE) -C $(APPDIR) TOPDIR="$(TOPDIR)" libapps$(LIBEXT) KERNEL=n
lib$(DELIM)libapps$(LIBEXT): $(APPDIR)$(DELIM)libapps$(LIBEXT)
staging$(DELIM)libapps$(LIBEXT): $(APPDIR)$(DELIM)libapps$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
syscall$(DELIM)libproxies$(LIBEXT): context
$(Q) $(MAKE) -C syscall TOPDIR="$(TOPDIR)" libproxies$(LIBEXT) KERNEL=n
lib$(DELIM)libproxies$(LIBEXT): syscall$(DELIM)libproxies$(LIBEXT)
staging$(DELIM)libproxies$(LIBEXT): syscall$(DELIM)libproxies$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
# Possible non-kernel builds
@ -187,17 +187,17 @@ lib$(DELIM)libproxies$(LIBEXT): syscall$(DELIM)libproxies$(LIBEXT)
libc$(DELIM)libc$(LIBEXT): context
$(Q) $(MAKE) -C libc TOPDIR="$(TOPDIR)" libc$(LIBEXT)
lib$(DELIM)libc$(LIBEXT): libc$(DELIM)libc$(LIBEXT)
staging$(DELIM)libc$(LIBEXT): libc$(DELIM)libc$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
libnx$(DELIM)libnx$(LIBEXT): context
$(Q) $(MAKE) -C libnx TOPDIR="$(TOPDIR)" libnx$(LIBEXT)
lib$(DELIM)libnx$(LIBEXT): libnx$(DELIM)libnx$(LIBEXT)
staging$(DELIM)libnx$(LIBEXT): libnx$(DELIM)libnx$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)
mm$(DELIM)libmm$(LIBEXT): context
$(Q) $(MAKE) -C mm TOPDIR="$(TOPDIR)" libmm$(LIBEXT)
lib$(DELIM)libmm$(LIBEXT): mm$(DELIM)libmm$(LIBEXT)
staging$(DELIM)libmm$(LIBEXT): mm$(DELIM)libmm$(LIBEXT)
$(Q) $(call INSTALL_LIB,$<,$@)

View file

@ -157,7 +157,7 @@ endif
# LINKLIBS derives from NUTTXLIBS and is simply the same list with the
# subdirectory removed
LINKLIBS = $(patsubst lib/%,%,$(NUTTXLIBS))
LINKLIBS = $(patsubst staging/%,%,$(NUTTXLIBS))
# Export tool definitions
@ -393,6 +393,9 @@ include LibTargets.mk
# is an archive. Exactly what is performed during pass1 or what it generates
# is unknown to this makefile unless CONFIG_PASS1_OBJECT is defined.
staging:
$(Q) mkdir staging
pass1deps: pass1dep $(USERLIBS)
pass1: pass1deps
@ -455,7 +458,7 @@ endif
# pass1 dependencies and pass1 first, then build pass2 dependencies and pass2.
# in that case, execute 'make pass1 pass2' from the command line.
$(BIN): pass1deps pass2deps pass1 pass2
$(BIN): staging pass1deps pass2deps pass1 pass2
# download
#
@ -577,6 +580,7 @@ clean: subdir_clean
$(call DELFILE, nuttx_user*)
$(call DELFILE, .cproject)
$(call DELFILE, .project)
$(call DELDIR, staging)
$(call CLEAN)
subdir_distclean:

View file

@ -150,7 +150,7 @@ endif
# LINKLIBS derives from NUTTXLIBS and is simply the same list with the
# subdirectory removed
LINKLIBS = $(patsubst lib\\%,%,$(NUTTXLIBS))
LINKLIBS = $(patsubst staging\\%,%,$(NUTTXLIBS))
# Export tool definitions
@ -405,6 +405,9 @@ include LibTargets.mk
# is an archive. Exactly what is performed during pass1 or what it generates
# is unknown to this makefile unless CONFIG_PASS1_OBJECT is defined.
staging:
$(Q) mkdir staging
pass1deps: pass1dep $(USERLIBS)
pass1: pass1deps
@ -453,7 +456,7 @@ endif
# pass1 dependencies and pass1 first, then build pass2 dependencies and pass2.
# in that case, execute 'make pass1 pass2' from the command line.
$(BIN): pass1deps pass2deps pass1 pass2
$(BIN): staging pass1deps pass2deps pass1 pass2
# download
#

View file

@ -1,7 +1,7 @@
############################################################################
# ProtectedLibs.mk
#
# Copyright (C) 2007-2012, 2014, 2016-2017 Gregory Nutt. All rights
# Copyright (C) 2007-2012, 2014, 2016-2018 Gregory Nutt. All rights
# reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
@ -43,90 +43,90 @@
# EXPORTLIBS is the list of libraries that should be exported by
# 'make export' is
NUTTXLIBS = lib$(DELIM)libsched$(LIBEXT)
NUTTXLIBS = staging$(DELIM)libsched$(LIBEXT)
USERLIBS =
# Driver support. Generally depends on file descriptor support but there
# are some components in the drivers directory that are needed even if file
# descriptors are not supported.
NUTTXLIBS += lib$(DELIM)libdrivers$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libdrivers$(LIBEXT)
# Add libraries for board support
NUTTXLIBS += lib$(DELIM)libconfigs$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libconfigs$(LIBEXT)
# Add libraries for syscall support. The C library will be needed by
# both the kernel- and user-space builds. For now, the memory manager (mm)
# is placed in user space (only).
NUTTXLIBS += lib$(DELIM)libstubs$(LIBEXT) lib$(DELIM)libkc$(LIBEXT)
NUTTXLIBS += lib$(DELIM)libkmm$(LIBEXT) lib$(DELIM)libkarch$(LIBEXT)
USERLIBS += lib$(DELIM)libproxies$(LIBEXT) lib$(DELIM)libuc$(LIBEXT)
USERLIBS += lib$(DELIM)libumm$(LIBEXT) lib$(DELIM)libuarch$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libstubs$(LIBEXT) staging$(DELIM)libkc$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libkmm$(LIBEXT) staging$(DELIM)libkarch$(LIBEXT)
USERLIBS += staging$(DELIM)libproxies$(LIBEXT) staging$(DELIM)libuc$(LIBEXT)
USERLIBS += staging$(DELIM)libumm$(LIBEXT) staging$(DELIM)libuarch$(LIBEXT)
# Add libraries for C++ support. CXX, CXXFLAGS, and COMPILEXX must
# be defined in Make.defs for this to work!
ifeq ($(CONFIG_HAVE_CXX),y)
USERLIBS += lib$(DELIM)libcxx$(LIBEXT)
USERLIBS += staging$(DELIM)libcxx$(LIBEXT)
endif
# Add library for application support.
ifneq ($(APPDIR),)
USERLIBS += lib$(DELIM)libapps$(LIBEXT)
USERLIBS += staging$(DELIM)libapps$(LIBEXT)
endif
# Add libraries for network support
ifeq ($(CONFIG_NET),y)
NUTTXLIBS += lib$(DELIM)libnet$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libnet$(LIBEXT)
endif
# Add libraries for Crypto API support
ifeq ($(CONFIG_CRYPTO),y)
NUTTXLIBS += lib$(DELIM)libcrypto$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcrypto$(LIBEXT)
endif
# Add libraries for file system support
ifeq ($(CONFIG_NFILE_DESCRIPTORS),0)
ifneq ($(CONFIG_NSOCKET_DESCRIPTORS),0)
NUTTXLIBS += lib$(DELIM)libfs$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libfs$(LIBEXT)
endif
else
NUTTXLIBS += lib$(DELIM)libfs$(LIBEXT) lib$(DELIM)libbinfmt$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libfs$(LIBEXT) staging$(DELIM)libbinfmt$(LIBEXT)
endif
# Add libraries for the NX graphics sub-system
ifeq ($(CONFIG_NX),y)
NUTTXLIBS += lib$(DELIM)libgraphics$(LIBEXT)
NUTTXLIBS += lib$(DELIM)libknx$(LIBEXT)
USERLIBS += lib$(DELIM)libunx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libgraphics$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libknx$(LIBEXT)
USERLIBS += staging$(DELIM)libunx$(LIBEXT)
else ifeq ($(CONFIG_NXFONTS),y)
NUTTXLIBS += lib$(DELIM)libknx$(LIBEXT)
USERLIBS += lib$(DELIM)libunx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libknx$(LIBEXT)
USERLIBS += staging$(DELIM)libunx$(LIBEXT)
endif
# Add libraries for the Audio sub-system
ifeq ($(CONFIG_AUDIO),y)
NUTTXLIBS += lib$(DELIM)libaudio$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libaudio$(LIBEXT)
endif
# Add libraries for the Wireless sub-system
ifeq ($(CONFIG_WIRELESS),y)
NUTTXLIBS += lib$(DELIM)libwireless$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libwireless$(LIBEXT)
endif
# Add C++ library
ifeq ($(CONFIG_HAVE_CXX),y)
NUTTXLIBS += lib$(DELIM)libcxx$(LIBEXT)
NUTTXLIBS += staging$(DELIM)libcxx$(LIBEXT)
endif
# Export only the user libraries

View file

@ -139,7 +139,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -148,13 +148,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -94,7 +94,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -103,13 +103,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -94,7 +94,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -103,13 +103,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -91,7 +91,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -100,13 +100,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -90,7 +90,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -99,13 +99,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -114,7 +114,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -123,13 +123,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -89,7 +89,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -98,13 +98,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -115,7 +115,7 @@ AFLAGS += -I$(TOPDIR)/include
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -124,13 +124,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -211,7 +211,7 @@ endif
LINKLIBS ?=
RELLIBS = $(patsubst %.a,%,$(patsubst lib%,-l%,$(LINKLIBS)))
RELPATHS += -L"$(TOPDIR)/lib"
RELPATHS += -L"$(TOPDIR)/staging"
# Add the board-specific library and directory

View file

@ -91,7 +91,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -100,13 +100,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -92,7 +92,7 @@ LINKLIBS ?=
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
BOARDMAKE = $(if $(wildcard .\board\Makefile),y,)
LIBPATHS += -L"$(TOPDIR)\lib"
LIBPATHS += -L"$(TOPDIR)\staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)\arch\$(CONFIG_ARCH)\src\board"
endif
@ -101,13 +101,13 @@ else
BOARDMAKE = $(if $(wildcard ./board/Makefile),y,)
ifeq ($(WINTOOL),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/lib"}"
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/staging"}"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"}"
endif
else
LIBPATHS += -L"$(TOPDIR)/lib"
LIBPATHS += -L"$(TOPDIR)/staging"
ifeq ($(BOARDMAKE),y)
LIBPATHS += -L"$(TOPDIR)/arch/$(CONFIG_ARCH)/src/board"
endif

View file

@ -111,7 +111,7 @@ nuttx.linkcmd: $(LINKCMDTEMPLATE)
ifeq ($(CONFIG_WINDOWS_NATIVE),y)
@echo "$(TOPDIR)\nuttx"= \>>nuttx.linkcmd
@echo "$(ARCHSRCDIR)\$(HEAD_OBJ)", \>>nuttx.linkcmd
$(Q) for %%G in ($(LINKLIBS)) do ( echo "$(TOPDIR)\lib\%%G", \>>nuttx.linkcmd )
$(Q) for %%G in ($(LINKLIBS)) do ( echo "$(TOPDIR)\staging\%%G", \>>nuttx.linkcmd )
@echo "$(ARCHSRCDIR)\board\libboard$(LIBEXT)", \>>nuttx.linkcmd
@echo "$(ZDSSTDLIBDIR)\chelpld$(LIBEXT)", \>>nuttx.linkcmd
@echo "$(ZDSSTDLIBDIR)\fpld$(LIBEXT)">>nuttx.linkcmd
@ -119,7 +119,7 @@ else
@echo "\"${shell cygpath -w $(TOPDIR)/nuttx}\"= \\" >>nuttx.linkcmd
@echo " \"${shell cygpath -w $(ARCHSRCDIR)/$(HEAD_OBJ)}\", \\" >>nuttx.linkcmd
$(Q) ( for lib in $(LINKLIBS); do \
echo " \"`cygpath -w $(TOPDIR)/lib/$${lib}`\", \\" >>nuttx.linkcmd; \
echo " \"`cygpath -w $(TOPDIR)/staging/$${lib}`\", \\" >>nuttx.linkcmd; \
done ; )
@echo " \"${shell cygpath -w $(ARCHSRCDIR)/board/libboard$(LIBEXT)}\", \\" >>nuttx.linkcmd
@echo " \"${shell cygpath -w $(ZDSSTDLIBDIR)/chelpld$(LIBEXT)}\", \\" >>nuttx.linkcmd

View file

@ -89,48 +89,48 @@ $(COBJS): %$(OBJEXT): %.c
# This is a kludge to work around some conflicting symbols in the SDCC libraries
$(TOPDIR)/lib/$(SDCCLIB): $(SDCC_LIBDIR)/$(SDCCLIB)
$(Q) cp $(SDCC_LIBDIR)/$(SDCCLIB) $(TOPDIR)/lib/$(SDCCLIB)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) calloc.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) malloc.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) realloc.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) free.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) printf_large.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) sprintf.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) vprintf.rel
$(TOPDIR)/staging/$(SDCCLIB): $(SDCC_LIBDIR)/$(SDCCLIB)
$(Q) cp $(SDCC_LIBDIR)/$(SDCCLIB) $(TOPDIR)/staging/$(SDCCLIB)
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) calloc.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) malloc.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) realloc.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) free.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) printf_large.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) sprintf.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) vprintf.rel
ifneq ($(CONFIG_LIBC_ARCH_STRCPY),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) strcpy.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) strcpy.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_STRLEN),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) strlen.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) strlen.rel
endif
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strcat.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strcat.rel
ifneq ($(CONFIG_LIBC_ARCH_STRCHR),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strchr.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strchr.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_STRCMP),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strcmp.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strcmp.rel
endif
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strcspn.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strncat.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strncmp.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strcspn.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strncat.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strncmp.rel
ifneq ($(CONFIG_LIBC_ARCH_STRNCPY),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strncpy.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strncpy.rel
endif
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strpbrk.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strrchr.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strspn.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strstr.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _strtok.rel
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _memchr.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strpbrk.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strrchr.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strspn.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strstr.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _strtok.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _memchr.rel
ifneq ($(CONFIG_LIBC_ARCH_MEMCMP),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _memcmp.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _memcmp.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_MEMCPY),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _memcpy.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _memcpy.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_MEMSET),y)
$(Q) sdar d $(TOPDIR)/lib/$(SDCCLIB) _memset.rel
$(Q) sdar d $(TOPDIR)/staging/$(SDCCLIB) _memset.rel
endif
# Create a header file that contains addressing information needed by the
@ -158,10 +158,10 @@ nuttx.lnk:
@echo "LD: nuttx.lnk"
@echo "--" >nuttx.lnk # Non-interactive
@echo "-k $(BOARDDIR)" >>nuttx.lnk # Path to board library
@echo "-k $(TOPDIR)/lib" >>nuttx.lnk # Path to top-level lib directory
@echo "-k $(TOPDIR)/staging" >>nuttx.lnk # Path to top-level staging directory
@echo "-l libboard$(LIBEXT)" >>nuttx.lnk # Name of board library
$(Q) for LIB in $(LINKLIBS); do \
echo "-l $(TOPDIR)/lib/$$LIB" >> nuttx.lnk ;\
echo "-l $(TOPDIR)/staging/$$LIB" >> nuttx.lnk ;\
done
@echo "-l $(SDCCLIB)" >>nuttx.lnk # Name of SDCC z80 library
ifneq ($(CONFIG_LINKER_HOME_AREA),)
@ -185,7 +185,7 @@ endif
@echo "$(HEAD_OBJ)" >>nuttx.lnk # Path to head object
@echo "-e" >>nuttx.lnk # End of script
nuttx$(EXEEXT): asm_mem.h $(TOPDIR)/lib/$(SDCCLIB) $(HEAD_OBJ) board/libboard$(LIBEXT) nuttx.lnk
nuttx$(EXEEXT): asm_mem.h $(TOPDIR)/staging/$(SDCCLIB) $(HEAD_OBJ) board/libboard$(LIBEXT) nuttx.lnk
@echo "LD: nuttx.ihx"
$(Q) $(LD) -f nuttx.lnk
$(Q) cp -f nuttx.map $(TOPDIR)/.

View file

@ -89,48 +89,48 @@ $(COBJS): %$(OBJEXT): %.c
# This is a kludge to work around some conflicting symbols in the SDCC libraries
$(TOPDIR)\lib\$(SDCCLIB): $(SDCC_LIBDIR)\$(SDCCLIB)
$(Q) cp $(SDCC_LIBDIR)\$(SDCCLIB) $(TOPDIR)\lib\$(SDCCLIB)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) calloc.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) malloc.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) realloc.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) free.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) printf_large.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) sprintf.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) vprintf.rel
$(TOPDIR)\staging\$(SDCCLIB): $(SDCC_LIBDIR)\$(SDCCLIB)
$(Q) cp $(SDCC_LIBDIR)\$(SDCCLIB) $(TOPDIR)\staging\$(SDCCLIB)
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) calloc.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) malloc.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) realloc.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) free.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) printf_large.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) sprintf.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) vprintf.rel
ifneq ($(CONFIG_LIBC_ARCH_STRCPY),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) strcpy.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) strcpy.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_STRLEN),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) strlen.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) strlen.rel
endif
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strcat.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strcat.rel
ifneq ($(CONFIG_LIBC_ARCH_STRCHR),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strchr.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strchr.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_STRCMP),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strcmp.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strcmp.rel
endif
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strcspn.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strncat.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strncmp.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strcspn.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strncat.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strncmp.rel
ifneq ($(CONFIG_LIBC_ARCH_STRNCPY),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strncpy.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strncpy.rel
endif
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strpbrk.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strrchr.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strspn.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strstr.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _strtok.rel
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _memchr.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strpbrk.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strrchr.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strspn.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strstr.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _strtok.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _memchr.rel
ifneq ($(CONFIG_LIBC_ARCH_MEMCMP),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _memcmp.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _memcmp.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_MEMCPY),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _memcpy.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _memcpy.rel
endif
ifneq ($(CONFIG_LIBC_ARCH_MEMSET),y)
$(Q) sdar d $(TOPDIR)\lib\$(SDCCLIB) _memset.rel
$(Q) sdar d $(TOPDIR)\staging\$(SDCCLIB) _memset.rel
endif
# Create a header file that contains addressing information needed by the
@ -158,9 +158,9 @@ nuttx.lnk:
@echo LD: nuttx.lnk
@echo -->nuttx.lnk
@echo -k $(BOARDDIR)>>nuttx.lnk
@echo -k $(TOPDIR)\lib>>nuttx.lnk
@echo -k $(TOPDIR)\staging>>nuttx.lnk
@echo -l libboard$(LIBEXT)>>nuttx.lnk
$(Q) for %%G in ($(LINKLIBS)) do ( echo -l $(TOPDIR)\lib\%%G>> nuttx.lnk )
$(Q) for %%G in ($(LINKLIBS)) do ( echo -l $(TOPDIR)\staging\%%G>> nuttx.lnk )
@echo -l $(SDCCLIB)>>nuttx.lnk
ifneq ($(CONFIG_LINKER_HOME_AREA),)
@echo -b _HOME=$(CONFIG_LINKER_HOME_AREA)>>nuttx.lnk
@ -183,7 +183,7 @@ endif
@echo $(HEAD_OBJ)>>nuttx.lnk
@echo -e>>nuttx.lnk
nuttx$(EXEEXT): asm_mem.h $(TOPDIR)\lib\$(SDCCLIB) $(HEAD_OBJ) board\libboard$(LIBEXT) nuttx.lnk
nuttx$(EXEEXT): asm_mem.h $(TOPDIR)\staging\$(SDCCLIB) $(HEAD_OBJ) board\libboard$(LIBEXT) nuttx.lnk
@echo LD: nuttx.ihx
$(Q) $(LD) -f nuttx.lnk
$(Q) cp -f nuttx.map $(TOPDIR)\.

View file

@ -105,7 +105,7 @@ nuttx.linkcmd: $(LINKCMDTEMPLATE)
@echo "\"${shell cygpath -w "$(TOPDIR)/nuttx"}\"= \\" >>nuttx.linkcmd
@echo " \"${shell cygpath -w "$(ARCHSRCDIR)/$(HEAD_OBJ)"}\", \\" >>nuttx.linkcmd
$(Q) ( for lib in $(LINKLIBS); do \
echo " \"`cygpath -w "$(TOPDIR)/lib/$${lib}"`\", \\" >>nuttx.linkcmd; \
echo " \"`cygpath -w "$(TOPDIR)/staging/$${lib}"`\", \\" >>nuttx.linkcmd; \
done ; )
@echo " \"${shell cygpath -w "$(ARCHSRCDIR)/board/libboard$(LIBEXT)"}\", \\" >>nuttx.linkcmd
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)

View file

@ -99,7 +99,7 @@ nuttx.linkcmd: $(LINKCMDTEMPLATE)
$(Q) cp -f $(LINKCMDTEMPLATE) nuttx.linkcmd
@echo "$(TOPDIR)\nuttx"= \>>nuttx.linkcmd
@echo "$(ARCHSRCDIR)\$(HEAD_OBJ)", \>>nuttx.linkcmd
$(Q) for %%G in ($(LINKLIBS)) do ( echo "$(TOPDIR)\lib\%%G", \>>nuttx.linkcmd )
$(Q) for %%G in ($(LINKLIBS)) do ( echo "$(TOPDIR)\staging\%%G", \>>nuttx.linkcmd )
@echo "$(ARCHSRCDIR)\board\libboard$(LIBEXT)", \>>nuttx.linkcmd
ifeq ($(CONFIG_ARCH_CHIP_Z8F640X),y)
@echo "$(ZDSSTDLIBDIR)\chelprevaaD$(LIBEXT)", \>>nuttx.linkcmd

View file

@ -52,11 +52,11 @@ PASS1_LINKLIBS += $(PASS1_LIBBOARD)
ifeq ($(WINTOOL),y)
# Windows-native toolchains
PASS1_LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)$(DELIM)lib"}"
PASS1_LIBPATHS += -L"${shell cygpath -w "$(TOPDIR)$(DELIM)staging"}"
PASS1_LDSCRIPT = -T "${shell cygpath -w $(TOPDIR)$(DELIM)configs$(DELIM)$(CONFIG_ARCH_BOARD)$(DELIM)locked$(DELIM)ld-locked.inc}"
else
# Linux/Cygwin-native toolchain
PASS1_LIBPATHS += -L"$(TOPDIR)$(DELIM)lib"
PASS1_LIBPATHS += -L"$(TOPDIR)$(DELIM)staging"
PASS1_LDSCRIPT = -T$(TOPDIR)$(DELIM)configs$(DELIM)$(CONFIG_ARCH_BOARD)$(DELIM)locked$(DELIM)ld-locked.inc
endif

1
lib/.gitignore vendored
View file

@ -1 +0,0 @@
/*.lib

View file

@ -1,46 +0,0 @@
############################################################################
# lib/Makefile
#
# Copyright (C) 2012, 2016 Gregory Nutt. All rights reserved.
# Author: Gregory Nutt <gnutt@nuttx.org>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
# 3. Neither the name NuttX nor the names of its contributors may be
# used to endorse or promote products derived from this software
# without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
###########################################################################
-include $(TOPDIR)/Make.defs
all:
.PHONY: depend clean distclean
depend:
clean:
$(call CLEAN)
distclean: clean

View file

@ -1,6 +0,0 @@
lib/ README File
================
This directory is reserved for libraries generated during the NuttX build process

View file

@ -153,7 +153,7 @@ define ASSEMBLE
endef
# INSTALL_LIB - Install a library $1 into target $2
# Example: $(call INSTALL_LIB, libabc.a, $(TOPDIR)/lib/)
# Example: $(call INSTALL_LIB, libabc.a, $(TOPDIR)/staging/)
define INSTALL_LIB
@echo "IN: $1 -> $2"