diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2005-05-02T15·25+0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2005-05-02T15·25+0000 |
commit | 36fb29f8f0317144a0074d7b6689912a4dc40325 (patch) | |
tree | 026fb03a97ca8b40a04ab38fa29759dbb0a9081e /make/lib/link.sh | |
parent | 02f2da01426b338c75051397dcbdcb0c75913670 (diff) |
* Merge remaining stuff from the nix-make branch.
* Add support for the creation of shared libraries to `compileC', `link', and `makeLibrary'. * Enable the ATerm library to be made into a shared library.
Diffstat (limited to 'make/lib/link.sh')
-rw-r--r-- | make/lib/link.sh | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/make/lib/link.sh b/make/lib/link.sh new file mode 100644 index 000000000000..a48f750f41d6 --- /dev/null +++ b/make/lib/link.sh @@ -0,0 +1,21 @@ +. $stdenv/setup + +shopt -s nullglob + +objs= +for i in $objects; do + obj=$(echo $i/*.o) + objs="$objs $obj" +done + +libs= +for i in $libraries; do + lib=$(echo $i/*.a; echo $i/*.so) + name=$(echo $(basename $lib) | sed -e 's/^lib//' -e 's/.a$//' -e 's/.so$//') + libs="$libs -L$(dirname $lib) -l$name" +done + +echo "linking object files into \`$programName'..." + +mkdir $out +gcc -o $out/$programName $objs $libs |