about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--Makefile1
-rw-r--r--package/deps.mak1
-rwxr-xr-xtools/gen-deps.sh11
3 files changed, 10 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 0fc3d40..0d34c7a 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,6 @@ CC = $(error Please use ./configure first)
 
 STATIC_LIBS :=
 SHARED_LIBS :=
-INTERNAL_LIBS :=
 LIB_DEFS :=
 BIN_SYMLINKS :=
 EXTRA_TEMP :=
diff --git a/package/deps.mak b/package/deps.mak
index 6c5b0b9..8fd1f8b 100644
--- a/package/deps.mak
+++ b/package/deps.mak
@@ -187,3 +187,4 @@ libexecline.so.xyzzy: EXTRA_LIBS := -lskarnet
 libexecline.so.xyzzy: src/libexecline/el_execsequence.lo src/libexecline/el_getstrict.lo src/libexecline/el_modif_and_exec.lo src/libexecline/el_modif_and_spawn.lo src/libexecline/el_parse.lo src/libexecline/el_parse_from_buffer.lo src/libexecline/el_parse_from_string.lo src/libexecline/el_popenv.lo src/libexecline/el_pushenv.lo src/libexecline/el_semicolon.lo src/libexecline/el_spawn0.lo src/libexecline/el_spawn1.lo src/libexecline/el_substandrun.lo src/libexecline/el_substandrun_str.lo src/libexecline/el_substitute.lo src/libexecline/el_transform.lo src/libexecline/el_vardupl.lo src/libexecline/exlsn_define.lo src/libexecline/exlsn_elglob.lo src/libexecline/exlsn_importas.lo src/libexecline/exlsn_multidefine.lo src/libexecline/exlsn_exlp.lo src/libexecline/exlsn_main.lo src/libexecline/exlsn_free.lo src/libexecline/exlp.lo
 execline: EXTRA_LIBS := -lskarnet ${SPAWN_LIB} ${MAYBEPTHREAD_LIB}
 execline: src/multicall/execline.o ${LIBEXECLINE} ${LIBNSSS}
+INTERNAL_LIBS :=
diff --git a/tools/gen-deps.sh b/tools/gen-deps.sh
index 27e5b3e..befe021 100755
--- a/tools/gen-deps.sh
+++ b/tools/gen-deps.sh
@@ -7,6 +7,8 @@ echo '# This file has been generated by tools/gen-deps.sh'
 echo '#'
 echo
 
+internal_libs=
+
 for dir in src/include/${package} src/* ; do
   for file in $(ls -1 $dir | grep -- \\.h$) ; do
     {
@@ -70,8 +72,12 @@ for dir in $(ls -1 src | grep -v ^include) ; do
     echo else
     echo "lib${file}.a.xyzzy:$(echo "$deps" | sed 's/\.o/.lo/g')"
     echo endif
-    echo "lib${file}.so.xyzzy: EXTRA_LIBS :=$libs"
-    echo "lib${file}.so.xyzzy:$(echo "$deps" | sed 's/\.o/.lo/g')"
+    if grep -E "^LIB_DEFS [+:]=" package/targets.mak | grep -qF "$file" ; then
+      echo "lib${file}.so.xyzzy: EXTRA_LIBS :=$libs"
+      echo "lib${file}.so.xyzzy:$(echo "$deps" | sed 's/\.o/.lo/g')"
+    else
+      internal_libs="$internal_libs lib${file}.a.xyzzy"
+    fi
   done
 
   for file in $(ls -1 src/$dir/deps-exe) ; do
@@ -91,3 +97,4 @@ for dir in $(ls -1 src | grep -v ^include) ; do
     echo "$file: src/$dir/$file.o$deps"
   done
 done
+echo "INTERNAL_LIBS :=$internal_libs"