The ELF test/example has been extended so the individual ELF test programs can link against the SYSCALL library (if it is available) or against the C library to eliminate or minimize the need for symbol tables (2014-8-29).
This commit is contained in:
parent
e7612e0922
commit
7b721a8b17
@ -11,6 +11,32 @@ config EXAMPLES_ELF
|
|||||||
|
|
||||||
if EXAMPLES_ELF
|
if EXAMPLES_ELF
|
||||||
|
|
||||||
|
config EXAMPLES_ELF_SYSCALL
|
||||||
|
bool "Link with SYSCALL library"
|
||||||
|
default n
|
||||||
|
depends on LIB_SYSCALL
|
||||||
|
---help---
|
||||||
|
Link with the SYCALL library. By default, all undefined symbols
|
||||||
|
must be provided via a symbol table. But if this option is
|
||||||
|
selected, then each ELF test program will link with the SYSCALL
|
||||||
|
library and will interface with the OS system calls. In this case,
|
||||||
|
those symbols will not be undefined. If the SYSCALL library is
|
||||||
|
available then you probably will want to select this option.
|
||||||
|
|
||||||
|
config EXAMPLES_ELF_LIBC
|
||||||
|
bool "Link with LIBC"
|
||||||
|
default n
|
||||||
|
---help---
|
||||||
|
Link with the C library (and also math library if it was built).
|
||||||
|
By default, all undefined symbols must be provided via a symbol
|
||||||
|
table. But if this option is selected, then each ELF test program
|
||||||
|
will link with the SYSCALL library and will interface with the OS
|
||||||
|
system calls. You probably will NOT want this option, however,
|
||||||
|
because it will substantially increase the size of code. For
|
||||||
|
example, a separate copy of printf() would be linked with every
|
||||||
|
program greatly increasing the total code size. This option is
|
||||||
|
primarily intended only for testing.
|
||||||
|
|
||||||
config EXAMPLES_ELF_DEVMINOR
|
config EXAMPLES_ELF_DEVMINOR
|
||||||
int "ROMFS Minor Device Number"
|
int "ROMFS Minor Device Number"
|
||||||
default 0
|
default 0
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/hello/Makefile
|
# examples/elf/tests/errno/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = errno
|
BIN = errno
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/hello/Makefile
|
# examples/elf/tests/hello/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = hello
|
BIN = hello
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/helloxx/Makefile
|
# examples/elf/tests/helloxx/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN1 = hello++1
|
BIN1 = hello++1
|
||||||
BIN2 = hello++2
|
BIN2 = hello++2
|
||||||
ifeq ($(CONFIG_BINFMT_CONSTRUCTORS),y)
|
ifeq ($(CONFIG_BINFMT_CONSTRUCTORS),y)
|
||||||
@ -82,18 +112,18 @@ $(LIBSTDC_STUBS_LIB):
|
|||||||
|
|
||||||
$(BIN1): $(OBJS1)
|
$(BIN1): $(OBJS1)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
$(BIN2): $(OBJS2)
|
$(BIN2): $(OBJS2)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
# BIN3 is equivalent to BIN2 except that is uses static initializers
|
# BIN3 is equivalent to BIN2 except that is uses static initializers
|
||||||
|
|
||||||
ifeq ($(CONFIG_BINFMT_CONSTRUCTORS),y)
|
ifeq ($(CONFIG_BINFMT_CONSTRUCTORS),y)
|
||||||
$(BIN3): $(OBJS3)
|
$(BIN3): $(OBJS3)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# BIN4 is similar to BIN3 except that it uses the streams code from libstdc++
|
# BIN4 is similar to BIN3 except that it uses the streams code from libstdc++
|
||||||
@ -102,7 +132,7 @@ endif
|
|||||||
#
|
#
|
||||||
#$(BIN4): $(OBJS4)
|
#$(BIN4): $(OBJS4)
|
||||||
# @echo "LD: $<"
|
# @echo "LD: $<"
|
||||||
# $(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
# $(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN1))
|
$(call DELFILE, $(BIN1))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/longjmp/Makefile
|
# examples/elf/tests/longjmp/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = longjmp
|
BIN = longjmp
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/mutex/Makefile
|
# examples/elf/tests/mutex/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = mutex
|
BIN = mutex
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/pthread/Makefile
|
# examples/elf/tests/pthread/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = pthread
|
BIN = pthread
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/signal/Makefile
|
# examples/elf/tests/signal/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = signal
|
BIN = signal
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/hello/Makefile
|
# examples/elf/tests/struct/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -37,6 +37,36 @@
|
|||||||
|
|
||||||
CELFFLAGS += -I.
|
CELFFLAGS += -I.
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = struct
|
BIN = struct
|
||||||
SRCS = struct_main.c struct_dummy.c
|
SRCS = struct_main.c struct_dummy.c
|
||||||
OBJS = $(SRCS:.c=.o)
|
OBJS = $(SRCS:.c=.o)
|
||||||
@ -49,7 +79,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
############################################################################
|
############################################################################
|
||||||
# examples/elf/tests/task/Makefile
|
# examples/elf/tests/task/Makefile
|
||||||
#
|
#
|
||||||
# Copyright (C) 2012 Gregory Nutt. All rights reserved.
|
# Copyright (C) 2012, 2014 Gregory Nutt. All rights reserved.
|
||||||
# Author: Gregory Nutt <gnutt@nuttx.org>
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
||||||
#
|
#
|
||||||
# Redistribution and use in source and binary forms, with or without
|
# Redistribution and use in source and binary forms, with or without
|
||||||
@ -35,6 +35,36 @@
|
|||||||
|
|
||||||
-include $(TOPDIR)/Make.defs
|
-include $(TOPDIR)/Make.defs
|
||||||
|
|
||||||
|
ifeq ($(WINTOOL),y)
|
||||||
|
NUTTXLIB = "${shell cygpath -w $(TOPDIR)$(DELIM)lib}"
|
||||||
|
else
|
||||||
|
NUTTXLIB = "$(TOPDIR)$(DELIM)lib"
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBPATH =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
else
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
LDELFFLAGS += -Bstatic
|
||||||
|
LIBPATH += -L $(NUTTXLIB)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
LIBS =
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_LIBC),y)
|
||||||
|
ifeq ($(CONFIG_NUTTX_KERNEL),y)
|
||||||
|
LIBS += -luc
|
||||||
|
else
|
||||||
|
LIBS += -lc
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(CONFIG_EXAMPLES_ELF_SYSCALL),y)
|
||||||
|
LIBS += -lproxies
|
||||||
|
endif
|
||||||
|
|
||||||
BIN = task
|
BIN = task
|
||||||
|
|
||||||
SRCS = $(BIN).c
|
SRCS = $(BIN).c
|
||||||
@ -48,7 +78,7 @@ $(OBJS): %.o: %.c
|
|||||||
|
|
||||||
$(BIN): $(OBJS)
|
$(BIN): $(OBJS)
|
||||||
@echo "LD: $<"
|
@echo "LD: $<"
|
||||||
$(Q) $(LD) $(LDELFFLAGS) -o $@ $^
|
$(Q) $(LD) $(LDELFFLAGS) $(LIBPATH) -o $@ $^ $(LIBS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(call DELFILE, $(BIN))
|
$(call DELFILE, $(BIN))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user