forked from Imagelibrary/rtems
Patch rtems-rc-20000626-1.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
Comments follow: Building linux/posix fails due to including lib/include/sys/cdefs.h instead of linux's sys/cdefs.h. AFAIS, this sys/cdefs.h is specific to newlib and should probably not be used on any unix host. Therefore, I changed the relevant Makefile.am/configure.in to condionally install sys/cdefs.h only if newlib is present. This triggered another bug inside of the newlib-check for one of RTEMS target's (Unfortunately I can't remember which - mips/i960 ? ... one of the more exotic ...), for which int func() isn't identical to void func(). Note: This patch needs to be tested under Cygwin and Solaris. I am particularily unsure about Cygwin/posix, as it applies a different version newlib which must not trigger RTEMS newlib check (it is supposed to fail) and if it may need RTEMS's sys/cdefs.h.
This commit is contained in:
@@ -12,17 +12,17 @@ AC_CACHE_CHECK([for newlib],
|
|||||||
|
|
||||||
dnl some versions of newlib provide not_required_by_rtems
|
dnl some versions of newlib provide not_required_by_rtems
|
||||||
AC_TRY_LINK(
|
AC_TRY_LINK(
|
||||||
[extern int not_required_by_rtems() ;],
|
[extern void not_required_by_rtems() ;],
|
||||||
[not_required_by_rtems()],
|
[not_required_by_rtems()],
|
||||||
rtems_cv_use_newlib="yes")
|
rtems_cv_use_newlib="yes")
|
||||||
|
|
||||||
dnl older versions of newlib provided rtems_provides_crt0
|
dnl some versions of newlib provide rtems_provides_crt0()
|
||||||
if test -z "$rtems_cv_use_newlib"; then
|
if test -z "$rtems_cv_use_newlib"; then
|
||||||
AC_TRY_LINK(
|
AC_TRY_LINK(
|
||||||
[extern int rtems_provides_crt0 ;],
|
[extern void rtems_provides_crt0() ;],
|
||||||
[rtems_provides_crt0 = 0],
|
[rtems_provides_crt0()],
|
||||||
rtems_cv_use_newlib="yes",
|
rtems_cv_use_newlib="yes",
|
||||||
rtems_cv_use_newlib="no")
|
rtems_cv_use_newlib="no")
|
||||||
fi
|
fi
|
||||||
CC=$rtems_save_CC])
|
CC=$rtems_save_CC])
|
||||||
RTEMS_USE_NEWLIB="$rtems_cv_use_newlib"
|
RTEMS_USE_NEWLIB="$rtems_cv_use_newlib"
|
||||||
|
|||||||
@@ -24,12 +24,13 @@ RTEMS_PROJECT_ROOT
|
|||||||
|
|
||||||
RTEMS_PROG_CC_FOR_TARGET
|
RTEMS_PROG_CC_FOR_TARGET
|
||||||
RTEMS_CANONICALIZE_TOOLS
|
RTEMS_CANONICALIZE_TOOLS
|
||||||
|
RTEMS_CHECK_NEWLIB
|
||||||
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
|
RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
|
||||||
RTEMS_CHECK_MULTIPROCESSING(RTEMS_BSP)
|
RTEMS_CHECK_MULTIPROCESSING(RTEMS_BSP)
|
||||||
RTEMS_CHECK_NETWORKING(RTEMS_BSP)
|
RTEMS_CHECK_NETWORKING(RTEMS_BSP)
|
||||||
|
|
||||||
AM_CONDITIONAL(UNIX,test "$RTEMS_CPU" = "unix")
|
AM_CONDITIONAL(UNIX,test x"$RTEMS_CPU" = x"unix")
|
||||||
|
AM_CONDITIONAL(NEWLIB,test x"$RTEMS_USE_NEWLIB" = x"yes")
|
||||||
|
|
||||||
# find all the CPU dependent library Makefiles
|
# find all the CPU dependent library Makefiles
|
||||||
AC_CONFIG_SUBDIRS(libcpu)
|
AC_CONFIG_SUBDIRS(libcpu)
|
||||||
|
|||||||
@@ -9,12 +9,11 @@ else
|
|||||||
NETWORKING_H_FILES += ioctl.h
|
NETWORKING_H_FILES += ioctl.h
|
||||||
endif
|
endif
|
||||||
|
|
||||||
if UNIX
|
if NEWLIB
|
||||||
else
|
NEWLIB_H_FILES += termios.h cdefs.h
|
||||||
NEWLIB_H_FILES += termios.h
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
H_FILES = cdefs.h ioccom.h utime.h $(NEWLIB_H_FILES) $(NETWORKING_H_FILES)
|
H_FILES = ioccom.h utime.h $(NEWLIB_H_FILES) $(NETWORKING_H_FILES)
|
||||||
|
|
||||||
noinst_HEADERS = utime.h termios.h ioctl.h ioccom.h
|
noinst_HEADERS = utime.h termios.h ioctl.h ioccom.h
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user