summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-17 10:20:07 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-01-17 10:20:07 +0000
commit67da4aebc56b1a1058ab17e256f7d64b6b8bbd90 (patch)
tree484a8e9c401de33cf9d187990283579145157462
parent28028fc2b92dfe13b4e53cb0db5ece74064e76a6 (diff)
* configure.in (darwin): get rid of strange settings issue of
apple gcc port, which searches /usr/local/include always but /usr/local/lib not. * ext/readline/readline.c (Init_readline): suppress warnings with libedit. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--configure.in8
-rw-r--r--ext/readline/readline.c4
2 files changed, 10 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index a2ea066d251..77c00343a59 100644
--- a/configure.in
+++ b/configure.in
@@ -1418,6 +1418,14 @@ if test "$with_dln_a_out" != yes; then
darwin*) : ${LDSHARED='cc -dynamic -bundle -undefined suppress -flat_namespace'}
: ${LDFLAGS=""}
: ${LIBPATHENV=DYLD_LIBRARY_PATH}
+ # /usr/local/include is always searched for
+ # some reason, but /usr/local/lib is not.
+ hdr=`find /usr/local/include -name \*.h -type f | sed 's:^/usr/local/include/::;q'`
+ if test -n "$hdr" && $CC -E -include "$hdr" -xc /dev/null | fgrep -q "$hdr"; then
+ $CC -print-search-dirs | grep -q '^libraries:.*:/usr/local/lib/*' ||
+ echo " $LDFLAGS " | grep -q ' -L */usr/local/lib/* ' ||
+ LDFLAGS="${LDFLAGS:+$LDFLAGS }-L/usr/local/lib"
+ fi
rb_cv_dlopen=yes ;;
aix*) if test "$GCC" = yes; then
: ${LDSHARED='$(CC) -shared'}
diff --git a/ext/readline/readline.c b/ext/readline/readline.c
index 87a1ff03715..7912989c218 100644
--- a/ext/readline/readline.c
+++ b/ext/readline/readline.c
@@ -1176,7 +1176,7 @@ Init_readline()
VALUE history, fcomp, ucomp, version;
/* Allow conditional parsing of the ~/.inputrc file. */
- rl_readline_name = "Ruby";
+ rl_readline_name = (char *)"Ruby";
using_history();
@@ -1287,7 +1287,7 @@ Init_readline()
#else
{
HIST_ENTRY *entry = remove_history(0);
- free(entry->line);
+ free((char *)entry->line);
free(entry);
}
#endif