subgit 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. #!/bin/bash
  2. PRG="$0"
  3. # need this for relative symlinks
  4. while [ -h "$PRG" ] ; do
  5. ls_out=`ls -ld "$PRG"`
  6. link=`expr "$ls_out" : '.*-> \(.*\)$'`
  7. if expr "$link" : '/.*' > /dev/null; then
  8. PRG="$link"
  9. else
  10. PRG="`dirname "$PRG"`/$link"
  11. fi
  12. done
  13. saveddir=`pwd`
  14. BASEDIR=`dirname "$PRG"`/..
  15. # make it fully qualified
  16. BASEDIR=`cd "$BASEDIR" && pwd`
  17. cd "$saveddir"
  18. cygwin=false;
  19. darwin=false;
  20. case "`uname`" in
  21. CYGWIN*) cygwin=true ;;
  22. Darwin*) darwin=true
  23. if [ -z "$JAVA_HOME" ] ; then
  24. JAVA_HOME_CMD="/usr/libexec/java_home"
  25. if [ -x "$JAVA_HOME_CMD" ] ; then
  26. JAVA_HOME=`$JAVA_HOME_CMD`
  27. fi
  28. fi
  29. if [ -z "$JAVA_HOME" ] ; then
  30. if [ -z "$JAVA_VERSION" ] ; then
  31. JAVA_VERSION="CurrentJDK"
  32. fi
  33. TEMP_JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/$JAVA_VERSION/Home"
  34. if [ -x "$TEMP_JAVA_HOME/bin/java" ] ; then
  35. JAVA_HOME="$TEMP_JAVA_HOME"
  36. fi
  37. fi
  38. ;;
  39. esac
  40. if [ -z "$JAVA_HOME" ] ; then
  41. if [ -r /etc/gentoo-release ] ; then
  42. JAVA_HOME=`java-config --jre-home`
  43. fi
  44. fi
  45. # For Cygwin, ensure paths are in UNIX format before anything is touched
  46. if $cygwin ; then
  47. [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
  48. fi
  49. # If a specific java binary isn't specified search for the standard 'java' binary
  50. if [ -z "$JAVACMD" ] ; then
  51. if [ -n "$JAVA_HOME" ] ; then
  52. if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
  53. # IBM's JDK on AIX uses strange locations for the executables
  54. JAVACMD="$JAVA_HOME/jre/sh/java"
  55. else
  56. JAVACMD="$JAVA_HOME/bin/java"
  57. fi
  58. else
  59. JAVACMD=`which java`
  60. fi
  61. fi
  62. if [ ! -x "$JAVACMD" ] ; then
  63. echo "Error: JAVA_HOME is not defined correctly."
  64. echo " We cannot execute $JAVACMD"
  65. exit 1
  66. fi
  67. TS_LIB="$TS_LIB_DEFAULT"
  68. if [ -z "$TS_LIB" ]
  69. then
  70. TS_LIB="$BASEDIR"/lib
  71. fi
  72. TS_CLASSPATH="$TS_LIB/jansi-1.6.jar"
  73. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/slf4j-nop-1.7.12.jar"
  74. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/unirest-java-1.3.0.jar"
  75. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/javax.ws.rs-api-2.1.jar"
  76. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-server-9.4.11.v20180605.jar"
  77. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-servlet-9.4.11.v20180605.jar"
  78. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-server-2.27.jar"
  79. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-hk2-2.27.jar"
  80. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-container-jetty-servlet-2.27.jar"
  81. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-media-json-jackson-2.27.jar"
  82. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/svnkit-1.10.3.jar"
  83. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/org.eclipse.jgit-5.0.11-sgk.jar"
  84. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/annotations-7.0.3.jar"
  85. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/slf4j-api-1.7.12.jar"
  86. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/httpclient-4.3.jar"
  87. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/httpasyncclient-4.0-beta4.jar"
  88. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/httpmime-4.3.jar"
  89. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/json-20090211.jar"
  90. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/javax.servlet-api-3.1.0.jar"
  91. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-http-9.4.11.v20180605.jar"
  92. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-io-9.4.11.v20180605.jar"
  93. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-security-9.4.11.v20180605.jar"
  94. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-common-2.27.jar"
  95. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-client-2.27.jar"
  96. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-media-jaxb-2.27.jar"
  97. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/javax.annotation-api-1.2.jar"
  98. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/javax.inject-2.5.0-b42.jar"
  99. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/validation-api-1.1.0.Final.jar"
  100. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/hk2-locator-2.5.0-b42.jar"
  101. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-container-servlet-2.27.jar"
  102. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-container-jetty-http-2.27.jar"
  103. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-webapp-9.4.7.v20170914.jar"
  104. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-entity-filtering-2.27.jar"
  105. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jackson-annotations-2.8.10.jar"
  106. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jackson-databind-2.8.10.jar"
  107. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jackson-module-jaxb-annotations-2.8.10.jar"
  108. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/sequence-library-1.0.4.jar"
  109. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/sqljet-1.1.14.jar"
  110. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jna-5.6.0.jar"
  111. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jna-platform-5.6.0.jar"
  112. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/trilead-ssh2-1.0.0-build222.jar"
  113. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.connector-factory-0.0.7.jar"
  114. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.svnkit-trilead-ssh2-0.0.7.jar"
  115. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/lz4-java-1.4.1.jar"
  116. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch-0.1.54.jar"
  117. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/JavaEWAH-1.1.6.jar"
  118. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/bcpg-jdk15on-1.62.jar"
  119. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/bcprov-jdk15on-1.62.jar"
  120. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/bcpkix-jdk15on-1.62.jar"
  121. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/httpcore-4.3.jar"
  122. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/commons-logging-1.1.3.jar"
  123. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/commons-codec-1.6.jar"
  124. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/httpcore-nio-4.3-beta2.jar"
  125. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-util-9.4.11.v20180605.jar"
  126. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/osgi-resource-locator-1.0.1.jar"
  127. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/aopalliance-repackaged-2.5.0-b42.jar"
  128. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/hk2-api-2.5.0-b42.jar"
  129. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/hk2-utils-2.5.0-b42.jar"
  130. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/javassist-3.22.0-CR2.jar"
  131. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jersey-container-servlet-core-2.27.jar"
  132. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-continuation-9.4.7.v20170914.jar"
  133. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jetty-xml-9.4.7.v20170914.jar"
  134. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jackson-core-2.8.10.jar"
  135. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/antlr-runtime-3.4.jar"
  136. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.core-0.0.7.jar"
  137. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.usocket-jna-0.0.7.jar"
  138. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.usocket-nc-0.0.7.jar"
  139. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.sshagent-0.0.7.jar"
  140. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/jsch.agentproxy.pageant-0.0.7.jar"
  141. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/javax.inject-1.jar"
  142. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/translator-3.3.12.jar"
  143. TS_CLASSPATH=$TS_CLASSPATH:"$TS_LIB/svngitkit-2.3.4-snapshot20210129222000.jar"
  144. EXTRA_JVM_ARGUMENTS="-Dsun.io.useCanonCaches=false -Djava.awt.headless=true -Djna.nosys=true -Dsvnkit.http.methods=Digest,Basic,NTLM,Negotiate"
  145. # For Cygwin, switch paths to Windows format before running java
  146. if $cygwin; then
  147. [ -n "$TS_CLASSPATH" ] && TS_CLASSPATH=`cygpath --path --windows "$TS_CLASSPATH"`
  148. [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
  149. [ -n "$HOME" ] && HOME=`cygpath --path --windows "$HOME"`
  150. [ -n "$BASEDIR" ] && BASEDIR=`cygpath --path --windows "$BASEDIR"`
  151. [ -n "$REPO" ] && REPO=`cygpath --path --windows "$REPO"`
  152. fi
  153. for var in "$@"
  154. do
  155. case "$var" in
  156. "--shared")
  157. umask 0002
  158. ;;
  159. esac
  160. done
  161. exec "$JAVACMD" $JAVA_OPTS \
  162. $EXTRA_JVM_ARGUMENTS \
  163. $SUBGIT_OPTS \
  164. -classpath "$TS_CLASSPATH" \
  165. org.tmatesoft.translator.SubGit \
  166. "$@"