55# you may not use this file except in compliance with the Elastic License.
66#
77
8- # Strips Ml native code binaries to make them smaller before distribution.
8+ # Strips ML native code binaries to make them smaller before distribution.
9+
10+ ML_APP_NAME=controller
11+ case ` uname` in
12+
13+ Darwin)
14+ EXE_DIR=" $ML_APP_NAME .app/Contents/MacOS"
15+ DYNAMIC_LIB_DIR=" $ML_APP_NAME .app/Contents/lib"
16+ ;;
17+
18+ Linux)
19+ if [ -z " $CPP_CROSS_COMPILE " ] ; then
20+ EXE_DIR=bin
21+ DYNAMIC_LIB_DIR=lib
22+ elif [ " $CPP_CROSS_COMPILE " = macosx ] ; then
23+ EXE_DIR=" $ML_APP_NAME .app/Contents/MacOS"
24+ DYNAMIC_LIB_DIR=" $ML_APP_NAME .app/Contents/lib"
25+ else
26+ echo " Cannot cross compile to $CPP_CROSS_COMPILE "
27+ exit 1
28+ fi
29+ ;;
30+
31+ esac
932
1033# Ensure $CPP_PLATFORM_HOME is set
1134if [ -z " $CPP_PLATFORM_HOME " ] ; then
1235 echo ' $CPP_PLATFORM_HOME is not set'
13- exit 1
36+ exit 2
1437fi
1538
16- # Ensure the bin folder has been created.
17- if [ ! -d " $CPP_PLATFORM_HOME /bin " ] ; then
18- echo ' $CPP_PLATFORM_HOME/bin does not exist'
19- exit 2
39+ # Ensure the executable programs folder has been created.
40+ if [ ! -d " $CPP_PLATFORM_HOME /$EXE_DIR " ] ; then
41+ echo " $CPP_PLATFORM_HOME /$EXE_DIR does not exist"
42+ exit 3
2043fi
2144
2245# Ensure the lib folder has been created.
23- if [ ! -d " $CPP_PLATFORM_HOME /lib " ] ; then
24- echo ' $CPP_PLATFORM_HOME/lib does not exist'
25- exit 3
46+ if [ ! -d " $CPP_PLATFORM_HOME /$DYNAMIC_LIB_DIR " ] ; then
47+ echo " $CPP_PLATFORM_HOME /$DYNAMIC_LIB_DIR does not exist"
48+ exit 4
2649fi
2750
2851cd " $CPP_PLATFORM_HOME "
@@ -32,13 +55,13 @@ cd "$CPP_PLATFORM_HOME"
3255case ` uname` in
3356
3457 Darwin)
35- for PROGRAM in ` ls -1d bin /* | grep -v ' \.dSYM$' `
58+ for PROGRAM in ` ls -1d " $EXE_DIR " /* | grep -v ' \.dSYM$' `
3659 do
3760 echo " Stripping $PROGRAM "
3861 dsymutil $PROGRAM
3962 strip -u -r $PROGRAM
4063 done
41- for LIBRARY in ` ls -1d lib /* | grep -v ' \.dSYM$' `
64+ for LIBRARY in ` ls -1d " $DYNAMIC_LIB_DIR " /* | grep -v ' \.dSYM$' `
4265 do
4366 echo " Stripping $LIBRARY "
4467 case $LIBRARY in
@@ -51,42 +74,40 @@ case `uname` in
5174
5275 Linux)
5376 if [ -z " $CPP_CROSS_COMPILE " ] ; then
54- for PROGRAM in ` ls -1 bin /* | egrep -v ' bin /core|-debug$' `
77+ for PROGRAM in ` ls -1 " $EXE_DIR " /* | egrep -v " $EXE_DIR " ' /core|-debug$' `
5578 do
5679 echo " Stripping $PROGRAM "
5780 objcopy --only-keep-debug " $PROGRAM " " $PROGRAM -debug"
5881 strip --strip-all $PROGRAM
5982 objcopy --add-gnu-debuglink=" $PROGRAM -debug" " $PROGRAM "
6083 chmod -x " $PROGRAM -debug"
6184 done
62- for LIBRARY in ` ls -1 lib /* | egrep -v ' lib/core|-debug$' `
85+ for LIBRARY in ` ls -1 " $DYNAMIC_LIB_DIR " /* | egrep -v ' lib/core|-debug$' `
6386 do
6487 echo " Stripping $LIBRARY "
6588 objcopy --only-keep-debug " $LIBRARY " " $LIBRARY -debug"
6689 strip --strip-unneeded $LIBRARY
6790 objcopy --add-gnu-debuglink=" $LIBRARY -debug" " $LIBRARY "
6891 done
92+ elif [ " $CPP_CROSS_COMPILE " = macosx ] ; then
93+ for PROGRAM in ` ls -1d " $EXE_DIR " /* | grep -v ' \.dSYM$' `
94+ do
95+ echo " Stripping $PROGRAM "
96+ llvm-dsymutil-3.9 $PROGRAM
97+ /usr/local/bin/x86_64-apple-macosx10.11-strip -u -r $PROGRAM
98+ done
99+ for LIBRARY in ` ls -1d " $DYNAMIC_LIB_DIR " /* | grep -v ' \.dSYM$' `
100+ do
101+ echo " Stripping $LIBRARY "
102+ case $LIBRARY in
103+ * Ml* )
104+ llvm-dsymutil-3.9 $LIBRARY
105+ esac
106+ /usr/local/bin/x86_64-apple-macosx10.11-strip -x $LIBRARY
107+ done
69108 else
70- if [ " $CPP_CROSS_COMPILE " = macosx ] ; then
71- for PROGRAM in ` ls -1d bin/* | grep -v ' \.dSYM$' `
72- do
73- echo " Stripping $PROGRAM "
74- llvm-dsymutil-3.9 $PROGRAM
75- /usr/local/bin/x86_64-apple-macosx10.11-strip -u -r $PROGRAM
76- done
77- for LIBRARY in ` ls -1d lib/* | grep -v ' \.dSYM$' `
78- do
79- echo " Stripping $LIBRARY "
80- case $LIBRARY in
81- * Ml* )
82- llvm-dsymutil-3.9 $LIBRARY
83- esac
84- /usr/local/bin/x86_64-apple-macosx10.11-strip -x $LIBRARY
85- done
86- else
87- echo " Cannot cross compile to $CPP_CROSS_COMPILE "
88- exit 4
89- fi
109+ echo " Cannot cross compile to $CPP_CROSS_COMPILE "
110+ exit 5
90111 fi
91112 ;;
92113
0 commit comments