-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathgenvscode.sh
executable file
·32 lines (19 loc) · 1.27 KB
/
genvscode.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/bin/bash
export VO_CMS_SW_DIR=/cvmfs/cms.cern.ch
source $VO_CMS_SW_DIR/cmsset_default.sh
export CMSVER=CMSSW_11_2_0_pre10
export SCRAM_ARCH=slc7_amd64_gcc820
echo '"C_Cpp.default.compilerPath": "'$(scram tool tag gcc-cxxcompiler CXX)'",'
echo '"C_Cpp.default.includePath": ['
## compiler libs
echo '"'$(echo $(dirname /cvmfs/cms.cern.ch/slc7_amd64_gcc820/external/gcc/8.2.0-bcolbf/bin/c++ | xargs dirname)/include/c++/*/)'",'
env | grep -E '(CMSSW_FWLITE_INCLUDE_PATH|SHERPA_INCLUDE_PATH|ROOT_INCLUDE_PATH)' | grep -v '_SCRAMRTDEL' | sd '.*=(.*)' '$1' | tr ':' '\n' | grep -v "/external/" | sd '(.*)' '"$1",' | sed '$d'
## CLHEP...
echo '"'${CLHEP_PARAM_PATH}/include'",'
## external libs
for extlib in tbb CLHEP fmt boost; do
env | grep -E '(CMSSW_FWLITE_INCLUDE_PATH|SHERPA_INCLUDE_PATH|ROOT_INCLUDE_PATH)' | grep -v '_SCRAMRTDEL' | sd '.*=(.*)' '$1' | tr ':' '\n' | grep $extlib | sd '(.*)' '"$1",' | sed '$d'
done
echo ']'
# fd --type f '.*\.h' /cvmfs/cms.cern.ch/$SCRAM_ARCH/cms/cmssw/$CMSVER/src/ | grep "interface" | xargs dirname | sort -u | sd '(.*)' '"$1",' | sed '$d'
# env | grep -E '(CMSSW_FWLITE_INCLUDE_PATH|SHERPA_INCLUDE_PATH|ROOT_INCLUDE_PATH)' | grep -v '_SCRAMRTDEL' | sd '.*=(.*)' '$1' | tr ':' '\n' | grep -v "/external/" | sd '(.*)' '"$1",' | sed '$d'