From 53fb0cf22ba887d9bf4c7bf3d58f07bef90aa48b Mon Sep 17 00:00:00 2001 From: Neels Hofmeyr Date: Thu, 15 Mar 2018 22:14:38 +0100 Subject: gen_links.sh: auto-generate .gitignore files to ignore symlinks In each subdir that is a target for symlinks, automatically ignore the results of gen_links(): - At the top of gen_links.sh.inc, clear the .gitignore. - In the loop, add each link name to the local .gitignore. - In selected gen_links.sh, there is also a "manual" link creationg. So that this also ends up in the local .gitignore, have the link creation as separate gen_link() macro which at the same time adds to ./.gitignore. - in the root .gitignore, ignore all the subdirs' generated */.gitignore files. Change-Id: I73c11fe8362358bf7e1bdf0e1be53399b5d3351b --- .gitignore | 1 + bsc-nat/gen_links.sh | 2 +- bsc/gen_links.sh | 2 +- gen_links.sh.inc | 13 +++++++++++-- msc/gen_links.sh | 2 +- selftest/gen_links.sh | 2 +- 6 files changed, 16 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index d8c3ab3a..cc06c3cc 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ deps/*/ *.log *.so compile +*/.gitignore diff --git a/bsc-nat/gen_links.sh b/bsc-nat/gen_links.sh index 8aa47a92..946fbafe 100755 --- a/bsc-nat/gen_links.sh +++ b/bsc-nat/gen_links.sh @@ -28,7 +28,7 @@ gen_links $DIR $FILES DIR=../SCCP_CNL113341/src FILES="SCCP_Emulation.ttcn SCCP_EncDec.cc SCCP_Mapping.ttcnpp SCCP_Types.ttcn SCCPasp_Types.ttcn" gen_links $DIR $FILES -ln -sf SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn +gen_link SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn DIR=$BASEDIR/titan.ProtocolModules.BSSMAP_v11.2.0/src FILES="BSSAP_Types.ttcn" diff --git a/bsc/gen_links.sh b/bsc/gen_links.sh index 9145ff76..50d73298 100755 --- a/bsc/gen_links.sh +++ b/bsc/gen_links.sh @@ -49,7 +49,7 @@ gen_links $DIR $FILES DIR=../SCCP_CNL113341/src FILES="SCCP_Emulation.ttcn SCCP_Mapping.ttcnpp SCCP_Types.ttcn SCCPasp_Types.ttcn" gen_links $DIR $FILES -ln -sf SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn +gen_link SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn DIR=$BASEDIR/titan.ProtocolModules.BSSMAP_v11.2.0/src FILES="BSSAP_Types.ttcn" diff --git a/gen_links.sh.inc b/gen_links.sh.inc index 2fcb9d1c..aba8ca16 100644 --- a/gen_links.sh.inc +++ b/gen_links.sh.inc @@ -1,12 +1,21 @@ #!dont_run_this # This file is sourced by */gen_links.sh +rm -f .gitignore + +gen_link() { + src="$1" + f="$2" + echo "Linking $f" + ln -sf "$src" "$f" + echo "$f" >> .gitignore +} + gen_links() { DIR=$1 shift FILES=$* for f in $FILES; do - echo "Linking $f" - ln -sf $DIR/$f $f + gen_link "$DIR/$f" "$f" done } diff --git a/msc/gen_links.sh b/msc/gen_links.sh index b9cbd0ac..fe091550 100755 --- a/msc/gen_links.sh +++ b/msc/gen_links.sh @@ -44,7 +44,7 @@ gen_links $DIR $FILES DIR=../SCCP_CNL113341/src FILES="SCCP_Emulation.ttcn SCCP_EncDec.cc SCCP_Mapping.ttcnpp SCCP_Types.ttcn SCCPasp_Types.ttcn" gen_links $DIR $FILES -ln -s SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn +gen_link SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn DIR=$BASEDIR/titan.ProtocolModules.BSSMAP_v11.2.0/src FILES="BSSAP_Types.ttcn" diff --git a/selftest/gen_links.sh b/selftest/gen_links.sh index 542e3c2d..2a98aafb 100755 --- a/selftest/gen_links.sh +++ b/selftest/gen_links.sh @@ -29,7 +29,7 @@ gen_links $DIR $FILES DIR=../SCCP_CNL113341/src FILES="SCCP_Emulation.ttcn SCCP_Mapping.ttcnpp SCCP_Types.ttcn SCCPasp_Types.ttcn" gen_links $DIR $FILES -ln -sf SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn +gen_link SCCP_Mapping.ttcnpp SCCP_Mapping.ttcn DIR=$BASEDIR/titan.ProtocolModules.BSSMAP_v11.2.0/src FILES="BSSAP_Types.ttcn" -- cgit v1.2.3