Merge pull request #9 from jtgrassie/path-spaces

fix spaces
pull/10/head
knaccc 5 years ago committed by GitHub
commit 1c3c4ce35f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -7,14 +7,14 @@ else
fi
# retrieve the I2P Java sources, OpenJDK and the Ant build tool
$basedir/bin/import-packages.sh
"$basedir"/bin/import-packages.sh
# build the i2p project retrieved from the I2P repository
$basedir/bin/build-original-i2p.sh
"$basedir"/bin/build-original-i2p.sh
# convert the jar files from an existing I2P build into modules suitable for use with jlink
$basedir/bin/convert-jars-to-modules.sh
"$basedir"/bin/convert-jars-to-modules.sh
# compile the Java source code in this project, and then use the jlink tool
# to build a zero-dependency platform-specific launcher
$basedir/bin/build-launcher.sh
"$basedir"/bin/build-launcher.sh

@ -6,7 +6,7 @@ else
basedir=$(dirname $(dirname $(readlink -fm $0)))
fi
source $basedir/bin/java-config.sh
source "$basedir/bin/java-config.sh"
rm -fr target/org.getmonero.i2p.zero/classes
rm -fr target/org.getmonero.i2p.zero.gui/classes
@ -23,8 +23,8 @@ echo "*** Packaging as a modular jar"
$JAVA_HOME/bin/jar --create --file target/org.getmonero.i2p.zero.jar --main-class org.getmonero.i2p.zero.Main -C target/org.getmonero.i2p.zero/classes .
$JAVA_HOME/bin/jar --create --file target/org.getmonero.i2p.zero.gui.jar --main-class org.getmonero.i2p.zero.gui.Gui -C target/org.getmonero.i2p.zero.gui/classes .
rm -fr $basedir/dist
for i in linux mac win linux-gui mac-gui win-gui; do mkdir -p $basedir/dist/$i; done
rm -fr "$basedir/dist"
for i in linux mac win linux-gui mac-gui win-gui; do mkdir -p "$basedir/dist/$i"; done
# create OS specific launchers which will bundle together the code and a minimal JVM
for i in linux mac win; do
@ -39,27 +39,27 @@ for i in linux mac win; do
JAVA_HOME_VARIANT=${JAVA_HOME_WIN} ;;
esac
echo "Using JAVA_HOME_VARIANT: $JAVA_HOME_VARIANT"
$JAVA_HOME/bin/jlink --module-path ${JAVA_HOME_VARIANT}/jmods:target/modules:target/org.getmonero.i2p.zero.jar --add-modules org.getmonero.i2p.zero --output dist/$i/router --compress 2 --no-header-files --no-man-pages
$JAVA_HOME/bin/jlink --module-path ${JAVA_HOME_VARIANT}/jmods:import/javafx-jmods/$i/javafx-jmods-${JAVAFX_VERSION}:target/modules:target/org.getmonero.i2p.zero.jar:target/org.getmonero.i2p.zero.gui.jar --add-modules org.getmonero.i2p.zero,org.getmonero.i2p.zero.gui,javafx.controls,javafx.fxml,java.desktop --output dist/$i-gui/router --compress 2 --no-header-files --no-man-pages
"$JAVA_HOME"/bin/jlink --module-path "${JAVA_HOME_VARIANT}/jmods":target/modules:target/org.getmonero.i2p.zero.jar --add-modules org.getmonero.i2p.zero --output dist/$i/router --compress 2 --no-header-files --no-man-pages
"$JAVA_HOME"/bin/jlink --module-path "${JAVA_HOME_VARIANT}/jmods":import/javafx-jmods/$i/javafx-jmods-${JAVAFX_VERSION}:target/modules:target/org.getmonero.i2p.zero.jar:target/org.getmonero.i2p.zero.gui.jar --add-modules org.getmonero.i2p.zero,org.getmonero.i2p.zero.gui,javafx.controls,javafx.fxml,java.desktop --output dist/$i-gui/router --compress 2 --no-header-files --no-man-pages
done
for i in linux mac linux-gui mac-gui; do
cp $basedir/resources/launch.sh $basedir/dist/$i/router/bin/
cp $basedir/resources/tunnel-control.sh $basedir/dist/$i/router/bin/
cp "$basedir/resources/launch.sh" "$basedir/dist/$i/router/bin/"
cp "$basedir/resources/tunnel-control.sh" "$basedir/dist/$i/router/bin/"
done
for i in win win-gui; do
cp $basedir/resources/launch.bat $basedir/dist/$i/router/bin/
cp "$basedir/resources/launch.bat" "$basedir/dist/$i/router/bin/"
done
for i in linux-gui mac-gui; do
cp $basedir/resources/launch-gui.sh $basedir/dist/$i/router/bin/
cp "$basedir/resources/launch-gui.sh" "$basedir/dist/$i/router/bin/"
done
for i in win-gui; do
cp $basedir/resources/launch-gui.bat $basedir/dist/$i/router/bin/
cp "$basedir/resources/launch-gui.bat" "$basedir/dist/$i/router/bin/"
done
for i in linux mac win linux-gui mac-gui win-gui; do cp -r $basedir/import/i2p.base $basedir/dist/$i/router/; done
for i in linux mac win linux-gui mac-gui win-gui; do cp -r "$basedir/import/i2p.base" "$basedir/dist/$i/router/"; done
# remove unnecessary native libs from jbigi.jar
for i in linux mac win; do
@ -67,24 +67,36 @@ for i in linux mac win; do
if [ "$i" != "$j" ]; then
if [ "$j" = "mac" ]; then j="osx"; fi
if [ "$j" = "win" ]; then j="windows"; fi
zip -d $basedir/dist/$i/router/i2p.base/jbigi.jar *-${j}-*
zip -d $basedir/dist/$i-gui/router/i2p.base/jbigi.jar *-${j}-*
zip -d "$basedir/dist/$i/router/i2p.base/jbigi.jar" *-${j}-*
zip -d "$basedir/dist/$i-gui/router/i2p.base/jbigi.jar" *-${j}-*
fi
done
done
# build map app structure
mv $basedir/dist/mac-gui/router $basedir/dist/mac-gui/router-tmp
mkdir -p $basedir/dist/mac-gui/router/i2p-zero.app/Contents/MacOS/
cp -R $basedir/resources/i2p-zero.app $basedir/dist/mac-gui/router/
mv $basedir/dist/mac-gui/router-tmp/* $basedir/dist/mac-gui/router/i2p-zero.app/Contents/MacOS/
rm -fr $basedir/dist/mac-gui/router-tmp
mv "$basedir/dist/mac-gui/router" "$basedir/dist/mac-gui/router-tmp"
mkdir -p "$basedir/dist/mac-gui/router/i2p-zero.app/Contents/MacOS/"
cp -R "$basedir/resources/i2p-zero.app" "$basedir/dist/mac-gui/router/"
mv "$basedir/dist/mac-gui/router-tmp"/* "$basedir/dist/mac-gui/router/i2p-zero.app/Contents/MacOS/"
rm -fr "$basedir/dist/mac-gui/router-tmp"
# specify .desktop file so linux-gui can be launched via double-click
cp $basedir/resources/i2p-zero.desktop $basedir/dist/linux-gui/router/
cp "$basedir/resources/i2p-zero.desktop" "$basedir/dist/linux-gui/router/"
du -sk dist/* | awk '{printf "%.1f MB %s\n",$1/1024,$2}'
echo "*** Done ***"
echo "To run, type: dist/linux/router/bin/launch.sh"
echo "To run the GUI, type: dist/linux-gui/router/bin/launch-gui.sh"
os_name=`uname -s`
if [ $os_name = Darwin ]; then
os_name=mac
echo "To run from the command line, type: ./dist/$os_name/router/bin/launch.sh"
echo "To run the GUI, double-click: dist/$os_name-gui/router/i2p-zero.app"
elif [ $os_name = Linux ]; then
os_name=linux
echo "To run from the command line, type: ./dist/$os_name/router/bin/launch.sh"
echo "To run the GUI, type: dist/$os_name-gui/router/bin/launch-gui.sh"
else
os_name=win
echo "To run from the command line, type: ./dist/$os_name/router/bin/launch.bat"
echo "To run the GUI, double-click: dist/$os_name-gui/router/bin/launch-gui.bat"
fi

@ -6,28 +6,28 @@ else
basedir=$(dirname $(dirname $(readlink -fm $0)))
fi
source $basedir/bin/java-config.sh
source "$basedir/bin/java-config.sh"
cd $basedir/import
cd "$basedir/import"
# build the jars we're going to modularize
cd $basedir/import/i2p.i2p
cd "$basedir/import/i2p.i2p"
export LG2=en
$basedir/import/apache-ant-1.10.5/bin/ant buildRouter buildI2PTunnelJars buildSAM jbigi
"$basedir"/import/apache-ant-1.10.5/bin/ant buildRouter buildI2PTunnelJars buildSAM jbigi
cd ..
# copy the jars that we're going to modularize
rm -fr $basedir/import/lib
mkdir -p $basedir/import/lib
for i in i2ptunnel.jar i2p.jar mstreaming.jar router.jar sam.jar streaming.jar; do cp $basedir/import/i2p.i2p/build/$i $basedir/import/lib/; done
rm -fr "$basedir/import/lib"
mkdir -p "$basedir/import/lib"
for i in i2ptunnel.jar i2p.jar mstreaming.jar router.jar sam.jar streaming.jar; do cp "$basedir/import/i2p.i2p/build/$i" "$basedir/import/lib/"; done
# build a minimal i2p.base dir
rm -fr $basedir/import/i2p.base
mkdir -p $basedir/import/i2p.base
cp $basedir/import/i2p.i2p/LICENSE.txt $basedir/import/i2p.base/
cp $basedir/import/i2p.i2p/build/jbigi.jar $basedir/import/i2p.base/
for i in blocklist.txt hosts.txt certificates; do cp -r $basedir/import/i2p.i2p/installer/resources/$i $basedir/import/i2p.base/; done
mkdir -p $basedir/import/i2p.base/geoip
for i in continents.txt countries.txt; do cp -r $basedir/import/i2p.i2p/installer/resources/$i $basedir/import/i2p.base/geoip/; done
rm -fr "$basedir/import/i2p.base"
mkdir -p "$basedir/import/i2p.base"
cp "$basedir/import/i2p.i2p/LICENSE.txt" "$basedir/import/i2p.base/"
cp "$basedir/import/i2p.i2p/build/jbigi.jar" "$basedir/import/i2p.base/"
for i in blocklist.txt hosts.txt certificates; do cp -r "$basedir/import/i2p.i2p/installer/resources/$i" "$basedir/import/i2p.base/"; done
mkdir -p "$basedir/import/i2p.base/geoip"
for i in continents.txt countries.txt; do cp -r "$basedir/import/i2p.i2p/installer/resources/$i" "$basedir/import/i2p.base/geoip/"; done

@ -6,22 +6,22 @@ else
basedir=$(dirname $(dirname $(readlink -fm $0)))
fi
source $basedir/bin/java-config.sh
source "$basedir/bin/java-config.sh"
jarPaths=`find $basedir/import/lib -name '*.jar'`
jarPaths=`find "$basedir/import/lib" -name '*.jar'`
mkdir -p $basedir/target/modules
rm -f $basedir/target/modules/*
mkdir -p "$basedir/target/modules"
rm -f "$basedir/target/modules"/*
for jarPath in $jarPaths; do
moduleName=$(basename "${jarPath%.*}")
echo "*** Determining dependencies for $moduleName"
$JAVA_HOME/bin/jdeps --module-path $basedir/import/lib --add-modules=ALL-MODULE-PATH --generate-module-info $basedir/target/module-info $jarPath
"$JAVA_HOME"/bin/jdeps --module-path "$basedir/import/lib" --add-modules=ALL-MODULE-PATH --generate-module-info "$basedir/target/module-info" "$jarPath"
done
for jarPath in $jarPaths; do
moduleName=$(basename "${jarPath%.*}")
echo "*** Creating new modular jar for $moduleName"
$JAVA_HOME/bin/javac --module-path $basedir/import/lib --patch-module $moduleName=$jarPath $basedir/target/module-info/$moduleName/module-info.java
cp $jarPath $basedir/target/modules/
$JAVA_HOME/bin/jar uf $basedir/target/modules/${moduleName}.jar -C $basedir/target/module-info/$moduleName module-info.class
"$JAVA_HOME"/bin/javac --module-path "$basedir/import/lib" --patch-module $moduleName=$jarPath $basedir/target/module-info/$moduleName/module-info.java
cp $jarPath "$basedir/target/modules/"
"$JAVA_HOME"/bin/jar uf "$basedir/target/modules/${moduleName}.jar" -C "$basedir/target/module-info/$moduleName" module-info.class
done

@ -6,16 +6,16 @@ else
basedir=$(dirname $(dirname $(readlink -fm $0)))
fi
source $basedir/bin/java-config.sh
source "$basedir/bin/java-config.sh"
mkdir -p $basedir/import
cd $basedir/import
mkdir -p "$basedir/import"
cd "$basedir/import"
if [ ! -d "$basedir/import/i2p.i2p" ]; then
git clone https://github.com/i2p/i2p.i2p.git
fi
cd $basedir/import/i2p.i2p
cd "$basedir/import/i2p.i2p"
git fetch
git checkout tags/i2p-0.9.38
cd ..
@ -62,6 +62,3 @@ if [ ! -d "$basedir/import/javafx-jmods" ]; then
unzip javafx-jmods/win/$JAVAFX_JMODS_DOWNLOAD_FILENAME_WIN -d javafx-jmods/win/
fi

@ -6,4 +6,4 @@ else
basedir=$(dirname $(dirname $(readlink -fm $0)))
fi
$basedir/bin/java -cp $basedir/i2p.base/jbigi.jar -m org.getmonero.i2p.zero.gui --i2p.dir.base.template=$basedir/i2p.base
"$basedir"/bin/java -cp "$basedir/i2p.base/jbigi.jar" -m org.getmonero.i2p.zero.gui --i2p.dir.base.template="$basedir/i2p.base"

@ -6,4 +6,4 @@ else
basedir=$(dirname $(dirname $(readlink -fm $0)))
fi
$basedir/bin/java -cp $basedir/i2p.base/jbigi.jar -m org.getmonero.i2p.zero --i2p.dir.base.template=$basedir/i2p.base
"$basedir"/bin/java -cp "$basedir/i2p.base/jbigi.jar" -m org.getmonero.i2p.zero --i2p.dir.base.template="$basedir/i2p.base"

Loading…
Cancel
Save