2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 <2022> 2023 2024 | Index | 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 <2022> 2023 2024 |
<== Date ==> | <== Thread ==> |
---|
Subject: | readline in base 7.0.7 |
From: | Mark Rivers via Core-talk <core-talk at aps.anl.gov> |
To: | "core-talk at aps.anl.gov" <core-talk at aps.anl.gov> |
Date: | Thu, 8 Sep 2022 17:40:18 +0000 |
I just built base 7.0.7 on Centos 7 with no changes to the files in configure/os. My IOCs now are not built with libreadline, while in base 7.0.6.1 they were, again with no changes to the configure/os files. I see this change between base 7.0.6.1 and base 7.0.7 corvette:base-7.0.7/configure/os>git diff R7.0.6.1 R7.0.7 CONFIG_SITE.Common.linux-x CONFIG_SITE.Common.linux-x86 CONFIG_SITE.Common.linux-x86_64 CONFIG_SITE.Common.linux-xscale_be corvette:base-7.0.7/configure/os>git diff R7.0.6.1 R7.0.7 CONFIG_SITE.Common.linux-x86_64 diff --git a/configure/os/CONFIG_SITE.Common.linux-x86_64 b/configure/os/CONFIG_SITE.Common.linux-x86_64 index e098b76..b98385f 100644 --- a/configure/os/CONFIG_SITE.Common.linux-x86_64 +++ b/configure/os/CONFIG_SITE.Common.linux-x86_64 @@ -15,10 +15,6 @@ # to inform the system of the shared library location. -# Use GNU Readline if the header file is installed -COMMANDLINE_LIBRARY = $(strip $(if $(wildcard \ - $(GNU_DIR)/include/readline/readline.h), READLINE, EPICS)) - # If libreadline needs additional libraries to be linked with it, try # uncommenting each of the lines below in turn, starting with the top # one and working downwards, until the build succeeds. Do a 'make rebuild' The release notes say:
Automatic COMMANDLINE_LIBRARY w/ newer compilers
When built with a compiler supporting __has_include<>, the presence of the <readline/readline.h> will be used to automatically determine a default value for COMMANDLINE_LIBRARY.
Mingw builds with readline support now link -ltermcap instead of -lcurses.
This should not effect sites which set explicitly set COMMANDLINE_LIBRARY as the only definition in Base now has the form COMMANDLINE_LIBRARY ?= .... I interpret the first sentence here to mean that the test for COMMANDLINE_LIBRARY is done in the compiler if possible, but it does not say that the previous way of doing
it in the CONFIG_SITE file (for older compilers) has been removed Does this mean that I now need to edit CONFIG_SITE.Common.linux-x86_64 to manually set COMMANDLINE_LIBRARY? Thanks, Mark |