115 lines
5.5 KiB
Diff
115 lines
5.5 KiB
Diff
|
Disable module support in the statically linked version of slsh
|
||
|
|
||
|
Adapt an upstream patch to make it apply on 2.3.0. Unnecessary changes
|
||
|
have been ignored.
|
||
|
|
||
|
Repository: git://git.jedsoft.org/git/slang.git
|
||
|
Commit ID: 997c85f5cdb19802a5c97afe44e366a60f94a069
|
||
|
Author: John E. Davis <jed@jedsoft.org>
|
||
|
|
||
|
Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
|
||
|
---
|
||
|
diff -rup a/slsh/Makefile.in b/slsh/Makefile.in
|
||
|
--- a/slsh/Makefile.in 2014-12-09 10:04:44.084899944 +0000
|
||
|
+++ b/slsh/Makefile.in 2014-12-09 10:16:11.545897275 +0000
|
||
|
@@ -1,9 +1,11 @@
|
||
|
#-*-sh-*-
|
||
|
CC = @CC@
|
||
|
CFLAGS = @CFLAGS@ @SLANG_DLL_CFLAGS@
|
||
|
-LDFLAGS = @LDFLAGS@ @DYNAMIC_LINK_FLAGS@
|
||
|
+LDFLAGS = @LDFLAGS@
|
||
|
+DLINK_FLAGS = @DYNAMIC_LINK_FLAGS@
|
||
|
CONFIG_DIR = @CONFIG_DIR@
|
||
|
OBJDIR = $(ARCH)objs
|
||
|
+SOBJDIR = static_objs
|
||
|
SRCDIR = $(CONFIG_DIR)/slsh
|
||
|
#---------------------------------------------------------------------------
|
||
|
# Installation location of the slang library
|
||
|
@@ -19,7 +21,8 @@ SLANG_SRCINC = -I@SRCDIR@
|
||
|
SLANG_ELFLIB = -L@ELFDIR@# for dynamically linked
|
||
|
SLANG_OBJLIB = -L@OBJDIR@# for statically linked
|
||
|
#---------------------------------------------------------------------------
|
||
|
-OTHER_LIBS = @TERMCAP@ @DYNAMIC_LINK_LIB@ @LIBS@ @M_LIB@
|
||
|
+DYNAMIC_LIBS = @TERMCAP@ @DYNAMIC_LINK_LIB@ @LIBS@ @M_LIB@
|
||
|
+STATIC_LIBS = @TERMCAP@ @LIBS@ @M_LIB@
|
||
|
RPATH = @RPATH@
|
||
|
#----------------------------------------------------------------------------
|
||
|
INSTALL = @INSTALL@
|
||
|
@@ -69,29 +72,37 @@ DEST_SLSH_DOC_DIR= $(DESTDIR)$(SLSH_DOC_
|
||
|
#----------------------------------------------------------------------------
|
||
|
@SET_MAKE@
|
||
|
SHELL = /bin/sh
|
||
|
-#INST_LIBS = $(RPATH) $(SLANG_INST_LIB) $(DEST_LIB_DIR) -lslang $(READLINE_LIB) $(OTHER_LIBS)
|
||
|
-INST_LIBS = $(DEST_LIB_DIR) $(RPATH) $(SLANG_INST_LIB) -lslang $(READLINE_LIB) $(OTHER_LIBS)
|
||
|
+INST_LIBS = $(DEST_LIB_DIR) $(RPATH) $(SLANG_INST_LIB) -lslang $(READLINE_LIB) $(DYNAMIC_LIBS)
|
||
|
DEFS = -DSLSH_CONF_DIR='"$(SLSH_CONF_DIR)"' -DSLSH_PATH='"$(SLSH_LIB_DIR)"' \
|
||
|
-DSLSH_CONF_DIR_ENV='$(SLSH_CONF_DIR_ENV)' -DSLSH_LIB_DIR_ENV='$(SLSH_LIB_DIR_ENV)' \
|
||
|
-DSLSH_PATH_ENV='$(SLSH_PATH_ENV)'
|
||
|
-SRC_LIBS = $(SLANG_ELFLIB) -lslang $(READLINE_LIB) $(OTHER_LIBS)
|
||
|
-STATIC_SRC_LIBS = $(SLANG_OBJLIB) -lslang $(READLINE_LIB) $(OTHER_LIBS)
|
||
|
+SDEFS = $(DEFS) -DSLSH_STATIC
|
||
|
+SRC_LIBS = $(SLANG_ELFLIB) -lslang $(READLINE_LIB) $(DYNAMIC_LIBS)
|
||
|
+STATIC_SRC_LIBS = $(SLANG_OBJLIB) -lslang $(READLINE_LIB) $(STATIC_LIBS)
|
||
|
#
|
||
|
all: $(OBJDIR)/slsh_exe
|
||
|
slsh: $(OBJDIR)/slsh
|
||
|
-static: $(OBJDIR)/slsh_static
|
||
|
$(OBJDIR)/slsh_exe: $(OBJDIR)/slsh.o $(OBJDIR)/readline.o
|
||
|
- $(CC) $(CFLAGS) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh_exe $(LDFLAGS) $(SRC_LIBS)
|
||
|
+ $(CC) $(CFLAGS) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh_exe $(LDFLAGS) $(DLINK_FLAGS) $(SRC_LIBS)
|
||
|
$(OBJDIR)/slsh: $(OBJDIR)/slsh.o $(OBJDIR)/readline.o
|
||
|
- $(CC) $(CFLAGS) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh $(LDFLAGS) $(SRC_LIBS)
|
||
|
+ $(CC) $(CFLAGS) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh $(LDFLAGS) $(DLINK_FLAGS) $(SRC_LIBS)
|
||
|
$(OBJDIR)/slsh.o: $(OBJDIR) slsh.c slsh.h config.h Makefile
|
||
|
cd $(OBJDIR) && $(CC) $(SLANG_SRCINC) $(CFLAGS) -c $(DEFS) $(SRCDIR)/slsh.c
|
||
|
$(OBJDIR)/readline.o: $(OBJDIR) readline.c slsh.h config.h Makefile
|
||
|
cd $(OBJDIR) && $(CC) $(SLANG_SRCINC) $(CFLAGS) -c $(DEFS) -DUSE_GNU_READLINE=$(GNU_READLINE) $(SRCDIR)/readline.c
|
||
|
-$(OBJDIR)/slsh_static: $(OBJDIR)/slsh.o $(OBJDIR)/readline.o
|
||
|
- $(CC) $(CFLAGS) $(OBJDIR)/slsh.o $(OBJDIR)/readline.o -o $(OBJDIR)/slsh_static $(LDFLAGS) $(STATIC_SRC_LIBS)
|
||
|
$(OBJDIR):
|
||
|
-$(MKINSDIR) $(OBJDIR)
|
||
|
+#
|
||
|
+static: $(SOBJDIR)/slsh
|
||
|
+$(SOBJDIR)/slsh: $(SOBJDIR)/slsh.o $(SOBJDIR)/readline.o
|
||
|
+ $(CC) $(CFLAGS) $(SOBJDIR)/slsh.o $(SOBJDIR)/readline.o -o $(SOBJDIR)/slsh $(LDFLAGS) $(STATIC_SRC_LIBS)
|
||
|
+$(SOBJDIR)/slsh.o: $(SOBJDIR) slsh.c slsh.h config.h Makefile
|
||
|
+ cd $(SOBJDIR) && $(CC) $(SLANG_SRCINC) $(CFLAGS) -c $(SDEFS) $(SRCDIR)/slsh.c
|
||
|
+$(SOBJDIR)/readline.o: $(SOBJDIR) readline.c slsh.h config.h Makefile
|
||
|
+ cd $(SOBJDIR) && $(CC) $(SLANG_SRCINC) $(CFLAGS) -c $(SDEFS) -DUSE_GNU_READLINE=$(GNU_READLINE) $(SRCDIR)/readline.c
|
||
|
+$(SOBJDIR):
|
||
|
+ -$(MKINSDIR) $(SOBJDIR)
|
||
|
+#
|
||
|
config.h: ../src/config.h
|
||
|
cp ../src/config.h .
|
||
|
install_directories:
|
||
|
@@ -158,7 +169,7 @@ install: slsh install_directories instal
|
||
|
$(INSTALL_DATA) doc/man/slsh.1 $(DEST_MAN_DIR)/
|
||
|
install-static: static install_directories install_lib_files install_rline_files \
|
||
|
install_scripts install_help install_docs
|
||
|
- $(INSTALL) $(OBJDIR)/slsh_static $(DEST_BIN_DIR)/slsh
|
||
|
+ $(INSTALL) $(SOBJDIR)/slsh $(DEST_BIN_DIR)/
|
||
|
$(INSTALL_DATA) etc/slsh.rc $(DEST_SLSH_CONF_DIR)/
|
||
|
echo 'prepend_to_slang_load_path("$(SLSH_LOCALLIB_DIR)");' >> $(DEST_SLSH_CONF_DIR)/slsh.rc
|
||
|
$(INSTALL_DATA) doc/man/slsh.1 $(DEST_MAN_DIR)/
|
||
|
@@ -167,6 +178,7 @@ install-static: static install_directori
|
||
|
#---------------------------------------------------------------------------
|
||
|
clean:
|
||
|
-/bin/rm -f *~ $(OBJDIR)/slsh.o $(OBJDIR)/readline.o $(OBJDIR)/slsh $(OBJDIR)/slsh_exe scripts/*~ lib/*~
|
||
|
+ -/bin/rm -f $(SOBJDIR)/slsh.o $(SOBJDIR)/readline.o $(SOBJDIR)/slsh $(SOBJDIR)/slsh_exe
|
||
|
distclean: clean
|
||
|
-/bin/rm -f Makefile config.h
|
||
|
#
|
||
|
diff -rup a/slsh/slsh.c b/slsh/slsh.c
|
||
|
--- a/slsh/slsh.c 2014-09-18 04:02:24.000000000 +0100
|
||
|
+++ b/slsh/slsh.c 2014-12-09 10:17:04.602824146 +0000
|
||
|
@@ -514,7 +514,9 @@ int main (int argc, char **argv)
|
||
|
|
||
|
if ((-1 == SLang_init_all ())
|
||
|
|| (-1 == SLang_init_array_extra ())
|
||
|
+#ifndef SLSH_STATIC
|
||
|
|| (-1 == SLang_init_import ()) /* dynamic linking */
|
||
|
+#endif
|
||
|
|| (-1 == SLadd_intrin_fun_table (Intrinsics, NULL))
|
||
|
|| (-1 == slsh_init_readline_intrinsics ()))
|
||
|
{
|