1#!/usr/bin/env bash 2 3set -x 4 5if [[ "$(uname)" == 'Linux' ]]; then 6 _os_name=linux 7 8 install -D /bin/sed $BUILD_PREFIX/bin/sed 9 10 # Install gtk-sharp2 11 install -D /usr/lib/cli/gtk-sharp-2.0/gtk-sharp.dll* $BUILD_PREFIX/lib/mono/4.5-api/ 12 install -D /usr/lib/cli/glib-sharp-2.0/glib-sharp.dll* $BUILD_PREFIX/lib/mono/4.5-api/ 13 install -D /usr/lib/cli/atk-sharp-2.0/atk-sharp.dll* $BUILD_PREFIX/lib/mono/4.5-api/ 14 install -D /usr/lib/cli/gdk-sharp-2.0/gdk-sharp.dll* $BUILD_PREFIX/lib/mono/4.5-api/ 15 install -D /usr/lib/cli/pango-sharp-2.0/pango-sharp.dll* $BUILD_PREFIX/lib/mono/4.5-api/ 16 17 18 mkdir -p $PREFIX/opt/renode/bin 19 cp /usr/lib/cli/gtk-sharp-2.0/gtk-sharp.dll* $PREFIX/opt/renode/bin/ 20 cp /usr/lib/cli/glib-sharp-2.0/glib-sharp.dll* $PREFIX/opt/renode/bin/ 21 cp /usr/lib/cli/atk-sharp-2.0/atk-sharp.dll* $PREFIX/opt/renode/bin/ 22 cp /usr/lib/cli/gdk-sharp-2.0/gdk-sharp.dll* $PREFIX/opt/renode/bin/ 23 cp /usr/lib/cli/pango-sharp-2.0/pango-sharp.dll* $PREFIX/opt/renode/bin/ 24 25 mkdir -p $PREFIX/lib/ 26 install -D /usr/lib/cli/gtk-sharp-2.0/libgtksharpglue-2.so $PREFIX/lib/libgtksharpglue-2.so 27 install -D /usr/lib/cli/gdk-sharp-2.0/libgdksharpglue-2.so $PREFIX/lib/libgdksharpglue-2.so 28 install -D /usr/lib/cli/glib-sharp-2.0/libglibsharpglue-2.so $PREFIX/lib/libglibsharpglue-2.so 29 install -D /usr/lib/x86_64-linux-gnu/gtk-2.0/modules/libatk-bridge.so $PREFIX/lib/libatk-bridge.so 30 31 sed -i 's/\/usr\/lib\/cli\/.*-sharp-2.0\///g' $PREFIX/opt/renode/bin/*.dll.config 32else 33 _os_name=macos 34 35 cp /Library/Frameworks/Mono.framework/Libraries/libatksharpglue-2* $PREFIX/lib/ 36 cp /Library/Frameworks/Mono.framework/Libraries/libgtksharpglue-2* $PREFIX/lib/ 37 cp /Library/Frameworks/Mono.framework/Libraries/libgdksharpglue-2* $PREFIX/lib/ 38 cp /Library/Frameworks/Mono.framework/Libraries/libglibsharpglue-2* $PREFIX/lib/ 39 40 mkdir -p $BUILD_PREFIX/lib/mono/4.5-api/ 41 find /Library/Frameworks/Mono.framework/Versions/5*/lib/mono/* -name 'gtk-sharp.dll*' -exec cp '{}' $BUILD_PREFIX/lib/mono/4.5-api/ ';' 42 find /Library/Frameworks/Mono.framework/Versions/5*/lib/mono/* -name 'gdk-sharp.dll*' -exec cp '{}' $BUILD_PREFIX/lib/mono/4.5-api/ ';' 43 find /Library/Frameworks/Mono.framework/Versions/5*/lib/mono/* -name 'atk-sharp.dll*' -exec cp '{}' $BUILD_PREFIX/lib/mono/4.5-api/ ';' 44 find /Library/Frameworks/Mono.framework/Versions/5*/lib/mono/* -name 'glib-sharp.dll*' -exec cp '{}' $BUILD_PREFIX/lib/mono/4.5-api/ ';' 45 find /Library/Frameworks/Mono.framework/Versions/5*/lib/mono/* -name 'pango-sharp.dll*' -exec cp '{}' $BUILD_PREFIX/lib/mono/4.5-api/ ';' 46 cp /usr/lib/libc.dylib $PREFIX/lib/ 47fi 48 49./build.sh 50 51mkdir -p $PREFIX/opt/renode/bin 52mkdir -p $PREFIX/opt/renode/scripts 53mkdir -p $PREFIX/opt/renode/platforms 54mkdir -p $PREFIX/opt/renode/tests 55mkdir -p $PREFIX/opt/renode/tools 56mkdir -p $PREFIX/opt/renode/licenses 57 58 59cp .renode-root $PREFIX/opt/renode/ 60cp -r output/bin/Release/* $PREFIX/opt/renode/bin/ 61cp -r scripts/* $PREFIX/opt/renode/scripts/ 62cp -r platforms/* $PREFIX/opt/renode/platforms/ 63cp -r tests/* $PREFIX/opt/renode/tests/ 64cp -r tools/metrics_analyzer $PREFIX/opt/renode/tools 65cp -r tools/execution_tracer $PREFIX/opt/renode/tools 66cp -r tools/gdb_compare $PREFIX/opt/renode/tools 67cp -r tools/sel4_extensions $PREFIX/opt/renode/tools 68 69cp lib/resources/styles/robot.css $PREFIX/opt/renode/tests 70 71 72tools/packaging/common_copy_licenses.sh $PREFIX/opt/renode/licenses $_os_name 73 74 75sed -i.bak "s#os\.path\.join(this_path, '\.\./lib/resources/styles/robot\.css')#os.path.join(this_path,'robot.css')#g" $PREFIX/opt/renode/tests/robot_tests_provider.py 76rm $PREFIX/opt/renode/tests/robot_tests_provider.py.bak 77 78mkdir -p $PREFIX/bin/ 79 80cat > $PREFIX/bin/renode <<"EOF" 81#!/usr/bin/env bash 82 83mono $MONO_OPTIONS $CONDA_PREFIX/opt/renode/bin/Renode.exe "$@" 84EOF 85 86cat > $PREFIX/bin/renode-test <<"EOF" 87#!/usr/bin/env bash 88 89STTY_CONFIG=`stty -g 2>/dev/null` 90python3 $CONDA_PREFIX/opt/renode/tests/run_tests.py --robot-framework-remote-server-full-directory $CONDA_PREFIX/opt/renode/bin "$@" 91RESULT_CODE=$? 92if [ -n "${STTY_CONFIG:-}" ] 93then 94 stty "$STTY_CONFIG" 95fi 96exit $RESULT_CODE 97EOF 98 99mkdir -p "${PREFIX}/etc/conda/activate.d" 100cp "${RECIPE_DIR}/activate.sh" "${PREFIX}/etc/conda/activate.d/${PKG_NAME}_activate.sh" 101 102