From 25d9c110a6b025736bd2856e69e084f297340b32 Mon Sep 17 00:00:00 2001 From: Joseph Lenox Date: Fri, 4 May 2018 23:39:38 -0500 Subject: [PATCH] ripped out most of the perl-dependent stuff from Slic3r's archive build script on Linux (do less useless stuff on Travis). --- package/linux/appimage.sh | 4 +--- package/linux/libpaths.txt | 5 ----- package/linux/make_archive.sh | 42 +++-------------------------------- 3 files changed, 4 insertions(+), 47 deletions(-) diff --git a/package/linux/appimage.sh b/package/linux/appimage.sh index 3a68b5e17..05e61f909 100755 --- a/package/linux/appimage.sh +++ b/package/linux/appimage.sh @@ -32,7 +32,7 @@ cd $WD/${APP}.AppDir mkdir -p $WD/${APP}.AppDir/usr/bin # Copy primary Slic3r script here and perl-local, as well as var -for i in {var,slic3r.pl,perl-local}; do +for i in {var,Slic3r}; do cp -R $srcfolder/$i $WD/${APP}.AppDir/usr/bin/ done @@ -48,8 +48,6 @@ for i in $(cat $WD/libpaths.appimage.txt | grep -v "^#" | awk -F# '{print $1}'); done -cp -R $srcfolder/local-lib ${WD}/${APP}.AppDir/usr/lib/local-lib - cat > $WD/${APP}.AppDir/AppRun << 'EOF' #!/usr/bin/env bash # some magic to find out the real location of this script dealing with symlinks diff --git a/package/linux/libpaths.txt b/package/linux/libpaths.txt index ef876a13a..3c64c9758 100644 --- a/package/linux/libpaths.txt +++ b/package/linux/libpaths.txt @@ -1,8 +1,3 @@ -/home/travis/builds/alexrj/Slic3r/local-lib/lib/perl5/x86_64-linux-thread-multi/Alien/wxWidgets/gtk_3_0_2_uni/lib/libwx_baseu-3.0.so.0 -/home/travis/builds/alexrj/Slic3r/local-lib/lib/perl5/x86_64-linux-thread-multi/Alien/wxWidgets/gtk_3_0_2_uni/lib/libwx_gtk2u_adv-3.0.so.0 -/home/travis/builds/alexrj/Slic3r/local-lib/lib/perl5/x86_64-linux-thread-multi/Alien/wxWidgets/gtk_3_0_2_uni/lib/libwx_gtk2u_core-3.0.so.0 -/home/travis/builds/alexrj/Slic3r/local-lib/lib/perl5/x86_64-linux-thread-multi/Alien/wxWidgets/gtk_3_0_2_uni/lib/libwx_gtk2u_gl-3.0.so.0 -/home/travis/builds/alexrj/Slic3r/local-lib/lib/perl5/x86_64-linux-thread-multi/Alien/wxWidgets/gtk_3_0_2_uni/lib/libwx_gtk2u_html-3.0.so.0 /lib/x86_64-linux-gnu/liblzma.so.5 /lib/x86_64-linux-gnu/libpng12.so.0 /usr/lib/x86_64-linux-gnu/libjpeg.so.8 diff --git a/package/linux/make_archive.sh b/package/linux/make_archive.sh index ad87b2a06..3eaf8b601 100755 --- a/package/linux/make_archive.sh +++ b/package/linux/make_archive.sh @@ -10,7 +10,6 @@ if [ "$#" -ne 1 ]; then echo "Usage: $(basename $0) arch_name" exit 1; fi -libdirs=$(find ./local-lib -iname *.so -exec dirname {} \; | sort -u | paste -sd ";" -) WD=./$(dirname $0) source $(dirname $0)/../common/util.sh # Determine if this is a tagged (release) commit. @@ -22,7 +21,6 @@ set_build_id set_branch set_app_name set_pr_id -install_par # If we're on a branch, add the branch name to the app name. if [ "$current_branch" == "master" ]; then @@ -35,8 +33,7 @@ else dmgfile=slic3r-${SLIC3R_BUILD_ID}-${1}-${current_branch}.tar.bz2 fi -rm -rf $WD/_tmp -mkdir -p $WD/_tmp +mkdir -p $WD # Set the application folder infomation. appfolder="$WD/${appname}" @@ -46,8 +43,6 @@ resourcefolder=$appfolder echo "Appfolder: $appfolder, archivefolder: $archivefolder" # Our slic3r dir and location of perl -PERL_BIN=$(which perl) -PP_BIN=$(which pp) SLIC3R_DIR="./" if [[ -d "${appfolder}" ]]; then @@ -67,14 +62,12 @@ echo "Copying resources..." cp -rf $SLIC3R_DIR/var $resourcefolder/ echo "Copying Slic3r..." -cp $SLIC3R_DIR/slic3r.pl $archivefolder/slic3r.pl -cp -fRP $SLIC3R_DIR/local-lib $archivefolder/local-lib -cp -fRP $SLIC3R_DIR/lib/* $archivefolder/local-lib/lib/perl5/ +cp $SLIC3R_DIR/slic3r $archivefolder/Slic3r mkdir $archivefolder/bin echo "Installing libraries to $archivefolder/bin ..." if [ -z ${WXDIR+x} ]; then - for bundle in $(find $archivefolder/local-lib/lib/perl5 -name '*.so' | grep "Wx") $(find $archivefolder/local-lib/lib/perl5 -name '*.so' -type f | grep "wxWidgets"); do + for bundle in $archivefolder/Slic3r; do echo "$(LD_LIBRARY_PATH=$libdirs ldd $bundle | grep .so | grep local-lib | awk '{print $3}')" for dylib in $(LD_LIBRARY_PATH=$libdirs ldd $bundle | grep .so | grep local-lib | awk '{print $3}'); do install -v $dylib $archivefolder/bin @@ -91,37 +84,8 @@ echo "Copying startup script..." cp -f $WD/startup_script.sh $archivefolder/$appname chmod +x $archivefolder/$appname -echo "Copying perl from $PERL_BIN" -# Edit package/common/coreperl to add/remove core Perl modules added to this package, one per line. -cp -f $PERL_BIN $archivefolder/perl-local -${PP_BIN} wxextension .0 \ - -M $(grep -v "^#" ${WD}/../common/coreperl | xargs | awk 'BEGIN { OFS=" -M "}; {$1=$1; print $0}') \ - -B -p -e "print 123" -o $WD/_tmp/test.par -unzip -qq -o $WD/_tmp/test.par -d $WD/_tmp/ -cp -rf $WD/_tmp/lib/* $archivefolder/local-lib/lib/perl5/ -cp -rf $WD/_tmp/shlib $archivefolder/ -rm -rf $WD/_tmp for i in $(cat $WD/libpaths.txt | grep -v "^#" | awk -F# '{print $1}'); do install -v $i $archivefolder/bin done -echo "Cleaning local-lib" -rm -rf $archivefolder/local-lib/bin -rm -rf $archivefolder/local-lib/man -rm -f $archivefolder/local-lib/lib/perl5/Algorithm/*.pl -rm -rf $archivefolder/local-lib/lib/perl5/unicore -rm -rf $archivefolder/local-lib/lib/perl5/App -rm -rf $archivefolder/local-lib/lib/perl5/Devel/CheckLib.pm -rm -rf $archivefolder/local-lib/lib/perl5/ExtUtils -rm -rf $archivefolder/local-lib/lib/perl5/Module/Build* -rm -rf $(pwd)$archivefolder/local-lib/lib/perl5/TAP -rm -rf $(pwd)/$archivefolder/local-lib/lib/perl5/Test* -find $(pwd)/$archivefolder/local-lib -type d -path '*/Wx/*' \( -name WebView \ - -or -name DocView -or -name STC -or -name IPC \ - -or -name Calendar -or -name DataView \ - -or -name DateTime -or -name Media -or -name PerlTest \ - -or -name Ribbon \) -exec rm -rf "{}" \; -rm -rf $archivefolder/local-lib/lib/perl5/*/Alien/wxWidgets/*/include -find $archivefolder/local-lib -depth -type d -empty -exec rmdir "{}" \; - tar -C$(pwd)/$(dirname $appfolder) -cjf $(pwd)/$dmgfile "$appname"