summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--abs/core-testing/LinHES-timezone/PKGBUILD4
-rw-r--r--abs/core-testing/LinHES-timezone/linhes_timezone.c364
-rw-r--r--abs/core-testing/mythtv/stable/mythtv/PKGBUILD2
-rw-r--r--abs/extra-testing/community/jre/PKGBUILD73
-rw-r--r--abs/extra-testing/community/jre/construct.sh282
-rw-r--r--abs/extra-testing/community/jre/jre.install7
6 files changed, 334 insertions, 398 deletions
diff --git a/abs/core-testing/LinHES-timezone/PKGBUILD b/abs/core-testing/LinHES-timezone/PKGBUILD
index ffad3a9..0b0d2ad 100644
--- a/abs/core-testing/LinHES-timezone/PKGBUILD
+++ b/abs/core-testing/LinHES-timezone/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: Greg Frost <gregfrost1@bigpond.com>
pkgname=LinHES-timezone
pkgver=1
-pkgrel=5
+pkgrel=6
pkgdesc="GUI timezone selector used by LinHES-config."
arch=i686
depends=()
@@ -27,4 +27,4 @@ md5sums=('53976e51e938c555f84b43c933339051'
'0d9e51af5f650dd329edce4531c42a58'
'c01e2335603d8395004e32bae9060fde'
'b20bd68272644f607fbfe7d50e7be42a'
- 'b35602b7330c32a472223b22d95a1d6c')
+ '448ffca8f38b2dcd989e599ff2057399')
diff --git a/abs/core-testing/LinHES-timezone/linhes_timezone.c b/abs/core-testing/LinHES-timezone/linhes_timezone.c
index 024560f..ff75549 100644
--- a/abs/core-testing/LinHES-timezone/linhes_timezone.c
+++ b/abs/core-testing/LinHES-timezone/linhes_timezone.c
@@ -2,6 +2,8 @@
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
+#define _GNU_SOURCE
+#include <string.h>
#include <strings.h>
#include <X11/Xlib.h>
#include <X11/Intrinsic.h>
@@ -49,6 +51,41 @@ double lat_rotate[2] = {1, 0};
double acceleration = 0.01;
char input_keys[200];
+int guessing_timezone = FALSE;
+
+void select_place (int place)
+{
+ target_lon = atan2 (zone_data[selected_zone].place_info[place].v.y,
+ zone_data[selected_zone].place_info[place].v.x);
+ target_lat = acos (zone_data[selected_zone].place_info[place].v.z /2);
+
+ selected_place = place;
+}
+
+void default_zone (char *arg_zone)
+{
+ int found_zone = FALSE;
+
+ for (int zone = 0; zone < NUM_ZONES; zone++)
+ {
+ for (int place = 0; place < zone_data[zone].num_places; place++)
+ {
+ if (strstr (zone_data[zone].place_info[place].zonename,
+ arg_zone[0] ? arg_zone : "Los_Angeles"))
+ {
+ selected_zone = zone;
+ select_place (place);
+ found_zone = TRUE;
+ }
+ }
+ }
+
+ if (!found_zone)
+ {
+ default_zone ("");
+ }
+}
+
int translate_point (vect_type *v, XPoint *p)
{
vect_type v2;
@@ -259,53 +296,53 @@ void redraw_map ()
for (int zone = 0; zone < NUM_ZONES - 1; zone++)
draw_zone (pixmap, zone, 0, 0);
- draw_zone (pixmap, selected_zone, 1, 1);
- XSetForeground (display, gc, selected_border.pixel);
- draw_zone (pixmap, selected_zone, 0, 1);
-
- for (int place = 0; place < zone_data[selected_zone].num_places; place++)
+ if (guessing_timezone)
{
- XPoint point;
+ char *s = "Guessing Timezone";
+ int text_width = XTextWidth (font, s, strlen (s));
+ draw_string (width/2 - text_width/2, height/2, s, name_colour.pixel);
+ }
+ else
+ {
+ draw_zone (pixmap, selected_zone, 1, 1);
+ XSetForeground (display, gc, selected_border.pixel);
+ draw_zone (pixmap, selected_zone, 0, 1);
- translate_point (&zone_data[selected_zone].place_info[place].v, &point);
+ for (int place = 0; place < zone_data[selected_zone].num_places; place++)
+ {
+ XPoint point;
+
+ translate_point (&zone_data[selected_zone].place_info[place].v, &point);
- draw_point (point, NULL);
+ draw_point (point, NULL);
- if (place == selected_place)
- {
- char *underscore;
- selected_point = point;
- strcpy (selected_name, strchr (zone_data[selected_zone].place_info[place].zonename, '/') + 1);
- while (underscore = strchr (selected_name, '_'))
- underscore[0] = ' ';
+ if ((place == selected_place) && (!guessing_timezone))
+ {
+ char *underscore;
+ selected_point = point;
+ strcpy (selected_name, strchr (zone_data[selected_zone].place_info[place].zonename, '/') + 1);
+ while (underscore = strchr (selected_name, '_'))
+ underscore[0] = ' ';
+ }
}
- }
- draw_point (selected_point, selected_name);
+ draw_point (selected_point, selected_name);
- {
- char zone_offset[100];
- sprintf (zone_offset, "UTC%s", zone_data[selected_zone].offset);
- draw_string (
- ((width * 0.95 - XTextWidth (font, zone_offset, strlen (zone_offset))) +
- ((width / 2) + radius / sqrt (2))) / 2,
- ((lrint (height * 0.05) + font->ascent) +
- (height / 2 - radius / sqrt (2))) / 2,
- zone_offset, name_colour.pixel);
+ {
+ char zone_offset[100];
+ sprintf (zone_offset, "UTC%s", zone_data[selected_zone].offset);
+ draw_string (
+ ((width * 0.95 - XTextWidth (font, zone_offset, strlen (zone_offset))) +
+ ((width / 2) + radius / sqrt (2))) / 2,
+ ((lrint (height * 0.05) + font->ascent) +
+ (height / 2 - radius / sqrt (2))) / 2,
+ zone_offset, name_colour.pixel);
+ }
}
XCopyArea (display, pixmap, window, gc, 0, 0, width, height, 0, 0);
}
-void select_place (int place)
-{
- target_lon = atan2 (zone_data[selected_zone].place_info[place].v.y,
- zone_data[selected_zone].place_info[place].v.x);
- target_lat = acos (zone_data[selected_zone].place_info[place].v.z /2);
-
- selected_place = place;
-}
-
int nearest_z (double near_z)
{
double min_delta =
@@ -417,31 +454,37 @@ void next_view ()
double lat_error = target_lat - displayed_lat;
double lon_error = target_lon - displayed_lon;
- lat_error = atan2 (sin (lat_error), cos( lat_error));
- lon_error = atan2 (sin (lon_error), cos (lon_error));
-
- error_total = sqrt (lat_error * lat_error + lon_error * lon_error);
-
- if (error_total < acceleration)
+ if (guessing_timezone)
{
- displayed_lat = target_lat;
- displayed_lon = target_lon;
+ displayed_lon += 1 / 180.0 * M_PI;
}
else
{
- if (error_total > (step_size + acceleration) *
- (step_size + acceleration) / acceleration / 2)
- step_size += acceleration;
+ lat_error = atan2 (sin (lat_error), cos( lat_error));
+ lon_error = atan2 (sin (lon_error), cos (lon_error));
+
+ error_total = sqrt (lat_error * lat_error + lon_error * lon_error);
+
+ if (error_total < acceleration)
+ {
+ displayed_lat = target_lat;
+ displayed_lon = target_lon;
+ }
else
- step_size -= acceleration;
+ {
+ if (error_total > (step_size + acceleration) *
+ (step_size + acceleration) / acceleration / 2)
+ step_size += acceleration;
+ else
+ step_size -= acceleration;
- if (step_size < acceleration)
- step_size = acceleration;
+ if (step_size < acceleration)
+ step_size = acceleration;
- displayed_lat += step_size * (lat_error / error_total);
- displayed_lon += step_size * (lon_error / error_total);
+ displayed_lat += step_size * (lat_error / error_total);
+ displayed_lon += step_size * (lon_error / error_total);
+ }
}
-
}
void *lirc_thread (void *unused)
@@ -493,6 +536,176 @@ void *lirc_thread (void *unused)
}
}
+void get_value (FILE *input, char*output, int out_len)
+{
+ const char *value_pattern = "value=\"";
+ char *value;
+
+ output[0] = 0;
+ fgets (output, out_len, input);
+
+ if (value = strcasestr (output, value_pattern))
+ {
+ memmove (output, value + strlen (value_pattern),
+ strlen (value + strlen (value_pattern)) + 1);
+ }
+
+ if (value = strchr (output, '"'))
+ value[0] = 0;
+}
+
+void *timezone_guess (void *unused)
+{
+ const double invalid = 99999;
+ FILE *guess_data;
+ char line_in[1000];
+ double guess_latitude = invalid;
+ double guess_longitude = invalid;
+ char guess_zone[1000] = {0};
+ char *timezone_info_command;
+
+ if (getenv ("FAKE_GEOBYTES"))
+ {
+ timezone_info_command =
+ "sleep 2 ; "
+ "echo Latitude ; "
+ "echo \" <td value=\\\"-34.993\\\"\" ;"
+ "echo Longitude ; "
+ "echo \" <td value=\\\"138.6\\\"\" ;"
+ "echo TimeZone ; "
+ "echo \" <td value=\\\"+09:30\\\"\"";
+ }
+ else
+ {
+ timezone_info_command =
+ "wget http://www.geobytes.com/IpLocator.htm -O - 2> /dev/null |"
+ "grep \"^ <td \" |"
+ "grep -i -E -A1 \"Latitude|Longitude|TimeZone\" | grep -v \"^--$\"";
+ }
+
+ guess_data = popen (timezone_info_command, "r");
+
+ if (!guess_data)
+ {
+ fprintf (stderr, "error parsing web page for timezone guess\n");
+ guessing_timezone = FALSE;
+ return NULL;
+ }
+
+ while (fgets (line_in, sizeof (line_in), guess_data))
+ {
+ // Look for the entries in the guess data and then the next line
+ // will hold the value.
+
+ if (strcasestr (line_in, "latitude"))
+ {
+ get_value (guess_data, line_in, sizeof (line_in));
+ sscanf (line_in, "%lf", &guess_latitude);
+ }
+ else if (strcasestr (line_in, "longitude"))
+ {
+ get_value (guess_data, line_in, sizeof (line_in));
+ sscanf (line_in, "%lf", &guess_longitude);
+ }
+ else if (strcasestr (line_in, "timezone"))
+ {
+ get_value (guess_data, line_in, sizeof (line_in));
+
+ // The geobytes timezone data is of the form "+09:30" whereas the
+ // map timezone data is of the form "+6" or "+9.5". Convert
+ // to the map timezone data format so we can find the timezone.
+
+ if (strcmp (&line_in[3], ":30") == 0)
+ sprintf (&line_in[3], ".5");
+ else
+ line_in[3] = 0;
+
+ if (line_in[1] == '0')
+ memmove (&line_in[1], &line_in[2], strlen (&line_in[2]) + 1);
+
+ strncpy (guess_zone, line_in, sizeof (guess_zone));
+ }
+ }
+
+ pclose (guess_data);
+
+ if ((guess_latitude != invalid) &&
+ (guess_longitude != invalid) &&
+ guess_zone[0] != 0)
+ {
+ int zone;
+
+ fprintf (stderr, "guessed lat lon %f %f %s\n",
+ guess_latitude, guess_longitude, guess_zone);
+
+ // Look for the guessed zone in the zone_data structure.
+ for (zone = 0; zone < NUM_ZONES; zone++)
+ {
+ if (strcmp (guess_zone, zone_data[zone].offset) == 0)
+ break;
+ }
+
+ if (zone == NUM_ZONES)
+ {
+ fprintf (stderr, "couldnt find zone %s\n", guess_zone);
+ default_zone ("");
+ }
+ else
+ {
+ double x,y,z;
+ double min_dist_squared;
+ int closest_place;
+
+ // Look for the location in the zone nearest to the guess lat/lon.
+
+ // Convert the guessed lat/lon to x,y,z.
+
+ guess_latitude *= M_PI / 180.0;
+ guess_longitude *= M_PI / 180.0;
+
+ x = cos (guess_longitude) * cos (guess_latitude);
+ y = sin (guess_longitude) * cos (guess_latitude);
+ z = sin (guess_latitude);
+
+ min_dist_squared =
+ pow (x - zone_data[zone].place_info[0].v.x, 2) +
+ pow (y - zone_data[zone].place_info[0].v.y, 2) +
+ pow (z - zone_data[zone].place_info[0].v.z, 2);
+ closest_place = 0;
+
+ for (int place = 1; place < zone_data[zone].num_places; place++)
+ {
+ double dist_squared;
+
+ dist_squared =
+ pow (x - zone_data[zone].place_info[place].v.x, 2) +
+ pow (y - zone_data[zone].place_info[place].v.y, 2) +
+ pow (z - zone_data[zone].place_info[place].v.z, 2);
+
+ if (dist_squared < min_dist_squared)
+ {
+ closest_place = place;
+ min_dist_squared = dist_squared;
+ }
+ }
+
+ fprintf (stderr, "Guess=%s %s\n",
+ zone_data[zone].place_info[closest_place].zonename,
+ zone_data[zone].offset);
+
+ selected_zone = zone;
+ select_place (closest_place);
+ }
+ }
+ else
+ {
+ default_zone ("");
+ }
+
+ guessing_timezone = FALSE;
+ return NULL;
+}
+
void remove_titlebar_and_borders ()
{
XClassHint* classHint;
@@ -547,7 +760,7 @@ int main (int argc, char *argv[])
int arg_width = -1;
int arg_height = -1;
char arg_zone[100] = {0};
-
+
if (getenv ("ACCEL"))
acceleration = atof (getenv ("ACCEL"));
@@ -557,6 +770,13 @@ int main (int argc, char *argv[])
{
case 'z':
strncpy (arg_zone, optarg, sizeof (arg_zone) - 1);
+
+ if (strcasecmp (arg_zone, "guess") == 0)
+ {
+ guessing_timezone = TRUE;
+ arg_zone[0]=0;
+ }
+
break;
case 'w':
@@ -574,14 +794,16 @@ int main (int argc, char *argv[])
case '?':
printf ("usage: %s [-a accelleration] [-z timezone] "
"[-w width] [-h height]\n"
- "e.g. linhes_timezone -w 1920 -h 1090 -z Australia/Adelaide\n",
+ "e.g. linhes_timezone -w 1920 -h 1090 -z Australia/Adelaide\n"
+ "specify a timezone of 'guess' to determine the initial "
+ "timezone from\n"
+ "your ip address using geocache.\n",
argv[0]);
exit (0);
break;
}
}
-
pthread_create (&tid, NULL, lirc_thread, NULL);
/* Connect to the X server. */
@@ -636,7 +858,6 @@ int main (int argc, char *argv[])
remove_titlebar_and_borders ();
-
if (!window)
{
fprintf (stderr, "cannot open window\n");
@@ -726,21 +947,21 @@ int main (int argc, char *argv[])
if (XAllocColor (display, cmap, &location_dot) == 0)
printf ("Cant allocate color\n");
- // Find LA and make that the selected zone and place.
-
- for (int zone = 0; zone < NUM_ZONES; zone++)
+ // Find the selected timezone (or LA if a timezone was not selected) and
+ // make that the selected zone and place.
+
+ default_zone (arg_zone);
+
+ if (guessing_timezone)
{
- for (int place = 0; place < zone_data[zone].num_places; place++)
- {
- if (strstr (zone_data[zone].place_info[place].zonename,
- arg_zone[0] ? arg_zone : "Los_Angeles"))
- {
- selected_zone = zone;
- select_place (place);
- displayed_lat = target_lat;
- displayed_lon = target_lon;
- }
- }
+ pthread_create (&tid, NULL, timezone_guess, NULL);
+ displayed_lat = M_PI/2;
+ displayed_lon = 0;
+ }
+ else
+ {
+ displayed_lat = target_lat;
+ displayed_lon = target_lon;
}
/* ask for exposure event and keyboard events */
@@ -753,7 +974,8 @@ int main (int argc, char *argv[])
while (1)
{
- if ((displayed_lat != target_lat) || (displayed_lon != target_lon))
+ if ((displayed_lat != target_lat) || (displayed_lon != target_lon) ||
+ guessing_timezone)
{
next_view ();
redraw_map ();
diff --git a/abs/core-testing/mythtv/stable/mythtv/PKGBUILD b/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
index ebefddb..9b4d4d9 100644
--- a/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
+++ b/abs/core-testing/mythtv/stable/mythtv/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=mythtv
pkgver=0.21
-pkgrel=71
+pkgrel=72
pkgdesc="A Homebrew PVR project"
arch=('i686' 'x86_64')
depends=('bash' 'mysql-clients>=5.0' 'qt3' 'lame' 'lirc-utils' 'ffmpeg' \
diff --git a/abs/extra-testing/community/jre/PKGBUILD b/abs/extra-testing/community/jre/PKGBUILD
index ca22f01..cd9a932 100644
--- a/abs/extra-testing/community/jre/PKGBUILD
+++ b/abs/extra-testing/community/jre/PKGBUILD
@@ -1,55 +1,58 @@
-# Based on official Arch package by Jason Chu <jason@archlinux.org>
+# $Id: PKGBUILD,v 1.6 2009/06/01 19:10:05 wonder Exp $
+# Maintainer: Jason Chu <jason@archlinux.org>
+
pkgname=jre
-pkgver=6u12
+pkgver=6u14
pkgrel=1
pkgdesc="Sun's java runtime environment"
-arch=(i686 x86_64)
-[ "$CARCH" = "i686" ] && _arch=i586
-[ "$CARCH" = "x86_64" ] && _arch=amd64
+arch=('i686' 'x86_64')
+ [ "$CARCH" = "i686" ] && _arch=i586
+ [ "$CARCH" = "x86_64" ] && _arch=amd64
url="http://java.sun.com"
-depends=('glibc' 'libstdc++5')
+depends=('glibc' 'libxtst')
install="jre.install"
source=(http://download.java.net/dlj/binaries/jdk-$pkgver-dlj-linux-$_arch.bin
-https://jdk-distros.dev.java.net/source/browse/*checkout*/jdk-distros/trunk/utils/construct.sh
-jre.profile)
-[ "$CARCH" = "i686" ] && md5sums=('560a51cfeecc4918d01ca29abc858d52'
-'94065b612df0046d9ae758943f9f6a75'
-'50b4f5ac4129097461d246645d73a622')
-[ "$CARCH" = "x86_64" ] && md5sums=('9dce878be77b4a93337fa85b40b29069'
-'94065b612df0046d9ae758943f9f6a75'
-'50b4f5ac4129097461d246645d73a622')
+ https://jdk-distros.dev.java.net/source/browse/*checkout*/jdk-distros/trunk/utils/construct.sh
+ jre.profile)
+[ "$CARCH" = "i686" ] && md5sums=('299c445e4b14bfbb2a05323734d89c0c'
+ '94065b612df0046d9ae758943f9f6a75'
+ '50b4f5ac4129097461d246645d73a622')
+[ "$CARCH" = "x86_64" ] && md5sums=('6e866db04748296fc34ed83a92420403'
+ '94065b612df0046d9ae758943f9f6a75'
+ '50b4f5ac4129097461d246645d73a622')
+
+
replaces=('j2re')
conflicts=('j2re' 'java-runtime')
-provides=('j2re' 'java-runtime')
+provides=('j2re' 'java-runtime=6')
license=('custom')
build() {
- cd $startdir/src
+ cd $startdir/src
+
+ mkdir unbundle-jdk
+ cd unbundle-jdk
- mkdir unbundle-jdk
- cd unbundle-jdk
+ sh ../jdk-$pkgver-dlj-linux-$_arch.bin --accept-license
- sh ../jdk-$pkgver-dlj-linux-$_arch.bin --accept-license
+ cd ..
- cd ..
+ sh construct.sh unbundle-jdk linux-jdk linux-jre
- sh construct.sh unbundle-jdk linux-jdk linux-jre
+ mkdir -p $startdir/pkg/opt/java
+ mv linux-jdk/jre $startdir/pkg/opt/java
- mkdir -p $startdir/pkg/opt/java
- mv linux-jdk/jre $startdir/pkg/opt/java
+ install -D -m755 $startdir/src/${pkgname}.profile $startdir/pkg/etc/profile.d/${pkgname}.sh
- install -D -m755 $startdir/src/${pkgname}.profile $startdir/pkg/etc/profile.d/${pkgname}.sh
+ mkdir -p $startdir/pkg/usr/lib/mozilla/plugins
- if [ "$CARCH" = "i686" ]; then
- mkdir -p $startdir/pkg/usr/lib/mozilla/plugins
- ln -s /opt/java/jre/plugin/i386/ns7/libjavaplugin_oji.so $startdir/pkg/usr/lib/mozilla/plugins
- elif [ "$CARCH" = "x86_64" ]; then
- mkdir -p $startdir/pkg/usr/lib/mozilla/plugins
- ln -s /opt/java/jre/lib/amd64/libnpjp2.so $startdir/pkg/usr/lib/mozilla/plugins
- fi
+ if [ "$CARCH" = "i686" ]; then
+ ln -s /opt/java/jre/lib/i386/libnpjp2.so $startdir/pkg/usr/lib/mozilla/plugins
+ else ln -s /opt/java/jre/lib/amd64/libnpjp2.so $startdir/pkg/usr/lib/mozilla/plugins
+ fi
- mkdir -p $startdir/pkg/usr/share/licenses/jre
- cp $startdir/pkg/opt/java/jre/COPYRIGHT $startdir/pkg/usr/share/licenses/jre
- cp $startdir/pkg/opt/java/jre/LICENSE $startdir/pkg/usr/share/licenses/jre
- cp $startdir/pkg/opt/java/jre/THIRDPARTYLICENSEREADME.txt $startdir/pkg/usr/share/licenses/jre
+ mkdir -p $startdir/pkg/usr/share/licenses/jre
+ cp $startdir/pkg/opt/java/jre/COPYRIGHT $startdir/pkg/usr/share/licenses/jre
+ cp $startdir/pkg/opt/java/jre/LICENSE $startdir/pkg/usr/share/licenses/jre
+ cp $startdir/pkg/opt/java/jre/THIRDPARTYLICENSEREADME.txt $startdir/pkg/usr/share/licenses/jre
}
diff --git a/abs/extra-testing/community/jre/construct.sh b/abs/extra-testing/community/jre/construct.sh
deleted file mode 100644
index 5f6ff7f..0000000
--- a/abs/extra-testing/community/jre/construct.sh
+++ /dev/null
@@ -1,282 +0,0 @@
-#!/bin/bash
-# construct.sh
-# example construction of JRE and JDK directories from the DLJ bundles
-#
-# Copyright © 2006 Sun Microsystems, Inc.
-#
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-#
-# The above copyright notice and this permission notice shall be
-# included in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
-# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
-# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-#
-# Sun, Sun Microsystems, the Sun logo and Java, Java HotSpot,
-# and JVM trademarks or registered trademarks of Sun Microsystems,
-# Inc. in the U.S. and other countries.
-
-
-program=`basename $0`
-
-usage () {
- echo "usage: ${program} path/to/unbundle-jdk path/to/linux-jdk path/to/linux-jre"
-}
-
-getargs() {
- undir=$1
- jdkdir=$2
- jredir=$3
- if [ ! -d $undir ]; then
- echo "${program}: unbundle directory not found: $undir"
- exit 2
- fi
- # make sure javahome is the JDK
- javahome=`echo $undir/*/demo`
- if [ ! -d $javahome ]; then
- echo "${program}: unbundle directory incorrect: $undir"
- echo " expecting $undir/jdk1.5.0_xx"
- exit 2
- else
- javahome=`dirname $javahome`
- fi
- # verify JDK dir
- jdkdirp=`dirname $jdkdir`
- jdkbase=`basename $jdkdir`
- if [ ! -d $jdkdirp ]; then
- echo "${program}: parent directory for JDK does not exist: $jdkdirp"
- exit 2
- fi
- savedir=`pwd`
- cd $jdkdirp
- jdkdirp=`pwd`
- cd $savedir
- jdkdir=$jdkdirp/$jdkbase
- # verify JRE dir
- jredirp=`dirname $jredir`
- jrebase=`basename $jredir`
- if [ ! -d $jredirp ]; then
- echo "${program}: parent directory for JRE does not exist: $jredirp"
- exit 2
- fi
- savedir=`pwd`
- cd $jredirp
- jredirp=`pwd`
- cd $savedir
- jredir=$jredirp/$jrebase
-}
-
-checkfiles() {
- if [ -r $jdkdir ]; then
- echo "${program}: directory for JDK already exists: $jdkdir"
- exit 2
- fi
- if [ -r $jredir ]; then
- echo "${program}: directory for JRE already exists: $jredir"
- exit 2
- fi
-}
-
-copytree() {
- echo "copying over the JDK tree..."
- cp -a $javahome $jdkdir
-}
-
-linkrel() {
- target=$1
- link=$2
- # make a softlink from the $link to the $target
- # make this a relative link
- targetb=(`echo $target | tr '/' ' '`)
- linkb=(`echo $link | tr '/' ' '`)
- (( n = ${#targetb[*]} ))
- (( m = ${#linkb[*]} ))
- c=$n # common length
- if [ $m -lt $c ]; then
- (( c = m ))
- fi
- for (( i = 0 ; i < c ; i++ )); do
- if [ ${targetb[$i]} != ${linkb[$i]} ]; then
- # echo components differ, stopping
- break
- fi
- done
- rel=""
- for (( j = i + 1; j < m ; j++ )); do
- if [ -z $rel ]; then
- rel=".."
- else
- rel="$rel/.."
- fi
- done
- for (( j = i; j < n ; j++ )); do
- if [ -z $rel ]; then
- rel=${targetb[$j]}
- else
- rel="$rel/${targetb[$j]}"
- fi
- done
- ln -s $rel $link
-}
-
-createjre() {
- echo "creating JRE directory..."
- # absolute link
- # ln -s $jdkdir/jre $jredir
- # relative link
- linkrel $jdkdir/jre $jredir
-}
-
-unpackjars() {
- echo "unpacking jars..."
- unpack200=$jdkdir/bin/unpack200
- if [ ! -x $unpack200 ]; then
- echo "${program}: file missing $unpack200"
- exit 1
- fi
- cd $jdkdir
- PACKED_JARS=`find . -name '*.pack'`
- for i in $PACKED_JARS; do
- # echo $i
- jdir=`dirname $i`
- jbase=`basename $i .pack`
- if ! $unpack200 $jdkdir/$jdir/$jbase.pack $jdkdir/$jdir/$jbase.jar; then
- echo "${program}: error unpacking $jdkdir/$jdir/$jbase.jar"
- fi
- if [ ! -r $jdkdir/$jdir/$jbase.jar ]; then
- echo "${program}: missing $jdkdir/$jdir/$jbase.jar"
- else
- echo " $jdir/$jbase.jar"
- # remove pack file
- rm $jdkdir/$jdir/$jbase.pack
- fi
- done
-}
-
-preparecds() {
- # if this is a client installation...
- compiler="`$jdkdir/bin/java -client -version 2>&1 | tail -n +3 | cut -d' ' -f1-4`"
- if [ "X$compiler" = "XJava HotSpot(TM) Client VM" ]; then
- # create the CDS archive
- echo "creating the class data sharing archive..."
- if ! $jdkdir/bin/java -client -Xshare:dump > /dev/null 2>&1; then
- echo "returned error code $?"
- fi
- fi
-}
-
-jreman () {
- echo "setting up the JRE man pages..."
- # note this list is slightly different for OpenSolaris bundles
- jreman=/tmp/jre.man.txt
-cat <<EOF > $jreman
-man/ja_JP.eucJP/man1/java.1
-man/ja_JP.eucJP/man1/javaws.1
-man/ja_JP.eucJP/man1/keytool.1
-man/ja_JP.eucJP/man1/kinit.1
-man/ja_JP.eucJP/man1/klist.1
-man/ja_JP.eucJP/man1/ktab.1
-man/ja_JP.eucJP/man1/orbd.1
-man/ja_JP.eucJP/man1/pack200.1
-man/ja_JP.eucJP/man1/policytool.1
-man/ja_JP.eucJP/man1/rmid.1
-man/ja_JP.eucJP/man1/rmiregistry.1
-man/ja_JP.eucJP/man1/servertool.1
-man/ja_JP.eucJP/man1/tnameserv.1
-man/ja_JP.eucJP/man1/unpack200.1
-man/man1/java.1
-man/man1/javaws.1
-man/man1/keytool.1
-man/man1/kinit.1
-man/man1/klist.1
-man/man1/ktab.1
-man/man1/orbd.1
-man/man1/pack200.1
-man/man1/policytool.1
-man/man1/rmid.1
-man/man1/rmiregistry.1
-man/man1/servertool.1
-man/man1/tnameserv.1
-man/man1/unpack200.1
-EOF
- # create jre/man directory
- # mkdir $jdkdir/jre/man
- # move the real JRE man pages to jre/man
- # link the JDK JRE man pages to jre/man
- # real JDK man pages stay where they are
- for m in `cat $jreman`; do
- manpath=`dirname $jdkdir/jre/$m`
- mkdir -p $manpath
- mv $jdkdir/$m $jdkdir/jre/$m
- linkrel $jdkdir/jre/$m $jdkdir/$m
- done
- # link in Japanese man pages
- ln -s ja_JP.eucJP $jdkdir/jre/man/ja
- rm $jreman
-}
-
-elimdups() {
- echo "eliminating duplication between the JDK and JDK/jre..."
- jdkcomm=/tmp/jdk.bin.comm.txt
-cat <<EOF > $jdkcomm
-bin/ControlPanel
-bin/java
-bin/javaws
-bin/keytool
-bin/kinit
-bin/klist
-bin/ktab
-bin/orbd
-bin/pack200
-bin/policytool
-bin/rmid
-bin/rmiregistry
-bin/servertool
-bin/tnameserv
-bin/unpack200
-EOF
- # note there is little point in linking these common files
- # COPYRIGHT
- # LICENSE
- # THIRDPARTYLICENSEREADME.txt
- # And this file is unique to the JDK
- # README.html
- # And these files are unique to the JDK/jre/
- # CHANGES
- # README
- # Welcome.html
- for p in `cat $jdkcomm`; do
- rm $jdkdir/$p
- # this is a relative link
- ln -s ../jre/$p $jdkdir/$p
- done
- rm $jdkcomm
-}
-
-if [ $# -eq 3 ] ; then
- getargs $1 $2 $3
- checkfiles
- copytree
- createjre
- unpackjars
- preparecds
- jreman
- elimdups
-else
- usage
- exit 1
-fi
-
-exit 0
-
diff --git a/abs/extra-testing/community/jre/jre.install b/abs/extra-testing/community/jre/jre.install
index 778a5fd..4e557a7 100644
--- a/abs/extra-testing/community/jre/jre.install
+++ b/abs/extra-testing/community/jre/jre.install
@@ -10,13 +10,6 @@ post_install() {
sed -e '/application\/x-java-jnlp-file/d' -i /etc/mailcap
fi
echo 'application/x-java-jnlp-file;/opt/java/jre/bin/javaws %s' >>/etc/mailcap
-cat << _EOF
-
-==> In order to have java applets support in firefox you should install
-==> libxtst (pacman -S libxtst).
-
-_EOF
-
}
post_remove() {