Index: Dude/ENCHANT/1.3.0/Solaris/install.sh
===================================================================
--- Dude/ENCHANT/1.3.0/Solaris/install.sh       (revision 2040)
+++ Dude/ENCHANT/1.3.0/Solaris/install.sh       (working copy)
@@ -1,4 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
+rm -f $DESTDIR$_libdir/enchant/lib*.a
 rm -f $DESTDIR$_libdir/enchant/*.la
Index: Dude/POPT/1.7/Solaris/install.sh
===================================================================
--- Dude/POPT/1.7/Solaris/install.sh    (revision 2040)
+++ Dude/POPT/1.7/Solaris/install.sh    (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
 
Index: Dude/LCMS/1.17/Solaris/install.sh
===================================================================
--- Dude/LCMS/1.17/Solaris/install.sh   (revision 2040)
+++ Dude/LCMS/1.17/Solaris/install.sh   (working copy)
@@ -1,4 +1,5 @@
 #!/bin/bash
 make DESTDIR=$DESTDIR install
+rm -f $DESTDIR${_libdir}/lib*.a
 rm -f $DESTDIR${_libdir}/lib*.la
 
Index: Dude/VCDIMAGER/0.7.23/Solaris/install.sh
===================================================================
--- Dude/VCDIMAGER/0.7.23/Solaris/install.sh    (revision 2040)
+++ Dude/VCDIMAGER/0.7.23/Solaris/install.sh    (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
 rm -f $DESTDIR$_infodir/dir
Index: Dude/LIBOGG/1.1.3/Solaris/install.sh
===================================================================
--- Dude/LIBOGG/1.1.3/Solaris/install.sh        (revision 2040)
+++ Dude/LIBOGG/1.1.3/Solaris/install.sh        (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/LIBSNDFILE/1.0.17/Solaris/install.sh
===================================================================
--- Dude/LIBSNDFILE/1.0.17/Solaris/install.sh   (revision 2040)
+++ Dude/LIBSNDFILE/1.0.17/Solaris/install.sh   (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/*.la
Index: Dude/ILMBASE/1.0.1/Solaris/install.sh
===================================================================
--- Dude/ILMBASE/1.0.1/Solaris/install.sh       (revision 2040)
+++ Dude/ILMBASE/1.0.1/Solaris/install.sh       (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/LIBCAPTURY/0.3.0-158/Solaris/install.sh
===================================================================
--- Dude/LIBCAPTURY/0.3.0-158/Solaris/install.sh        (revision 2040)
+++ Dude/LIBCAPTURY/0.3.0-158/Solaris/install.sh        (working copy)
@@ -1,3 +1,4 @@
 #! /bin/sh
 $MAKE install DESTDIR=$DESTDIR || exit 1
+rm -f $DESTDIR/$_libdir/lib*.a
 rm -f $DESTDIR/$_libdir/*.la
Index: Dude/LIBCAPTURY/0.3.0-158/Solaris/configure.sh
===================================================================
--- Dude/LIBCAPTURY/0.3.0-158/Solaris/configure.sh      (revision 2040)
+++ Dude/LIBCAPTURY/0.3.0-158/Solaris/configure.sh      (working copy)
@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
 
 PKG_CONFIG_PATH=$_libdir/pkgconfig
 X11_LIBS=-lX11
@@ -13,6 +13,11 @@
        accel=x86
        for i in $CFLAGS ; do echo $i ; done | grep -- -m64 && accel=amd64
 fi
+
+build64bit=`echo $CXXFLAGS | grep -- '-m64'`
+if [ "x$build64bit" != "x" ] ; then
+       export XFIXES_LIBS=`pkg-config --libs "xfixes >= 1.0.0" | 
$KBE_PREFIX/bin/sed -e "s%\(-[LR]/.*/lib\)\([^/]\|$\)%\1/$_arch\2%g"`
+fi
  
 ./configure \
        --prefix=${PREFIX} \
Index: Dude/GCROOTS/0.1.4/Solaris/install.sh
===================================================================
--- Dude/GCROOTS/0.1.4/Solaris/install.sh       (revision 2040)
+++ Dude/GCROOTS/0.1.4/Solaris/install.sh       (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/CTL/1.4.1/Solaris/install.sh
===================================================================
--- Dude/CTL/1.4.1/Solaris/install.sh   (revision 2040)
+++ Dude/CTL/1.4.1/Solaris/install.sh   (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/CTL/1.4.1/Solaris/diffs/CtlLex.cpp.diff
===================================================================
--- Dude/CTL/1.4.1/Solaris/diffs/CtlLex.cpp.diff        (revision 2040)
+++ Dude/CTL/1.4.1/Solaris/diffs/CtlLex.cpp.diff        (working copy)
@@ -1,6 +1,6 @@
---- ctl-1.4.1.orig/IlmCtl/CtlLex.cpp   2007-03-20 13:48:40.000000000 -0400
-+++ ctl-1.4.1/IlmCtl/CtlLex.cpp        2007-12-15 15:58:29.000000000 -0500
-@@ -52,11 +52,14 @@
+--- ctl-1.4.1.orig/IlmCtl/CtlLex.cpp   2008-03-08 07:12:04.000000000 +0000
++++ ctl-1.4.1/IlmCtl/CtlLex.cpp        2008-05-26 13:55:43.392844874 +0000
+@@ -52,11 +52,15 @@
  //
  
//-----------------------------------------------------------------------------
  
@@ -11,6 +11,7 @@
 +
  #include <CtlLex.h>
  #include <CtlMessage.h>
++#include <CtlSymbolTable.h>
  #include <CtlLContext.h>
 -#include <iomanip>
 -#include <cassert>
Index: Dude/CTL/1.4.1/Solaris/diffs/CtlLContext.cpp.diff
===================================================================
--- Dude/CTL/1.4.1/Solaris/diffs/CtlLContext.cpp.diff   (revision 0)
+++ Dude/CTL/1.4.1/Solaris/diffs/CtlLContext.cpp.diff   (revision 0)
@@ -0,0 +1,10 @@
+--- ctl-1.4.1-orig/IlmCtl/CtlLContext.cpp      2008-03-08 07:12:04.000000000 
+0000
++++ ctl-1.4.1/IlmCtl/CtlLContext.cpp   2008-05-26 13:54:31.278956893 +0000
+@@ -51,6 +51,7 @@
+ //
+ 
//-----------------------------------------------------------------------------
+ 
++#include <CtlSymbolTable.h>
+ #include <CtlLContext.h>
+ #include <CtlModule.h>
+ #include <iostream>
Index: Dude/CTL/1.4.1/Solaris/diffs/CtlType.cpp.diff
===================================================================
--- Dude/CTL/1.4.1/Solaris/diffs/CtlType.cpp.diff       (revision 0)
+++ Dude/CTL/1.4.1/Solaris/diffs/CtlType.cpp.diff       (revision 0)
@@ -0,0 +1,10 @@
+--- ctl-1.4.1-orig/IlmCtl/CtlType.cpp  2008-03-08 07:12:04.000000000 +0000
++++ ctl-1.4.1/IlmCtl/CtlType.cpp       2008-05-26 14:16:29.911738591 +0000
+@@ -54,6 +54,7 @@
+ #include <CtlType.h>
+ #include <CtlSyntaxTree.h>
+ #include <CtlMessage.h>
++#include <CtlSymbolTable.h>
+ #include <CtlLContext.h>
+ #include <CtlAlign.h>
+ #include <CtlExc.h>
Index: Dude/CTL/1.4.1/Solaris/apply_patches
===================================================================
--- Dude/CTL/1.4.1/Solaris/apply_patches        (revision 2040)
+++ Dude/CTL/1.4.1/Solaris/apply_patches        (working copy)
@@ -2,10 +2,12 @@
 
 for file in  \
     CtlAlign.h.diff \
+    CtlLContext.cpp.diff \
     CtlInterpreter.cpp.diff \
     CtlLex.cpp.diff \
     CtlSimdReg.h.diff \
     CtlSymbolTable.cpp.diff \
+    CtlType.cpp.diff \
     IlmCtlSimd.diff \
     testAffineRec.cpp.diff \
     testGaussRec.cpp.diff \
Index: Dude/GNUMP/4.2.2/Solaris/install.sh
===================================================================
--- Dude/GNUMP/4.2.2/Solaris/install.sh (revision 2040)
+++ Dude/GNUMP/4.2.2/Solaris/install.sh (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
 rm -rf $DESTDIR$_datadir/info/dir
 mv $DESTDIR/include/*.h $DESTDIR${_includedir}/
Index: Dude/PCRE/7.4/Solaris/install.sh
===================================================================
--- Dude/PCRE/7.4/Solaris/install.sh    (revision 2040)
+++ Dude/PCRE/7.4/Solaris/install.sh    (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/FONTCONFIG/2.5.0/Solaris/install.sh
===================================================================
--- Dude/FONTCONFIG/2.5.0/Solaris/install.sh    (revision 2040)
+++ Dude/FONTCONFIG/2.5.0/Solaris/install.sh    (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm $DESTDIR$_libdir/libfontconfig.a
 rm $DESTDIR$_libdir/libfontconfig.la
 
Index: Dude/LIBFSTYP/1.0/configure.ac
===================================================================
--- Dude/LIBFSTYP/1.0/configure.ac      (revision 0)
+++ Dude/LIBFSTYP/1.0/configure.ac      (revision 0)
@@ -0,0 +1,16 @@
+dnl Prelude
+AC_INIT([amfstyp], [1.0], [markwright at internode.on.net])
+AC_PREREQ([2.59])
+AC_CONFIG_SRCDIR([src])
+AC_CONFIG_AUX_DIR([build-aux])
+AM_INIT_AUTOMAKE([-Wall -Werror foreign])
+AC_CONFIG_MACRO_DIR([m4])
+
+dnl Checks for programs
+AC_PROG_CC
+AC_PROG_LIBTOOL
+
+dnl Output files
+AC_CONFIG_HEADERS([include/libfstyp_config.h])
+AC_CONFIG_FILES([Makefile include/Makefile src/Makefile])
+AC_OUTPUT
Index: Dude/LIBFSTYP/1.0/include/libfstyp.h
===================================================================
--- Dude/LIBFSTYP/1.0/include/libfstyp.h        (revision 0)
+++ Dude/LIBFSTYP/1.0/include/libfstyp.h        (revision 0)
@@ -0,0 +1,86 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
+ *
+ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+ * or http://www.opensolaris.org/os/licensing.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+ * If applicable, add the following below this CDDL HEADER, with the
+ * fields enclosed by brackets "[]" replaced with your own identifying
+ * information: Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ */
+/*
+ * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#ifndef        _LIBFSTYP_H
+#define        _LIBFSTYP_H
+
+#pragma ident  "%Z%%M% %I%     %E% SMI"
+
+/*
+ * libfstyp: filesystem identification library
+ */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <sys/types.h>
+#include <libnvpair.h>
+
+typedef struct fstyp_handle *fstyp_handle_t;
+
+enum {
+       FSTYP_ERR_OK = 0,
+       FSTYP_ERR_NO_MATCH,             /* no matches */
+       FSTYP_ERR_MULT_MATCH,           /* multiple matches */
+       FSTYP_ERR_HANDLE,               /* invalid handle */
+       FSTYP_ERR_OFFSET,               /* invalid or unsupported offset */
+       FSTYP_ERR_NO_PARTITION,         /* partition not found */
+       FSTYP_ERR_NOP,                  /* no such operation */
+       FSTYP_ERR_DEV_OPEN,             /* cannot open device */
+       FSTYP_ERR_IO,                   /* I/O error */
+       FSTYP_ERR_NOMEM,                /* out of memory */
+       FSTYP_ERR_MOD_NOT_FOUND,        /* requested fs module not found */
+       FSTYP_ERR_MOD_DIR_OPEN,         /* cannot open directory */
+       FSTYP_ERR_MOD_OPEN,             /* cannot open module */
+       FSTYP_ERR_MOD_VERSION,          /* invalid module version */
+       FSTYP_ERR_MOD_INVALID,          /* invalid module */
+       FSTYP_ERR_NAME_TOO_LONG         /* fs name exceeds FSTYPSZ */
+};
+
+/*
+ * generic attribute names
+ *
+ * gen_clean (DATA_TYPE_BOOLEAN_VALUE)
+ * gen_guid (DATA_TYPE_STRING)
+ * gen_version (DATA_TYPE_STRING)
+ * gen_volume_label (DATA_TYPE_STRING)
+ */
+
+int fstyp_init(int fd, off64_t offset, char *module_dir,
+    fstyp_handle_t *handle);
+void fstyp_fini(fstyp_handle_t handle);
+int fstyp_ident(fstyp_handle_t handle, const char *fsname,
+    const char **ident);
+int fstyp_get_attr(fstyp_handle_t handle, nvlist_t **attr);
+int fstyp_dump(fstyp_handle_t handle, FILE *fout, FILE *ferr);
+const char *fstyp_strerror(fstyp_handle_t handle, int error);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _LIBFSTYP_H */
+
+
Index: Dude/LIBFSTYP/1.0/include/libfstyp_module.h
===================================================================
--- Dude/LIBFSTYP/1.0/include/libfstyp_module.h (revision 0)
+++ Dude/LIBFSTYP/1.0/include/libfstyp_module.h (revision 0)
@@ -0,0 +1,60 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
+ *
+ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+ * or http://www.opensolaris.org/os/licensing.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+ * If applicable, add the following below this CDDL HEADER, with the
+ * fields enclosed by brackets "[]" replaced with your own identifying
+ * information: Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ */
+/*
+ * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#ifndef        _LIBFSTYP_MODULE_H
+#define        _LIBFSTYP_MODULE_H
+
+#pragma ident  "%Z%%M% %I%     %E% SMI"
+
+/*
+ * libfstyp: module interface
+ */
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdio.h>
+#include <sys/types.h>
+#include <libnvpair.h>
+#include <libfstyp.h>
+
+typedef struct fstyp_mod_handle *fstyp_mod_handle_t;
+
+/*
+ * Modules are must to export these functions.
+ * fstyp_mod_dump() is optional.
+ */
+int fstyp_mod_init(int fd, off64_t offset, fstyp_mod_handle_t *handle);
+void fstyp_mod_fini(fstyp_mod_handle_t handle);
+int fstyp_mod_ident(fstyp_mod_handle_t handle);
+int fstyp_mod_get_attr(fstyp_mod_handle_t handle, nvlist_t **attr);
+int fstyp_mod_dump(fstyp_mod_handle_t handle, FILE *fout, FILE *ferr);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _LIBFSTYP_MODULE_H */
+
Index: Dude/LIBFSTYP/1.0/include/Makefile.am
===================================================================
--- Dude/LIBFSTYP/1.0/include/Makefile.am       (revision 0)
+++ Dude/LIBFSTYP/1.0/include/Makefile.am       (revision 0)
@@ -0,0 +1,2 @@
+include_HEADERS = libfstyp.h libfstyp_module.h
+noinst_HEADERS = libfstyp_config.h
Index: Dude/LIBFSTYP/1.0/src/Makefile.am
===================================================================
--- Dude/LIBFSTYP/1.0/src/Makefile.am   (revision 0)
+++ Dude/LIBFSTYP/1.0/src/Makefile.am   (revision 0)
@@ -0,0 +1,3 @@
+lib_LTLIBRARIES = libfstyp.la
+libfstyp_la_SOURCES = libfstyp.c
+libfstyp_la_LIBADD = -lintl
Index: Dude/LIBFSTYP/1.0/src/libfstyp.c
===================================================================
--- Dude/LIBFSTYP/1.0/src/libfstyp.c    (revision 0)
+++ Dude/LIBFSTYP/1.0/src/libfstyp.c    (revision 0)
@@ -0,0 +1,531 @@
+/*
+ * CDDL HEADER START
+ *
+ * The contents of this file are subject to the terms of the
+ * Common Development and Distribution License (the "License").
+ * You may not use this file except in compliance with the License.
+ *
+ * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+ * or http://www.opensolaris.org/os/licensing.
+ * See the License for the specific language governing permissions
+ * and limitations under the License.
+ *
+ * When distributing Covered Code, include this CDDL HEADER in each
+ * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+ * If applicable, add the following below this CDDL HEADER, with the
+ * fields enclosed by brackets "[]" replaced with your own identifying
+ * information: Portions Copyright [yyyy] [name of copyright owner]
+ *
+ * CDDL HEADER END
+ */
+/*
+ * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#pragma ident  "%Z%%M% %I%     %E% SMI"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <libintl.h>
+#include <errno.h>
+#include <strings.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <sys/param.h>
+#include <sys/fstyp.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <dirent.h>
+#include <dlfcn.h>
+#include <link.h>
+#include <libnvpair.h>
+#include <libfstyp.h>
+#include <libfstyp_module.h>
+
+/* default module directory */
+const char *default_libfs_dir = "/usr/lib/fs";
+
+#define        FSTYP_VERSION   1
+
+#ifndef        TEXT_DOMAIN
+#define        TEXT_DOMAIN     "SYS_TEST"
+#endif
+
+typedef struct fstyp_ops {
+       int             (*fstyp_init)(int fd, off64_t offset,
+                       fstyp_mod_handle_t *handle);
+       void            (*fstyp_fini)(fstyp_mod_handle_t handle);
+       int             (*fstyp_ident)(fstyp_mod_handle_t handle);
+       int             (*fstyp_get_attr)(fstyp_mod_handle_t handle,
+                       nvlist_t **attr);
+       int             (*fstyp_dump)(fstyp_mod_handle_t handle,
+                       FILE *fout, FILE *ferr);
+} fstyp_ops_t;
+
+typedef struct fstyp_module {
+       struct fstyp_module *next;
+       char            fsname[FSTYPSZ + 1];
+       char            *pathname;      /* absolute module pathname */
+       void            *dl_handle;     /* can be NULL if not loaded */
+       fstyp_ops_t     ops;
+       fstyp_mod_handle_t mod_handle;
+} fstyp_module_t;
+
+struct fstyp_handle {
+       char            *libfs_dir;     /* directory to look for modules */
+       char            *module_dir;    /* specific module directory */
+       fstyp_module_t  *modules;       /* list of modules */
+       fstyp_module_t  *modules_tail;  /* last module in the list */
+       fstyp_module_t  *ident;         /* identified module */
+       int             fd;
+       off64_t         offset;
+       long            name_max;
+};
+
+#define        NELEM(a)        sizeof (a) / sizeof (*(a))
+
+/* local functions */
+static int     fstyp_ident_all(struct fstyp_handle *h, const char **ident);
+static int     fstyp_ident_one(struct fstyp_handle *h, const char *fsname,
+               const char **ident);
+static fstyp_module_t *fstyp_find_module_by_name(struct fstyp_handle *h,
+               const char *fsname);
+static int     fstyp_init_module(struct fstyp_handle *h,
+               char *mdir, char *fsname, fstyp_module_t **mpp);
+static void    fstyp_fini_module(struct fstyp_handle *h,
+               fstyp_module_t *mp);
+static int     fstyp_init_all_modules(struct fstyp_handle *h);
+static void    fstyp_fini_all_modules(struct fstyp_handle *h);
+static int     fstyp_load_module(struct fstyp_handle *h,
+               fstyp_module_t *mp);
+static void    fstyp_unload_module(struct fstyp_handle *h,
+               fstyp_module_t *);
+
+/*
+ * Locate and initialize all modules.
+ * If 'module_dir' is specified, only initialize module from this dir.
+ */
+int
+fstyp_init(int fd, off64_t offset, char *module_dir, fstyp_handle_t *handle)
+{
+       struct fstyp_handle *h;
+       int             error;
+
+       if ((h = calloc(1, sizeof (struct fstyp_handle))) == NULL) {
+               return (FSTYP_ERR_NOMEM);
+       }
+       if ((module_dir != NULL) &&
+           ((h->module_dir = strdup(module_dir)) == NULL)) {
+               free(h);
+               return (FSTYP_ERR_NOMEM);
+       }
+
+       h->fd = fd;
+       h->offset = offset;
+       h->libfs_dir = (char *)default_libfs_dir;
+
+       if ((h->name_max = pathconf(h->libfs_dir, _PC_NAME_MAX)) < 0) {
+               h->name_max = MAXNAMELEN;
+       }
+       h->name_max++;
+
+       if (h->module_dir == NULL) {
+               error = fstyp_init_all_modules(h);
+       } else {
+               error = fstyp_init_module(h, h->module_dir, "", NULL);
+       }
+       if (error != 0) {
+               fstyp_fini(h);
+               return (error);
+       }
+
+       *handle = h;
+       return (0);
+}
+
+void
+fstyp_fini(struct fstyp_handle *h)
+{
+       if (h != NULL) {
+               fstyp_fini_all_modules(h);
+               if (h->module_dir != NULL) {
+                       free(h->module_dir);
+               }
+               free(h);
+       }
+}
+
+/*
+ * Identify the filesystem, return result in 'ident'.
+ * If 'fsname' is specified, only attempt that filesystem.
+ */
+int
+fstyp_ident(struct fstyp_handle *h, const char *fsname, const char **ident)
+{
+       if (fsname == NULL) {
+               return (fstyp_ident_all(h, ident));
+       } else {
+               return (fstyp_ident_one(h, fsname, ident));
+       }
+}
+
+/*
+ * use all modules for identification
+ */
+static int
+fstyp_ident_all(struct fstyp_handle *h, const char **ident)
+{
+       fstyp_module_t  *mp;
+
+       if (h->ident != NULL) {
+               *ident = &h->ident->fsname[0];
+               return (0);
+       }
+
+       for (mp = h->modules; mp != NULL; mp = mp->next) {
+               if ((fstyp_load_module(h, mp) == 0) &&
+                   (mp->ops.fstyp_ident(mp->mod_handle) == 0)) {
+                       if (h->ident != NULL) {
+                               h->ident = NULL;
+                               *ident = NULL;
+                               return (FSTYP_ERR_MULT_MATCH);
+                       } else {
+                               h->ident = mp;
+                               *ident = &mp->fsname[0];
+                               return (0);
+                       }
+               }
+       }
+       return (FSTYP_ERR_NO_MATCH);
+}
+
+/*
+ * use only the specified module for identification
+ */
+static int
+fstyp_ident_one(struct fstyp_handle *h, const char *fsname, const char **ident)
+{
+       fstyp_module_t  *mp;
+       int             error = FSTYP_ERR_NO_MATCH;
+
+       if (h->ident != NULL) {
+               if (strcmp(h->ident->fsname, fsname) == 0) {
+                       *ident = (char *)fsname;
+                       return (0);
+               } else {
+                       return (FSTYP_ERR_NO_MATCH);
+               }
+       }
+
+       if (strlen(fsname) > FSTYPSZ) {
+               return (FSTYP_ERR_NAME_TOO_LONG);
+       }
+       if (h->module_dir == NULL) {
+               mp = fstyp_find_module_by_name(h, fsname);
+       } else {
+               mp = h->modules;
+       }
+       if (mp == NULL) {
+               return (FSTYP_ERR_MOD_NOT_FOUND);
+       }
+
+       if (((error = fstyp_load_module(h, mp)) == 0) &&
+           ((error = mp->ops.fstyp_ident(mp->mod_handle)) == 0)) {
+               h->ident = mp;
+               *ident = (char *)fsname;
+               return (0);
+       }
+       return (error);
+}
+
+/*
+ * Get the list of fs attributes.
+ */
+int
+fstyp_get_attr(struct fstyp_handle *h, nvlist_t **attr)
+{
+       fstyp_module_t  *mp = h->ident;
+
+       if (mp == NULL) {
+               return (FSTYP_ERR_NO_MATCH);
+       }
+
+       return (mp->ops.fstyp_get_attr(mp->mod_handle, attr));
+}
+
+/*
+ * Dump free-form filesystem information.
+ */
+int
+fstyp_dump(struct fstyp_handle *h, FILE *fout, FILE *ferr)
+{
+       fstyp_module_t  *mp = h->ident;
+
+       if (mp == NULL) {
+               return (FSTYP_ERR_NO_MATCH);
+       }
+
+       if (mp->ops.fstyp_dump == NULL) {
+               return (FSTYP_ERR_NOP);
+       }
+
+       return (mp->ops.fstyp_dump(mp->mod_handle, fout, ferr));
+}
+
+/* ARGSUSED */
+const char *
+fstyp_strerror(struct fstyp_handle *h, int error)
+{
+       char *str;
+
+       switch (error) {
+       case FSTYP_ERR_OK:
+               str = dgettext(TEXT_DOMAIN, "success");
+               break;
+       case FSTYP_ERR_NO_MATCH:
+               str = dgettext(TEXT_DOMAIN, "no matches");
+               break;
+       case FSTYP_ERR_MULT_MATCH:
+               str = dgettext(TEXT_DOMAIN, "multiple matches");
+               break;
+       case FSTYP_ERR_HANDLE:
+               str = dgettext(TEXT_DOMAIN, "invalid handle");
+               break;
+       case FSTYP_ERR_OFFSET:
+               str = dgettext(TEXT_DOMAIN, "invalid or unsupported offset");
+               break;
+       case FSTYP_ERR_NO_PARTITION:
+               str = dgettext(TEXT_DOMAIN, "partition not found");
+               break;
+       case FSTYP_ERR_NOP:
+               str = dgettext(TEXT_DOMAIN, "no such operation");
+               break;
+       case FSTYP_ERR_DEV_OPEN:
+               str = dgettext(TEXT_DOMAIN, "cannot open device");
+               break;
+       case FSTYP_ERR_IO:
+               str = dgettext(TEXT_DOMAIN, "i/o error");
+               break;
+       case FSTYP_ERR_NOMEM:
+               str = dgettext(TEXT_DOMAIN, "out of memory");
+               break;
+       case FSTYP_ERR_MOD_NOT_FOUND:
+               str = dgettext(TEXT_DOMAIN, "module not found");
+               break;
+       case FSTYP_ERR_MOD_DIR_OPEN:
+               str = dgettext(TEXT_DOMAIN, "cannot open module directory");
+               break;
+       case FSTYP_ERR_MOD_OPEN:
+               str = dgettext(TEXT_DOMAIN, "cannot open module");
+               break;
+       case FSTYP_ERR_MOD_VERSION:
+               str = dgettext(TEXT_DOMAIN, "invalid module version");
+               break;
+       case FSTYP_ERR_MOD_INVALID:
+               str = dgettext(TEXT_DOMAIN, "invalid module");
+               break;
+       case FSTYP_ERR_NAME_TOO_LONG:
+               str = dgettext(TEXT_DOMAIN, "filesystem name too long");
+               break;
+       default:
+               str = dgettext(TEXT_DOMAIN, "undefined error");
+               break;
+       }
+
+       return (str);
+}
+
+
+static fstyp_module_t *
+fstyp_find_module_by_name(struct fstyp_handle *h, const char *fsname)
+{
+       fstyp_module_t  *mp;
+
+       for (mp = h->modules; mp != NULL; mp = mp->next) {
+               if (strcmp(mp->fsname, fsname) == 0) {
+                       return (mp);
+               }
+       }
+       return (NULL);
+}
+
+/*
+ * Allocate and initialize module structure. Do not load just yet.
+ * A pointer to the existing module is returned, if such is found.
+ */
+static int
+fstyp_init_module(struct fstyp_handle *h, char *mdir, char *fsname,
+    fstyp_module_t **mpp)
+{
+       char            *pathname;
+       struct stat     sb;
+       fstyp_module_t  *mp;
+
+       /* if it's already inited, just return the pointer */
+       if ((mp = fstyp_find_module_by_name(h, fsname)) != NULL) {
+               if (mpp != NULL) {
+                       *mpp = mp;
+               }
+               return (0);
+       }
+
+       /* allocate pathname buffer */
+       if ((pathname = calloc(1, h->name_max)) == NULL) {
+               return (FSTYP_ERR_NOMEM);
+       }
+
+       /* locate module */
+       (void) snprintf(pathname, h->name_max, "%s/fstyp.so.%d", mdir,
+           FSTYP_VERSION);
+       if (stat(pathname, &sb) < 0) {
+               return (FSTYP_ERR_MOD_NOT_FOUND);
+       }
+
+       if ((mp = calloc(1, sizeof (fstyp_module_t))) == NULL) {
+               free(pathname);
+               return (FSTYP_ERR_NOMEM);
+       }
+
+       mp->pathname = pathname;
+       (void) strlcpy(mp->fsname, fsname, sizeof (mp->fsname));
+
+       /* append to list */
+       if (h->modules_tail == NULL) {
+               h->modules = h->modules_tail = mp;
+       } else {
+               h->modules_tail->next = mp;
+               h->modules_tail = mp;
+       }
+
+       if (mpp != NULL) {
+               *mpp = mp;
+       }
+       return (0);
+}
+
+/*
+ * Free module resources. NOTE: this does not update the module list.
+ */
+static void
+fstyp_fini_module(struct fstyp_handle *h, fstyp_module_t *mp)
+{
+       if (h->ident == mp) {
+               h->ident = NULL;
+       }
+       fstyp_unload_module(h, mp);
+       if (mp->pathname != NULL) {
+               free(mp->pathname);
+       }
+       free(mp);
+}
+
+/*
+ * Look for .so's and save them in the list.
+ */
+static int
+fstyp_init_all_modules(struct fstyp_handle *h)
+{
+       char            *mdir;
+       DIR             *dirp;
+       struct dirent   *dp_mem, *dp;
+
+       if ((mdir = calloc(1, h->name_max)) == NULL) {
+               return (FSTYP_ERR_NOMEM);
+       }
+       dp = dp_mem = calloc(1, sizeof (struct dirent) + h->name_max + 1);
+       if (dp == NULL) {
+               return (FSTYP_ERR_NOMEM);
+       }
+       if ((dirp = opendir(h->libfs_dir)) == NULL) {
+               free(mdir);
+               free(dp_mem);
+               return (FSTYP_ERR_MOD_DIR_OPEN);
+       }
+
+       while ((readdir_r(dirp, dp, &dp) == 0) && (dp != NULL)) {
+               if (dp->d_name[0] == '.') {
+                       continue;
+               }
+               (void) snprintf(mdir, h->name_max,
+                   "%s/%s", h->libfs_dir, dp->d_name);
+               (void) fstyp_init_module(h, mdir, dp->d_name, NULL);
+       }
+
+       free(mdir);
+       free(dp_mem);
+       (void) closedir(dirp);
+       return (0);
+}
+
+static void
+fstyp_fini_all_modules(struct fstyp_handle *h)
+{
+       fstyp_module_t  *mp, *mp_next;
+
+       for (mp = h->modules; mp != NULL; mp = mp_next) {
+               mp_next = mp->next;
+               fstyp_fini_module(h, mp);
+       }
+       h->modules = h->modules_tail = h->ident = NULL;
+}
+
+
+/*
+ * Load the .so module.
+ */
+static int
+fstyp_load_module(struct fstyp_handle *h, fstyp_module_t *mp)
+{
+       int     error;
+
+       if (mp->dl_handle != NULL) {
+               return (0);
+       }
+
+       if ((mp->dl_handle = dlopen(mp->pathname, RTLD_LAZY)) == NULL) {
+               return (FSTYP_ERR_MOD_OPEN);
+       }
+
+       mp->ops.fstyp_init = (int (*)(int, off64_t, fstyp_mod_handle_t *))
+           dlsym(mp->dl_handle, "fstyp_mod_init");
+       mp->ops.fstyp_fini = (void (*)(fstyp_mod_handle_t))
+           dlsym(mp->dl_handle, "fstyp_mod_fini");
+       mp->ops.fstyp_ident = (int (*)(fstyp_mod_handle_t))
+           dlsym(mp->dl_handle, "fstyp_mod_ident");
+       mp->ops.fstyp_get_attr = (int (*)(fstyp_mod_handle_t, nvlist_t **))
+           dlsym(mp->dl_handle, "fstyp_mod_get_attr");
+       mp->ops.fstyp_dump = (int (*)(fstyp_mod_handle_t, FILE *, FILE *))
+           dlsym(mp->dl_handle, "fstyp_mod_dump");
+
+       if (((mp->ops.fstyp_init) == NULL) ||
+           ((mp->ops.fstyp_fini) == NULL) ||
+           ((mp->ops.fstyp_ident) == NULL) ||
+           ((mp->ops.fstyp_get_attr) == NULL)) {
+               fstyp_unload_module(h, mp);
+               return (FSTYP_ERR_MOD_INVALID);
+       }
+
+       error = mp->ops.fstyp_init(h->fd, h->offset, &mp->mod_handle);
+       if (error != 0) {
+               fstyp_unload_module(h, mp);
+               return (error);
+       }
+
+       return (0);
+}
+
+/*ARGSUSED*/
+static void
+fstyp_unload_module(struct fstyp_handle *h, fstyp_module_t *mp)
+{
+       if (mp->mod_handle != NULL) {
+               mp->ops.fstyp_fini(mp->mod_handle);
+               mp->mod_handle = NULL;
+       }
+       if (mp->dl_handle != NULL) {
+               (void) dlclose(mp->dl_handle);
+               mp->dl_handle = NULL;
+       }
+}
Index: Dude/LIBFSTYP/1.0/Makefile.am
===================================================================
--- Dude/LIBFSTYP/1.0/Makefile.am       (revision 0)
+++ Dude/LIBFSTYP/1.0/Makefile.am       (revision 0)
@@ -0,0 +1,2 @@
+ACLOCAL_AMFLAGS = -I m4
+SUBDIRS = include src
Index: Dude/LIBFSTYP/1.0/Solaris/install.sh
===================================================================
--- Dude/LIBFSTYP/1.0/Solaris/install.sh        (revision 0)
+++ Dude/LIBFSTYP/1.0/Solaris/install.sh        (revision 0)
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+export SHELL="/bin/bash"
+export CONFIG_SHELL="/bin/bash"
+export MAKESHELL="/bin/bash"
+
+mkdir -p $DESTDIR${_libdir}
+mkdir -p $DESTDIR${_includedir}
+
+$MAKE install DESTDIR=$DESTDIR
+
+rm -f $DESTDIR${_libdir}/*.la $DESTDIR${_libdir}/*.a
Index: Dude/LIBFSTYP/1.0/Solaris/build.sh
===================================================================
--- Dude/LIBFSTYP/1.0/Solaris/build.sh  (revision 0)
+++ Dude/LIBFSTYP/1.0/Solaris/build.sh  (revision 0)
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+export SHELL="/bin/bash"
+export CONFIG_SHELL="/bin/bash"
+export MAKESHELL="/bin/bash"
+
+$MAKE
+
+# no -j here
Index: Dude/LIBFSTYP/1.0/Solaris/README.Solaris
===================================================================
--- Dude/LIBFSTYP/1.0/Solaris/README.Solaris    (revision 0)
+++ Dude/LIBFSTYP/1.0/Solaris/README.Solaris    (revision 0)
@@ -0,0 +1,10 @@
+It seems that Solaris 10u5 does not have libfstyp.  Stefan's
+port of HAL to Solaris 10 requires libfstyp.  So this is just
+libfstyp from the OpenSolaris source files:
+
+http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libfstyp/common/libfstyp.h
+http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libfstyp/common/libfstyp.c
+http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libfstyp/common/libfstyp_module.h
+
+Mark Wright
+<markwright at internode.on.net>
Index: Dude/LIBFSTYP/1.0/Solaris/patch.sh
===================================================================
--- Dude/LIBFSTYP/1.0/Solaris/patch.sh  (revision 0)
+++ Dude/LIBFSTYP/1.0/Solaris/patch.sh  (revision 0)
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+if [ -f Solaris/apply_patches ] ; then
+    /bin/bash Solaris/apply_patches
+fi
+

Property changes on: Dude/LIBFSTYP/1.0/Solaris/patch.sh
___________________________________________________________________
Name: svn:executable
   + *

Index: Dude/LIBFSTYP/1.0/Solaris/configure.sh
===================================================================
--- Dude/LIBFSTYP/1.0/Solaris/configure.sh      (revision 0)
+++ Dude/LIBFSTYP/1.0/Solaris/configure.sh      (revision 0)
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+export SHELL="/bin/bash"
+export CONFIG_SHELL="/bin/bash"
+export MAKESHELL="/bin/bash"
+export GCC="no"
+export M4="/opt/kdebld/bin/m4"
+
+build64bit=`echo $CXXFLAGS | grep -- '-m64'`
+if [ "x$build64bit" == "x" ] ; then
+    # To avoid this compiler error:
+    # "/usr/include/libelf.h", line 24: #error: "large files are not supported 
by libelf"
+    export CPPFLAGS=`echo $CPPFLAGS | sed -e 
"s/-D_FILE_OFFSET_BITS=64/-D_FILE_OFFSET_BITS=32/"`
+fi
+
+autoreconf --install --force
+./configure --prefix=$PREFIX \
+       --bindir=${_bindir} \
+       --datadir=${_datadir} \
+       --includedir=${_includedir} \
+       --infodir=${_infodir} \
+       --libdir=${_libdir} \
+       --libexecdir=${_libexecdir} \
+       --mandir=${_mandir} \
+       --sbindir=${_sbindir} \
+       --sysconfdir=${_sysconfdir} \
+       --localstatedir=/var \
+       --enable-shared \
+       --disable-static \
+       --disable-libtool-lock
+

Property changes on: Dude/LIBFSTYP/1.0/Solaris/configure.sh
___________________________________________________________________
Name: svn:executable
   + *

Index: Dude/LIBIDN/0.6.8/Solaris/install.sh
===================================================================
--- Dude/LIBIDN/0.6.8/Solaris/install.sh        (revision 2040)
+++ Dude/LIBIDN/0.6.8/Solaris/install.sh        (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
 rm -f $DESTDIR$_infodir/dir
 
Index: Dude/OPENLDAP/2.3.2/Solaris/install.sh
===================================================================
--- Dude/OPENLDAP/2.3.2/Solaris/install.sh      (revision 2040)
+++ Dude/OPENLDAP/2.3.2/Solaris/install.sh      (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
 
Index: Dude/OPENLDAP/2.3.2/Solaris/configure.sh
===================================================================
--- Dude/OPENLDAP/2.3.2/Solaris/configure.sh    (revision 2040)
+++ Dude/OPENLDAP/2.3.2/Solaris/configure.sh    (working copy)
@@ -31,6 +31,7 @@
        --with-tls \
         --enable-shared --disable-static --with-pic || exit 1
 
+find . -type f -name Makefile -exec egrep "SHELL.*=.*/bin/sh" {} \; -exec sed 
-i -e "s%SHELL.*=.*/bin/sh%SHELL = /bin/bash%" {} \;
 touch -r configure *
 touch -r configure `find . -name 'Make*'`
 
Index: Dude/LZO/2.02/Solaris/install.sh
===================================================================
--- Dude/LZO/2.02/Solaris/install.sh    (revision 2040)
+++ Dude/LZO/2.02/Solaris/install.sh    (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
 
Index: Dude/FREETYPE2/2.3.5/Solaris/install.sh
===================================================================
--- Dude/FREETYPE2/2.3.5/Solaris/install.sh     (revision 2040)
+++ Dude/FREETYPE2/2.3.5/Solaris/install.sh     (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR${_libdir}/lib*.a
 rm -rf $DESTDIR${_libdir}/*.la
 
 mkdir -p $DESTDIR${_includedir}/freetype2/freetype/internal
Index: Dude/GETTEXT/0.17/Solaris/install.sh
===================================================================
--- Dude/GETTEXT/0.17/Solaris/install.sh        (revision 2040)
+++ Dude/GETTEXT/0.17/Solaris/install.sh        (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
 rm -rf $DESTDIR$_datadir/info/dir
 rm -rf $DESTDIR$_libdir/charset*
Index: Dude/GETTEXT/0.17/Solaris/apply_patches
===================================================================
--- Dude/GETTEXT/0.17/Solaris/apply_patches     (revision 2040)
+++ Dude/GETTEXT/0.17/Solaris/apply_patches     (working copy)
@@ -1,5 +1,10 @@
 #!/bin/bash
 
+# libtool 2.2.4 requires a shell smarter than Bourne shell, like bash.
+# Attempting to use Bourne shell /bin/sh on Solaris 10u5 fails like:
+# pkgbuild: ../libtool: syntax error at line 659: `func_arith_result=$' 
unexpected
+find . -type f -name Makefile.in -exec egrep "SHELL.*=.*/bin/sh" {} \; -exec 
sed -i -e "s%SHELL.*=.*/bin/sh%SHELL = @sh...@%" {} \;
+
 for file in  \
     Makefile.am.diff \
     gettextP.h.0.diff \
Index: Dude/GPGME/1.1.5/Solaris/install.sh
===================================================================
--- Dude/GPGME/1.1.5/Solaris/install.sh (revision 2040)
+++ Dude/GPGME/1.1.5/Solaris/install.sh (working copy)
@@ -2,6 +2,7 @@
 $MAKE install DESTDIR=$DESTDIR
 rm -r $DESTDIR${_datadir}/common-lisp
 rm $DESTDIR${_infodir}/dir
+rm -rf $DESTDIR${_libdir}/lib*.a
 rm -rf $DESTDIR${_libdir}/lib*.la
 
 
Index: Dude/LIBTHEORA/1.0.A7/Solaris/install.sh
===================================================================
--- Dude/LIBTHEORA/1.0.A7/Solaris/install.sh    (revision 2040)
+++ Dude/LIBTHEORA/1.0.A7/Solaris/install.sh    (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/FAAD2/2.6.1/Solaris/install.sh
===================================================================
--- Dude/FAAD2/2.6.1/Solaris/install.sh (revision 2040)
+++ Dude/FAAD2/2.6.1/Solaris/install.sh (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/FAAD2/2.6.1/Solaris/diffs/configure.in.diff
===================================================================
--- Dude/FAAD2/2.6.1/Solaris/diffs/configure.in.diff    (revision 0)
+++ Dude/FAAD2/2.6.1/Solaris/diffs/configure.in.diff    (revision 0)
@@ -0,0 +1,11 @@
+--- 2.6.1.orig/configure.in    2008-03-08 07:35:07.115943000 +0000
++++ 2.6.1/configure.in 2008-05-28 01:02:45.194732627 +0000
+@@ -18,7 +18,7 @@
+ AC_PROG_CC
+ AC_PROG_CPP
+ dnl disable for mpeg4ip plugin
+-dnl AC_PROG_CXX
++AC_PROG_CXX
+ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ AC_PROG_MAKE_SET
Index: Dude/FAAD2/2.6.1/Solaris/apply_patches
===================================================================
--- Dude/FAAD2/2.6.1/Solaris/apply_patches      (revision 2040)
+++ Dude/FAAD2/2.6.1/Solaris/apply_patches      (working copy)
@@ -1,7 +1,8 @@
 #!/bin/bash
 
 for file in \
-    common.h.diff
+    common.h.diff \
+    configure.in.diff
 do
     echo "Applying patch $file."
     /usr/bin/gpatch -p1 < ./Solaris/diffs/$file || exit 1
Index: Dude/OPENEXR/1.6.1/Solaris/install.sh
===================================================================
--- Dude/OPENEXR/1.6.1/Solaris/install.sh       (revision 2040)
+++ Dude/OPENEXR/1.6.1/Solaris/install.sh       (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/LIBQUICKTIME/1.0.0/Solaris/install.sh
===================================================================
--- Dude/LIBQUICKTIME/1.0.0/Solaris/install.sh  (revision 2040)
+++ Dude/LIBQUICKTIME/1.0.0/Solaris/install.sh  (working copy)
@@ -1,4 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*.la
+rm -rf $DESTDIR$_libdir/libquicktime/lqt*.a
 rm -rf $DESTDIR$_libdir/libquicktime/lqt*.la
Index: Dude/LIBGPG-ERROR/1.5/Solaris/install.sh
===================================================================
--- Dude/LIBGPG-ERROR/1.5/Solaris/install.sh    (revision 2040)
+++ Dude/LIBGPG-ERROR/1.5/Solaris/install.sh    (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
 rm -rf $DESTDIR/$PREFIX/share/common-lisp
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/*.la
Index: Dude/FAM/2.7.0/Solaris/install.sh
===================================================================
--- Dude/FAM/2.7.0/Solaris/install.sh   (revision 2040)
+++ Dude/FAM/2.7.0/Solaris/install.sh   (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/FLAC/1.1.2/Solaris/install.sh
===================================================================
--- Dude/FLAC/1.1.2/Solaris/install.sh  (revision 2040)
+++ Dude/FLAC/1.1.2/Solaris/install.sh  (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/FLAC/1.1.2/Solaris/configure.sh
===================================================================
--- Dude/FLAC/1.1.2/Solaris/configure.sh        (revision 2040)
+++ Dude/FLAC/1.1.2/Solaris/configure.sh        (working copy)
@@ -7,6 +7,7 @@
 /usr/bin/dos2unix $file $file
 done
 
+export CONFIG_SHELL="/bin/bash"
 bash ./configure \
        --prefix=${PREFIX} \
        --bindir=${_bindir} \
Index: Dude/ID3LIB/3.8.3/Solaris/install.sh
===================================================================
--- Dude/ID3LIB/3.8.3/Solaris/install.sh        (revision 2040)
+++ Dude/ID3LIB/3.8.3/Solaris/install.sh        (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/LIBMNG/1.0.10/Solaris/install.sh
===================================================================
--- Dude/LIBMNG/1.0.10/Solaris/install.sh       (revision 2040)
+++ Dude/LIBMNG/1.0.10/Solaris/install.sh       (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm $DESTDIR$_libdir/lib*.a
 rm $DESTDIR$_libdir/*.la
 
Index: Dude/CAPSEO/0.3.0-158/Solaris/install.sh
===================================================================
--- Dude/CAPSEO/0.3.0-158/Solaris/install.sh    (revision 2040)
+++ Dude/CAPSEO/0.3.0-158/Solaris/install.sh    (working copy)
@@ -1,3 +1,4 @@
 #! /bin/sh
 $MAKE install DESTDIR=$DESTDIR || exit 1
+rm -f $DESTDIR/$_libdir/lib*.a
 rm -f $DESTDIR/$_libdir/*.la
Index: Dude/CAPSEO/0.3.0-158/Solaris/build.sh
===================================================================
--- Dude/CAPSEO/0.3.0-158/Solaris/build.sh      (revision 2040)
+++ Dude/CAPSEO/0.3.0-158/Solaris/build.sh      (working copy)
@@ -1,2 +1,3 @@
 #! /bin/sh
+X11_LIBS="-lX11"; export X11_LIBS
 $MAKE $MAKE_CPUS
Index: Dude/LAME/3.97/Solaris/install.sh
===================================================================
--- Dude/LAME/3.97/Solaris/install.sh   (revision 2040)
+++ Dude/LAME/3.97/Solaris/install.sh   (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/*.la
Index: Dude/NET-SNMP/5.4.1/Solaris/configure.sh
===================================================================
--- Dude/NET-SNMP/5.4.1/Solaris/configure.sh    (revision 2040)
+++ Dude/NET-SNMP/5.4.1/Solaris/configure.sh    (working copy)
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 
 SOLARISID="3"
 SYSCONTACT="kde-solaris at opensolaris.org"
@@ -82,3 +82,4 @@
        --with-logfile=/var/log/snmp/snmpd.log \
        --with-persistent-directory=/var/net-snmp
 
+find . -type f -name Makefile -exec egrep "SHELL.*=.*/bin/sh" {} \; -exec sed 
-i -e "s%SHELL.*=.*/bin/sh%SHELL = /bin/bash%" {} \;
Index: Dude/GNUPTH/2.0.7/Solaris/install.sh
===================================================================
--- Dude/GNUPTH/2.0.7/Solaris/install.sh        (revision 2040)
+++ Dude/GNUPTH/2.0.7/Solaris/install.sh        (working copy)
@@ -2,4 +2,5 @@
 $MAKE install DESTDIR=$DESTDIR
 rm -rf $DESTDIR/$PREFIX/share/common-lisp
 rm -rf $DESTDIR/$PREFIX/share/info/dir
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/*.la
Index: Dude/GNUPTH/2.0.7/Solaris/diffs/Makefile.in.0.diff
===================================================================
--- Dude/GNUPTH/2.0.7/Solaris/diffs/Makefile.in.0.diff  (revision 0)
+++ Dude/GNUPTH/2.0.7/Solaris/diffs/Makefile.in.0.diff  (revision 0)
@@ -0,0 +1,15 @@
+--- 2.0.7.orig/Makefile.in     2008-03-08 07:44:09.000000000 +0000
++++ 2.0.7/Makefile.in  2008-05-27 12:52:30.062603406 +0000
+@@ -168,10 +168,10 @@
+ 
+ #   build the static and possibly shared libraries
+ libpth.la: $(LOBJS)
+-      $(LIBTOOL) --mode=link --quiet $(CC) -o libpth.la $(LOBJS) \
++      $(LIBTOOL) --mode=link --quiet $(CC) $(CFLAGS) $(LDFLAGS) -o libpth.la 
$(LOBJS) \
+       -rpath $(libdir) -version-info `$(SHTOOL) version -lc -dlibtool 
$(_VERSION_FILE)`
+ libpthread.la: pthread.lo $(LOBJS)
+-      $(LIBTOOL) --mode=link --quiet $(CC) -o libpthread.la pthread.lo 
$(LOBJS) \
++      $(LIBTOOL) --mode=link --quiet $(CC) $(CFLAGS) $(LDFLAGS) -o 
libpthread.la pthread.lo $(LOBJS) \
+       -rpath $(libdir) -version-info `$(SHTOOL) version -lc -dlibtool 
$(_VERSION_FILE)`
+ 
+ #   build the manual pages
Index: Dude/LIBTASN1/1.2/Solaris/install.sh
===================================================================
--- Dude/LIBTASN1/1.2/Solaris/install.sh        (revision 2040)
+++ Dude/LIBTASN1/1.2/Solaris/install.sh        (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
 rm -f $DESTDIR/$_infodir/dir
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/SPECS/hal.pspc
===================================================================
--- Dude/SPECS/hal.pspc (revision 0)
+++ Dude/SPECS/hal.pspc (revision 0)
@@ -0,0 +1,112 @@
+%include foss.inc
+%include flags.inc
+
+%define src_name       hal
+%define src_ver                0.5.9.1
+%define src_url                http://hal.freedesktop.org/releases/
+%define site_url       http://www.freedesktop.org/wiki/Software/hal
+%define description    HAL ported to Solaris 10 by Stefan Teleman, see 
Solaris/README.Solaris.
+#
+%define build          KBEmake KBEsed FOSSexpat
+%define requires       %FOSSdbus_or_SUNWdbus %FOSSglib2_or_SUNWgnome_base_libs 
FOSSexpat FOSSkerberos5 FOSSnet-snmp FOSSlibfstyp
+%define conflicts      SUNWhal SFEhal
+%define _basedir       /
+%define _prefix                /usr
+%define _sysconfdir    /etc
+%define _localstatedir /var
+#
+%define CPPFLAGS       %CPPFLAGS_C
+%define LDFLAGS                %LDFLAGS_C
+%define LIBS           %LIBS_C
+
+%files
+%defattr (-, root, bin)
+%dir %attr (0755, root, bin) %{_bindir}
+%{_bindir}/hal-*
+%{_bindir}/lshal
+%dir %attr (0755, root, bin) %{_sbindir}
+%{_sbindir}/hald
+%dir %attr (0755, root, bin) %{_libdir}
+%{_libdir}/libhal*
+%dir %attr (0755, root, bin) %{_libdir}/hal
+%dir %attr (0755, root, bin) %{_libdir}/hal/scripts
+%{_libdir}/hal/scripts/*
+%{_libdir}/hal-*
+%{_libdir}/hald-*
+%dir %attr (0755, root, other) %{_libdir}/pkgconfig
+%{_libdir}/pkgconfig/*
+%dir %attr (0755, root, bin) %{_includedir}
+%dir %attr (0755, root, bin) %{_includedir}/hal
+%{_includedir}/hal/*
+%dir %attr (0755, root, sys) %{_datadir}
+%dir %attr (0755, root, sys) %{_datadir}/hal
+%dir %attr (0755, root, sys) %{_datadir}/hal/device-manager
+%{_datadir}/hal/device-manager/*
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi
+%{_datadir}/hal/fdi/fdi.dtd
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/information
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/information/10freedesktop
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/information/20thirdparty
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/policy
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/policy/10osvendor
+%{_datadir}/hal/fdi/policy/10osvendor/*
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/policy/20thirdparty
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/preprobe
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/preprobe/10osvendor
+%dir %attr (0755, root, sys) %{_datadir}/hal/fdi/preprobe/20thirdparty
+#
+%dir %attr (0755, root, sys) /usr
+%dir %attr (0775, root, root) /usr/etc
+%dir %attr (0775, root, root) /usr/etc/dbus-1
+/usr/etc/dbus-1/hal.conf
+#
+%dir %attr (0755, root, sys) %{_sysconfdir}
+%config %{_sysconfdir}/hal
+%dir %attr (0755, root, sys) %{_sysconfdir}/security
+%config %class (rbac) %attr (0644, root, sys) %{_sysconfdir}/security/auth_attr
+%config %class (rbac) %attr (0644, root, sys) %{_sysconfdir}/security/prof_attr
+#
+%dir %attr (0755, root, sys) %{_localstatedir}
+%dir %attr (0755, root, other) %{_localstatedir}/lib
+%dir %attr (0700, root, other) %{_localstatedir}/lib/hal
+%dir %attr (0755, root, other) %{_localstatedir}/cache
+%dir %attr (0755, root, other) %{_localstatedir}/cache/hald
+%dir %attr (0755, root, sys) /var/svc
+%dir %attr (0755, root, sys) /var/svc/manifest
+%dir %attr (0755, root, sys) /var/svc/manifest/system
+%class(manifest) %attr (0444, root, sys) /var/svc/manifest/system/hal.xml
+%attr (0555, root, bin) /lib/svc/method/svc-hal
+#
+%ifarch amd64 sparcv9
+%dir %attr (0755, root, bin) %{_bindir}/%_arch64
+%{_bindir}/%_arch64/hal-*
+%{_bindir}/%_arch64/lshal
+%dir %attr (0755, root, bin) %{_sbindir}/%_arch64
+%{_sbindir}/%_arch64/hald
+%dir %attr (0755, root, bin) %{_libdir}/%_arch64
+%{_libdir}/%_arch64/libhal*
+%dir %attr (0755, root, bin) %{_libdir}/%_arch64/hal
+%dir %attr (0755, root, bin) %{_libdir}/%_arch64/hal/scripts
+%{_libdir}/%_arch64/hal/scripts/*
+%{_libdir}/%_arch64/hal-*
+%{_libdir}/%_arch64/hald-*
+%dir %attr (0755, root, other) %{_libdir}/%_arch64/pkgconfig
+%{_libdir}/%_arch64/pkgconfig/*
+%endif
+
+%changelog
+* Thu May 30 2008 - markwright at internode.on.net
+- Initial version
+- There are a three scenarios:
+- (1) Nevada, then FOSShal is not built, Nevada has SUNWhal and SUNWdbus.
+- (2) Standard Solaris 10, with ancient GNOME 2.6.  Then there is
+- no SUNWdbus or SUNWhal, so FOSSdbus and FOSShal are used.  Currently
+- fails though as there is no dbus-glib-1 in FOSS, error is:
+- No package 'dbus-glib-1' found
+- (3) Since standard Solaris 10 GNOME 2.6 is ancient, developers
+- may build JDS from the OpenSolaris spec files.  In that
+- case, SUNWdbus is built from JDS, and we need to
+- build SUNWhal with SUNWdbus.  To do that, we need to place
+- -L/usr/lib (or -L/usr/lib/%_arch64) before -L/opt/foss/lib
+- (or -L/opt/foss/lib/%_arch64) so that JDS libdbus-1.0.so will find
+- libglib-2.0.so and libdbus-glib-1.so.2 in /usr/lib (or /usr/lib/%_arch64).
Index: Dude/SPECS/libcdio.pspc
===================================================================
--- Dude/SPECS/libcdio.pspc     (revision 2040)
+++ Dude/SPECS/libcdio.pspc     (working copy)
@@ -8,6 +8,7 @@
 %define description    The Compact Disc Input and Control library (libcdio) 
contains a library for CD-ROM and CD image access.
 %define build          KBEmake KBEsed FOSSstdcxx FOSSlibiconv FOSSgettext 
FOSSncurses FOSSvcdimagerwo
 %define require                FOSSstdcxx FOSSlibiconv FOSSgettext FOSSncurses 
FOSSvcdimagerwo
+%define conflicts      SFElibcdio
 #
 %define LD             %CXX
 # Remove -Xc from CFLAGS
@@ -51,6 +52,8 @@
 
 
 %changelog
+* Sat May 31 2008 - markwright at internode.on.net
+- Add conflict SFElibcdio
 * Sun Mar 23 2008 - oboril.lukas at gmail.com
 - Initial pspc
 
Index: Dude/SPECS/libcdiowo.pspc
===================================================================
--- Dude/SPECS/libcdiowo.pspc   (revision 2040)
+++ Dude/SPECS/libcdiowo.pspc   (working copy)
@@ -8,6 +8,7 @@
 %define description    INTERMEDIATE VERSION FOR CIRCULAR DEPENDENCY
 %define build          KBEmake KBEsed FOSSstdcxx FOSSlibiconv FOSSgettext 
FOSSncurses
 %define require                FOSSstdcxx FOSSlibiconv FOSSgettext FOSSncurses
+%define conflicts      SFElibcdio
 #
 %define LD             %CXX
 # Remove -Xc from CFLAGS
@@ -51,6 +52,8 @@
 
 
 %changelog
+* Sat May 31 2008 - markwright at internode.on.net
+- Add conflict SFElibcdio
 * Sun Mar 23 2008 - oboril.lukas at gmail.com
 - Initial pspc
 
Index: Dude/SPECS/include/foss.inc
===================================================================
--- Dude/SPECS/include/foss.inc (revision 2040)
+++ Dude/SPECS/include/foss.inc (working copy)
@@ -34,3 +34,14 @@
 #### OS ####
 %define is_nevada %(test `uname -r` = 5.11 && echo 1 || echo 0)
 %define is_s10    %(test `uname -r` = 5.10 && echo 1 || echo 0)
+%define with_SUNWdbus %(pkginfo -q SUNWdbus && echo 1 || echo 0)
+%define with_SUNWhal %(pkginfo -q SUNWhal && echo 1 || echo 0)
+%define with_FOSSdbus %(pkginfo -q FOSSdbus && echo 1 || echo 0)
+%define with_FOSShal %(pkginfo -q FOSShal && echo 1 || echo 0)
+%if %with_SUNWdbus
+%define FOSSdbus_or_SUNWdbus SUNWdbus
+%define FOSSglib2_or_SUNWgnome_base_libs SUNWgnome-base-libs
+%else
+%define FOSSdbus_or_SUNWdbus FOSSdbus
+%define FOSSglib2_or_SUNWgnome_base_libs FOSSglib2
+%endif
Index: Dude/SPECS/Makefile
===================================================================
--- Dude/SPECS/Makefile (revision 2040)
+++ Dude/SPECS/Makefile (working copy)
@@ -2,11 +2,34 @@
 # to specfiles, and then compiled with pkgtool).
 PSPC_FILES =   $(wildcard *.pspc)
 
-# On Nevada, we can skip dbus, since it's already there.
+# On Nevada, we can skip dbus and hal, since it's already there.
 # Simiarly, freeglut cannot compile because of GCC libraries.
 ifeq (5.11,$(shell uname -r))
-PSPC_FILES := $(filter-out dbus.pspc freeglut.pspc,$(PSPC_FILES))
+PSPC_FILES := $(filter-out dbus.pspc freeglut.pspc libfstyp.pspc 
hal.pspc,$(PSPC_FILES))
 endif
+# Filter out dbus.pspc on Solaris 10 where it has been built from the JDS 
source code.
+ifeq (GNOME2,$(shell pkginfo SUNWdbus | cut -f 1 -d' '))
+PSPC_FILES := $(filter-out dbus.pspc,$(PSPC_FILES))
+endif
+# Filter out hal.pspc on Solaris 10, as it needs to be built manually
+# at the moment, like:
+# perl Respect.pl --with-all --without-upload --without-build hal.pspc
+# cp -p FOSShal.spec SUNWhal.spec                        
+# sed -i -e "s/FOSShal/SUNWhal/g" SUNWhal.spec                        
+# pkgtool build SUNWhal.spec                                          
+# And then as root:
+# svcadm enable hal 
+ifeq (KCE,$(shell pkginfo SUNWhal | cut -f 1 -d' '))
+PSPC_FILES := $(filter-out hal.pspc,$(PSPC_FILES))
+endif
+# Filter out glib2.pspc on Solaris 10 where it has been built from the JDS 
source code.
+ifeq (GNOME2,$(shell pkginfo SUNWgnome-base-libs | cut -f 1 -d' '))
+PSPC_FILES := $(filter-out glib2.pspc,$(PSPC_FILES))
+endif
+# Filter out libcdio where SFElibcdio is installed
+ifeq (SFE,$(shell pkginfo SFElibcdio | cut -f 1 -d' '))
+PSPC_FILES := $(filter-out libcdio.pspc libcdiowo.pspc,$(PSPC_FILES))
+endif
 # PCIUTILS is doing weird inline assembly
 PSPC_FILES := $(filter-out pciutils.pspc,$(PSPC_FILES))
 # Finally, mesa is just broken.
Index: Dude/SPECS/jasper.pspc
===================================================================
--- Dude/SPECS/jasper.pspc      (revision 2040)
+++ Dude/SPECS/jasper.pspc      (working copy)
@@ -18,6 +18,7 @@
 %dir %attr (0755, root, bin) %{_bindir}
 %{_bindir}/img*
 %{_bindir}/jasper
+%{_bindir}/jiv
 %{_bindir}/*demo
 %dir %attr (0755, root, bin) %{_libdir}
 %{_libdir}/lib*.so*
@@ -39,5 +40,7 @@
 %endif
 
 %changelog
+* Sat May 31 2008 - markwright at internode.on.net
+- Add jiv
 * Sun Dec 16 2007 - oboril.lukas at gmail.com
 - Initial version
Index: Dude/SPECS/libfstyp.pspc
===================================================================
--- Dude/SPECS/libfstyp.pspc    (revision 0)
+++ Dude/SPECS/libfstyp.pspc    (revision 0)
@@ -0,0 +1,30 @@
+%include foss.inc
+%include flags.inc
+
+%define src_name        libfstyp
+%define src_ver         1.0
+%define src_url         
http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libfstyp/common/libfstyp.h
+%define site_url        http://opensolaris.org
+%define description     libfstyp from OpenSolaris
+%define build           KBEmake KBEsed
+#
+%define CPPFLAGS        %CPPFLAGS_C
+%define LDFLAGS         %LDFLAGS_C
+%define LIBS            %LIBS_C
+
+%files
+%defattr (-, root, bin)
+%dir %attr (0755, root, bin) %{_libdir}
+%{_libdir}/lib*.so*
+%dir %attr (0755, root, bin) %{_includedir}
+%{_includedir}/*
+%ifarch amd64 sparcv9
+%dir %attr (0755, root, bin) %{_libdir}/%_arch64
+%{_libdir}/%_arch64/lib*.so*
+%endif
+
+%changelog
+* Thu May 29 2008 - markwright at internode.on.net
+- Initial version
+
+goanna% 
Index: Dude/ASPELL/0.60.4/Solaris/install.sh
===================================================================
--- Dude/ASPELL/0.60.4/Solaris/install.sh       (revision 2040)
+++ Dude/ASPELL/0.60.4/Solaris/install.sh       (working copy)
@@ -2,5 +2,7 @@
 unset LD_LIBRARY_PATH
 $MAKE install DESTDIR=$DESTDIR
 rm -f $DESTDIR$_infodir/dir
+rm -f $DESTDIR$_libdir/lib[ap]spell.a
 rm -f $DESTDIR$_libdir/lib[ap]spell.la
+rm -f $DESTDIR$_libdir/aspell-0.60/lib*.a
 rm -f $DESTDIR$_libdir/aspell-0.60/*.la
Index: Dude/BERKELEY-DB/4.2.52/Solaris/install.sh
===================================================================
--- Dude/BERKELEY-DB/4.2.52/Solaris/install.sh  (revision 2040)
+++ Dude/BERKELEY-DB/4.2.52/Solaris/install.sh  (working copy)
@@ -3,4 +3,5 @@
 cd build_unix && make install DESTDIR=$DESTDIR
 mkdir -p $DESTDIR/${_datadir}/doc
 mv $DESTDIR/$PREFIX/docs $DESTDIR/${_docdir}/berkeley-db-4.2.52
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/lib*.la
Index: Dude/BERKELEY-DB/4.2.52/Solaris/patch.sh
===================================================================
--- Dude/BERKELEY-DB/4.2.52/Solaris/patch.sh    (revision 2040)
+++ Dude/BERKELEY-DB/4.2.52/Solaris/patch.sh    (working copy)
@@ -1,2 +1,2 @@
 #!/bin/sh
-:
+bash Solaris/apply_patches
Index: Dude/BERKELEY-DB/4.2.52/Solaris/configure.sh
===================================================================
--- Dude/BERKELEY-DB/4.2.52/Solaris/configure.sh        (revision 2040)
+++ Dude/BERKELEY-DB/4.2.52/Solaris/configure.sh        (working copy)
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 LIBS="$LIBS -lnsl"
 
 # ugly, but the fastest workaround for BDB libtool issue
@@ -7,7 +7,8 @@
 sed -e 's#^CC=\"\${CXX}\"#CC=\"/opt/SUNWspro/bin/CC\"#g' Solaris/libtool > 
Solaris/libtool.new && mv -f Solaris/libtool.new Solaris/libtool
 
 cd build_unix && \
-sh ../dist/configure \
+export CONFIG_SHELL=/usr/bin/bash
+bash ../dist/configure \
        --prefix=$PREFIX \
        --bindir=${_bindir} --sbindir=${_sbindir} --libdir=${_libdir} \
        --libdir=$_libdir \
Index: Dude/BERKELEY-DB/4.2.52/Solaris/apply_patches
===================================================================
--- Dude/BERKELEY-DB/4.2.52/Solaris/apply_patches       (revision 0)
+++ Dude/BERKELEY-DB/4.2.52/Solaris/apply_patches       (revision 0)
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+# libtool 2.2.4 requires a shell smarter than Bourne shell, like bash.
+# Attempting to use Bourne shell /bin/sh on Solaris 10u5 fails like:
+# pkgbuild: ../libtool: syntax error at line 659: `func_arith_result=$' 
unexpected
+sed -i -e "s%AC_CHECK_TOOL(path_sh, sh, missing_sh)%AC_CHECK_TOOL(path_sh, 
bash, missing_sh)%" ./dist/aclocal/programs.ac
+sed -i -e "s%shell.*...@db_cv_path_sh@%SHELL = /usr/bin/bash%" 
./dist/Makefile.in
+sed -i -e "s%SHELL.*=.*/usr/bin/sh%SHELL = /usr/bin/bash%" 
./build_unix/Makefile
+sed -i -e "s%/bin/sh%/bin/bash%g" ./dist/configure
+find ./dist/aclocal -type f -name \*.ac -exec egrep "/bin/sh" {} \; -exec sed 
-i -e "s%/bin/sh%/bin/bash%g" {} \;
Index: Dude/FAAC/1.25/Solaris/install.sh
===================================================================
--- Dude/FAAC/1.25/Solaris/install.sh   (revision 2040)
+++ Dude/FAAC/1.25/Solaris/install.sh   (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/FAAC/1.25/Solaris/configure.sh
===================================================================
--- Dude/FAAC/1.25/Solaris/configure.sh (revision 2040)
+++ Dude/FAAC/1.25/Solaris/configure.sh (working copy)
@@ -23,4 +23,5 @@
        --enable-shared \
        --disable-static
        
+find . -type f -name Makefile -exec egrep "SHELL.*=.*/bin/sh" {} \; -exec sed 
-i -e "s%SHELL.*=.*/bin/sh%SHELL = /bin/bash%" {} \;
 
Index: Dude/LIBVORBIS/1.1.2/Solaris/install.sh
===================================================================
--- Dude/LIBVORBIS/1.1.2/Solaris/install.sh     (revision 2040)
+++ Dude/LIBVORBIS/1.1.2/Solaris/install.sh     (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/LIBID3TAG/0.15.1B/Solaris/install.sh
===================================================================
--- Dude/LIBID3TAG/0.15.1B/Solaris/install.sh   (revision 2040)
+++ Dude/LIBID3TAG/0.15.1B/Solaris/install.sh   (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/LIBKSBA/1.0.2/Solaris/install.sh
===================================================================
--- Dude/LIBKSBA/1.0.2/Solaris/install.sh       (revision 2040)
+++ Dude/LIBKSBA/1.0.2/Solaris/install.sh       (working copy)
@@ -5,5 +5,6 @@
 
 $MAKE install DESTDIR=$DESTDIR
 rm -rf $DESTDIR/$PREFIX/share/common-lisp
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/*.la
 rm -f $DESTDIR$_infodir/dir
Index: Dude/IMLIB2/1.4.0/Solaris/install.sh
===================================================================
--- Dude/IMLIB2/1.4.0/Solaris/install.sh        (revision 2040)
+++ Dude/IMLIB2/1.4.0/Solaris/install.sh        (working copy)
@@ -1,7 +1,10 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
 
+rm ${DESTDIR}${_libdir}/lib*.a
 rm ${DESTDIR}${_libdir}/*.la
+rm ${DESTDIR}${_libdir}/imlib2/filters/lib*.a
 rm ${DESTDIR}${_libdir}/imlib2/filters/*.la
+rm ${DESTDIR}${_libdir}/imlib2/loaders/lib*.a
 rm ${DESTDIR}${_libdir}/imlib2/loaders/*.la
 
Index: Dude/LIBOTF/0.9.6/Solaris/install.sh
===================================================================
--- Dude/LIBOTF/0.9.6/Solaris/install.sh        (revision 2040)
+++ Dude/LIBOTF/0.9.6/Solaris/install.sh        (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR${_libdir}/lib*.a
 rm -f $DESTDIR${_libdir}/*.la
Index: Dude/LIBMAD/0.15.1B/Solaris/install.sh
===================================================================
--- Dude/LIBMAD/0.15.1B/Solaris/install.sh      (revision 2040)
+++ Dude/LIBMAD/0.15.1B/Solaris/install.sh      (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/LIBSHOUT/2.2.2/Solaris/install.sh
===================================================================
--- Dude/LIBSHOUT/2.2.2/Solaris/install.sh      (revision 2040)
+++ Dude/LIBSHOUT/2.2.2/Solaris/install.sh      (working copy)
@@ -1,5 +1,6 @@
 #!/bin/bash
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR${_libdir}/lib*.a
 rm -f $DESTDIR${_libdir}/*.la
 #is empty
 rm -rf $DESTDIR${_bindir}
Index: Dude/LIBDV/1.0.0/Solaris/install.sh
===================================================================
--- Dude/LIBDV/1.0.0/Solaris/install.sh (revision 2040)
+++ Dude/LIBDV/1.0.0/Solaris/install.sh (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 make install DESTDIR=$DESTDIR
+rm -rf $DESTDIR${_libdir}/lib*.a
 rm -rf $DESTDIR${_libdir}/*.la
Index: Dude/KBE/patch/libtool-01-bash.diff
===================================================================
--- Dude/KBE/patch/libtool-01-bash.diff (revision 0)
+++ Dude/KBE/patch/libtool-01-bash.diff (revision 0)
@@ -0,0 +1,8 @@
+--- libtool-2.2.4-orig/libtoolize.in   2008-05-02 19:28:08.000000000 +0000
++++ libtool-2.2.4/libtoolize.in        2008-05-24 02:43:38.942264847 +0000
+@@ -1,4 +1,4 @@
+-#! /bin/sh
++#! /bin/bash
+ # @configure_input@
+ 
+ # libtoolize (GNU @PACKAGE@@TIMESTAMP@) @VERSION@
Index: Dude/CURL/7.15.5/Solaris/install.sh
===================================================================
--- Dude/CURL/7.15.5/Solaris/install.sh (revision 2040)
+++ Dude/CURL/7.15.5/Solaris/install.sh (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
 rm -f $DESTDIR$_infodir/dir
 
Index: Dude/LIBCDIO/0.78.2/Solaris/install.sh
===================================================================
--- Dude/LIBCDIO/0.78.2/Solaris/install.sh      (revision 2040)
+++ Dude/LIBCDIO/0.78.2/Solaris/install.sh      (working copy)
@@ -7,5 +7,6 @@
 sed -e 's#--mode=relink#--tag=CC --mode=relink#g' 
lib/cdda_interface/libcdio_cdda.la > lib/cdda_interface/libcdio_cdda.la.tmp && 
mv -f lib/cdda_interface/libcdio_cdda.la.tmp lib/cdda_interface/libcdio_cdda.la
 
 $MAKE -i install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
 rm -f $DESTDIR$_infodir/dir
Index: Dude/CPPUNIT/1.12.0/Solaris/install.sh
===================================================================
--- Dude/CPPUNIT/1.12.0/Solaris/install.sh      (revision 2040)
+++ Dude/CPPUNIT/1.12.0/Solaris/install.sh      (working copy)
@@ -1,4 +1,5 @@
 #!/bin/bash
 make DESTDIR=$DESTDIR install
+rm -f $DESTDIR${_libdir}/lib*.a
 rm -f $DESTDIR${_libdir}/lib*.la
 
Index: Dude/SPEEX/1.1.12/Solaris/install.sh
===================================================================
--- Dude/SPEEX/1.1.12/Solaris/install.sh        (revision 2040)
+++ Dude/SPEEX/1.1.12/Solaris/install.sh        (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/LIBDAEMON/0.12/Solaris/install.sh
===================================================================
--- Dude/LIBDAEMON/0.12/Solaris/install.sh      (revision 2040)
+++ Dude/LIBDAEMON/0.12/Solaris/install.sh      (working copy)
@@ -1,3 +1,4 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
Index: Dude/GIFLIB/4.1.6/Solaris/install.sh
===================================================================
--- Dude/GIFLIB/4.1.6/Solaris/install.sh        (revision 2040)
+++ Dude/GIFLIB/4.1.6/Solaris/install.sh        (working copy)
@@ -1,4 +1,5 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm $DESTDIR$_libdir/libgif.a
 rm $DESTDIR$_libdir/libgif.la
 
Index: Dude/EXIV2/0.14/Solaris/diffs/Makefile.diff
===================================================================
--- Dude/EXIV2/0.14/Solaris/diffs/Makefile.diff (revision 2040)
+++ Dude/EXIV2/0.14/Solaris/diffs/Makefile.diff (working copy)
@@ -1,5 +1,5 @@
---- orig/src/Makefile  (revision 1074)
-+++ new/src/Makefile   (working copy)
+--- 0.14.orig/src/Makefile     2008-03-08 08:26:12.037771000 +0000
++++ 0.14/src/Makefile  2008-05-27 13:25:09.138220844 +0000
 @@ -182,7 +182,7 @@
  
  # Dependency files post-process commands
@@ -14,15 +14,16 @@
  # 
******************************************************************************
  # Rules
 -$(CCOBJ): %.o: %.cpp
+-      @$(LIBTOOL) --mode=compile $(COMPILE.cc) -o $@ $<
 +$(CCLOBJ): %.lo: %.cpp
-       @$(LIBTOOL) --mode=compile $(COMPILE.cc) -o $@ $<
++      @$(LIBTOOL) --mode=compile --tag=CXX $(COMPILE.cc) -o $@ $<
        @$(MAKEDEPEND)
        @$(POSTDEPEND)
  
 -$(COBJ): %.o: %.c
 -      @$(LIBTOOL) --mode=compile $(COMPILE.c) -o $@ $<
 +$(CLOBJ): %.lo: %.c
-+      @$(LIBTOOL) --mode=compile $(COMPILE.c)  -o $@ $<
++      @$(LIBTOOL) --mode=compile --tag=CC $(COMPILE.c)  -o $@ $<
        @$(MAKEDEPEND)
        @$(POSTDEPEND)
  
Index: Dude/DIRMNGR/1.0.1/Solaris/diffs/crlfetch.diff
===================================================================
--- Dude/DIRMNGR/1.0.1/Solaris/diffs/crlfetch.diff      (revision 0)
+++ Dude/DIRMNGR/1.0.1/Solaris/diffs/crlfetch.diff      (revision 0)
@@ -0,0 +1,13 @@
+Index: src/crlfetch.c
+===================================================================
+--- src/crlfetch.c     (revision 1512)
++++ src/crlfetch.c     (working copy)
+@@ -321,7 +321,7 @@
+ void
+ end_cert_fetch (cert_fetch_context_t context)
+ {
+-  return end_cert_fetch_ldap (context);
++  end_cert_fetch_ldap (context);
+ }
+ 
+ 
Index: Dude/DIRMNGR/1.0.1/Solaris/diffs/tests_Makefile_am.diff
===================================================================
--- Dude/DIRMNGR/1.0.1/Solaris/diffs/tests_Makefile_am.diff     (revision 0)
+++ Dude/DIRMNGR/1.0.1/Solaris/diffs/tests_Makefile_am.diff     (revision 0)
@@ -0,0 +1,13 @@
+Index: tests/Makefile.am
+===================================================================
+--- tests/Makefile.am  (revision 1517)
++++ tests/Makefile.am  (working copy)
+@@ -11,7 +11,7 @@
+ TESTS = 
+ 
+ noinst_PROGRAMS = test-dirmngr asschk show-multi percent-escape
+-LDADD = ../jnlib/libjnlib.a $(LIBASSUAN_LIBS) $(LIBGCRYPT_LIBS) $(KSBA_LIBS)
++LDADD = ../jnlib/libjnlib.a $(LIBASSUAN_LIBS) $(LIBGCRYPT_LIBS) $(KSBA_LIBS) 
$(LIBINTL) $(LIBICONV)
+ 
+ asschk_SOURCES = asschk.c
+ 
Index: Dude/DIRMNGR/1.0.1/Solaris/diffs/asschk.diff
===================================================================
--- Dude/DIRMNGR/1.0.1/Solaris/diffs/asschk.diff        (revision 0)
+++ Dude/DIRMNGR/1.0.1/Solaris/diffs/asschk.diff        (revision 0)
@@ -0,0 +1,22 @@
+Index: tests/asschk.c
+===================================================================
+--- tests/asschk.c     (revision 1517)
++++ tests/asschk.c     (working copy)
+@@ -188,7 +188,7 @@
+   exit (1);
+ }
+ 
+-#define die(format, args...) (die) ("%s: " format, __FUNCTION__ , ##args)
++// #define die(format, func, args...) (die)("%s: " format, __func__, ##args)
+ 
+ static void
+ err (const char *format, ...)
+@@ -288,7 +288,7 @@
+       if (opt_verbose)
+       {
+         int i;
+-        printf ("%s: read \"", __FUNCTION__);
++        printf ("%s: read \"", __func__);
+         for (i = 0; i < n; i ++)
+           putc (buf[i], stdout);
+         printf ("\"\n");
Index: Dude/DIRMNGR/1.0.1/Solaris/diffs/lib-prefix.diff
===================================================================
--- Dude/DIRMNGR/1.0.1/Solaris/diffs/lib-prefix.diff    (revision 0)
+++ Dude/DIRMNGR/1.0.1/Solaris/diffs/lib-prefix.diff    (revision 0)
@@ -0,0 +1,52 @@
+Index: m4/lib-prefix.m4
+===================================================================
+--- m4/lib-prefix.m4   (revision 1517)
++++ m4/lib-prefix.m4   (working copy)
+@@ -166,20 +166,33 @@
+   dnl pathname ends in /lib64, we assume a 64-bit ABI. Otherwise we use the
+   dnl default, namely "lib".
+   acl_libdirstem=lib
+-  searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 
's,^libraries: ,,p' | sed -e 's,^=,,'`
+-  if test -n "$searchpath"; then
+-    acl_save_IFS="${IFS=      }"; IFS=":"
+-    for searchdir in $searchpath; do
+-      if test -d "$searchdir"; then
+-        case "$searchdir" in
+-          */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
+-          *) searchdir=`cd "$searchdir" && pwd`
+-             case "$searchdir" in
+-               */lib64 ) acl_libdirstem=lib64 ;;
+-             esac ;;
+-        esac
++  case $host_os in
++    solaris*)
++    acl_lib_64_arch=`isainfo | cut -f1 -d' '`
++    for ld_flag in $LDFLAGS; do
++      if (test $ld_flag = "-m64" || test $ld_flag = "-Wl,-64"); then
++        acl_libdirstem="lib/$acl_lib_64_arch"
++        break
+       fi
+     done
+-    IFS="$acl_save_IFS"
+-  fi
++    ;;
++    *)
++    searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 
's,^libraries: ,,p' | sed -e 's,^=,,'`
++    if test -n "$searchpath"; then
++      acl_save_IFS="${IFS=    }"; IFS=":"
++      for searchdir in $searchpath; do
++        if test -d "$searchdir"; then
++          case "$searchdir" in
++            */lib64/ | */lib64 ) acl_libdirstem=lib64 ;;
++            *) searchdir=`cd "$searchdir" && pwd`
++               case "$searchdir" in
++                 */lib64 ) acl_libdirstem=lib64 ;;
++               esac ;;
++          esac
++        fi
++      done
++      IFS="$acl_save_IFS"
++    fi
++    ;;
++  esac
+ ])
Index: Dude/DIRMNGR/1.0.1/Solaris/diffs/src_Makefile_am.diff
===================================================================
--- Dude/DIRMNGR/1.0.1/Solaris/diffs/src_Makefile_am.diff       (revision 0)
+++ Dude/DIRMNGR/1.0.1/Solaris/diffs/src_Makefile_am.diff       (revision 0)
@@ -0,0 +1,26 @@
+Index: src/Makefile.am
+===================================================================
+--- src/Makefile.am    (revision 1517)
++++ src/Makefile.am    (working copy)
+@@ -47,7 +47,7 @@
+       validate.c validate.h exechelp.h exechelp.c get-path.c
+ 
+ dirmngr_LDADD = ../jnlib/libjnlib.a $(LIBOBJS) $(LIBASSUAN_PTH_LIBS)  \
+-      $(LIBGCRYPT_LIBS) $(KSBA_LIBS) $(PTH_LIBS) $(LIBINTL)
++      $(LIBGCRYPT_LIBS) $(KSBA_LIBS) $(PTH_LIBS) $(LIBINTL) $(LIBICONV)
+ 
+ if HAVE_W32_SYSTEM
+ ldap_url = ldap-url.h ldap-url.c
+@@ -60,10 +60,10 @@
+ dirmngr_ldap_CFLAGS = $(GPG_ERROR_CFLAGS)
+ dirmngr_ldap_LDFLAGS =
+ dirmngr_ldap_LDADD = $(ldap_ldadd) ../jnlib/libjnlib.a $(LIBOBJS) \
+-                   $(GPG_ERROR_LIBS) $(LDAPLIBS) $(LIBINTL)
++                   $(GPG_ERROR_LIBS) $(LDAPLIBS) $(LIBINTL) $(LIBICONV)
+ 
+ dirmngr_client_SOURCES = dirmngr-client.c i18n.h util.h b64enc.c \
+                          get-path.c no-libgcrypt.c no-libgcrypt.h 
+ dirmngr_client_LDADD = ../jnlib/libjnlib.a $(LIBOBJS) $(LIBASSUAN_LIBS) \
+-                     $(GPG_ERROR_LIBS) $(LIBINTL)
++                     $(GPG_ERROR_LIBS) $(LIBINTL) $(LIBICONV)
+ 
Index: Dude/DIRMNGR/1.0.1/Solaris/diffs/configure_ac.diff
===================================================================
--- Dude/DIRMNGR/1.0.1/Solaris/diffs/configure_ac.diff  (revision 0)
+++ Dude/DIRMNGR/1.0.1/Solaris/diffs/configure_ac.diff  (revision 0)
@@ -0,0 +1,13 @@
+Index: configure.ac
+===================================================================
+--- configure.ac       (revision 1517)
++++ configure.ac       (working copy)
+@@ -269,7 +269,7 @@
+ # guess-the-dependency by using something like ./configure
+ # LDAPLIBS="-Lfoo -lbar"
+ #
+-for MY_LDAPLIBS in ${LDAPLIBS+"$LDAPLIBS"} "-lldap" "-lldap -llber" "-lldap 
-llber -lresolv" "-lwldap32"; do
++for MY_LDAPLIBS in ${LDAPLIBS+"$LDAPLIBS"} "-lldap -llber" "-lldap" "-lldap 
-llber -lresolv" "-lwldap32"; do
+     _ldap_save_libs=$LIBS
+     LIBS="$MY_LDAPLIBS $NETLIBS $LIBS"
+ 
Index: Dude/A52DEC/0.7.4/Solaris/install.sh
===================================================================
--- Dude/A52DEC/0.7.4/Solaris/install.sh        (revision 2040)
+++ Dude/A52DEC/0.7.4/Solaris/install.sh        (working copy)
@@ -1,3 +1,4 @@
 #! /bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
Index: Dude/HAL/0.5.9.1/Solaris/install.sh
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/install.sh (revision 2040)
+++ Dude/HAL/0.5.9.1/Solaris/install.sh (working copy)
@@ -6,9 +6,21 @@
 
 mkdir -p $DESTDIR${_libdir}
 mkdir -p $DESTDIR${_includedir}
-mkdir -p $DESTDIR${_docdir}
 
 $MAKE install DESTDIR=$DESTDIR
 
 rm -f $DESTDIR${_libdir}/*.la $DESTDIR${_libdir}/*.a
+rm -rf $DESTDIR/tmp
 
+# try to provide SMF service
+mkdir -p $DESTDIR/etc/security
+echo 'solaris.smf.manage.hal:::Manage HAL Service 
States::help=SmfHALStates.html' > $DESTDIR/etc/security/auth_attr
+echo 'HAL Management:::Manage HAL SMF 
service:auths=solaris.smf.manage.hal;help=RtHALMngmnt.html' > 
$DESTDIR/etc/security/prof_attr
+
+# prepare files for SMF
+mkdir -p $DESTDIR/var/svc/manifest/system
+chmod -R 755 $DESTDIR/var/svc
+cp Solaris/smf/hal.xml $DESTDIR/var/svc/manifest/system/
+mkdir -p $DESTDIR/lib/svc/method
+chmod -R 755 $DESTDIR/lib
+cp Solaris/smf/svc-hal $DESTDIR/lib/svc/method/
Index: Dude/HAL/0.5.9.1/Solaris/smf/hal.xml
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/smf/hal.xml        (revision 2040)
+++ Dude/HAL/0.5.9.1/Solaris/smf/hal.xml        (working copy)
@@ -46,7 +46,7 @@
                type='service'
                grouping='require_all'
                restart_on='none'>
-                <service_fmri value='svc:/network/dbus:default' />
+                <service_fmri value='svc:/system/dbus:default' />
        </dependency>
 
        <exec_method
Index: Dude/HAL/0.5.9.1/Solaris/smf/svc-hal
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/smf/svc-hal        (revision 2040)
+++ Dude/HAL/0.5.9.1/Solaris/smf/svc-hal        (working copy)
@@ -14,13 +14,16 @@
 
 case "$1" in
 'start')
-       [ ! -x /opt/foss/sbin/hald ] && exit $SMF_EXIT_ERR_CONFIG
+       if [ ! -d /tmp/.sockets ]; then
+               mkdir -p /tmp/.sockets
+       fi
+       [ ! -x /usr/sbin/hald ] && exit $SMF_EXIT_ERR_CONFIG
 
        [ ! -d /var/run/hald ] && /usr/bin/mkdir -m 755 /var/run/hald
        [ ! -d /media ] && /usr/bin/mkdir -m 0777 /media
         /usr/bin/chmod +t /media
 
-       /opt/foss/sbin/hald --daemon=yes --retain-privileges --use-syslog &
+       /usr/sbin/hald --daemon=yes --retain-privileges --use-syslog &
        err=$?
        if [ $err -ne 0 ]; then
                echo "hal failed to start: error $err"
Index: Dude/HAL/0.5.9.1/Solaris/configure.sh
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/configure.sh       (revision 2040)
+++ Dude/HAL/0.5.9.1/Solaris/configure.sh       (working copy)
@@ -6,6 +6,31 @@
 export GCC="no"
 export M4="/opt/kdebld/bin/m4"
 
+if (`pkginfo -q SUNWdbus`)
+then
+    export LDFLAGS="-L${_libdir} -R${_libdir} $LDFLAGS"
+    export CFLAGS="-L${_libdir} -R${_libdir} $CFLAGS"
+    export CXXFLAGS="-L${_libdir} -R${_libdir} $CXXFLAGS"
+fi
+
+build64bit=`echo $CXXFLAGS | grep -- '-m64'`
+if [ "x$build64bit" != "x" ] ; then
+    # Change the -L/opt/foss/lib at the end to -L/opt/foss/lib/amd64.
+    export LDFLAGS=`echo $LDFLAGS | $KBE_PREFIX/bin/sed -e 
"s%\(-[LR]/.*/lib\)\([^/]\|$\)%\1/$_arch\2%g"`
+    export CFLAGS=`echo $CFLAGS | $KBE_PREFIX/bin/sed -e 
"s%\(-[LR]/.*/lib\)\([^/]\|$\)%\1/$_arch\2%g"`
+    export CXXFLAGS=`echo $CXXFLAGS | $KBE_PREFIX/bin/sed -e 
"s%\(-[LR]/.*/lib\)\([^/]\|$\)%\1/$_arch\2%g"`
+    if (`which libusb-config`); then
+        # On Solaris 10u5, config finds /usr/sfw/bin/libusb-config.
+        # /usr/sfw/bin/libusb-config --libs
+        # result includes -L/usr/sfw/lib, which breaks the link.
+        # Another issue is there is no /usr/sfw/lib/amd64/libusb.so.
+        # Anyway, change the -L/usr/sfw/lib to -L/usr/sfw/lib/amd64.
+        cp -p `which libusb-config` .
+        export LIBUSB_CONFIG="$PWD/libusb-config"
+        $KBE_PREFIX/bin/sed -i -e 
"s%\(-[LR]/.*/lib\)\([^/]\|$\)%\1/$_arch\2%g" $PWD/libusb-config
+    fi
+fi
+
 chmod 0755 configure
 
 ./configure --prefix=$PREFIX \
@@ -31,7 +56,21 @@
         --with-socket-dir=/tmp/.sockets \
         --with-hal-user=hald \
         --with-hal-group=hald \
-        --with-expat=$PREFIX \
+        --with-expat=/opt/foss \
         --with-backend=solaris \
-        --with-dbus-sys=$PREFIX/etc/dbus-1
+        --with-dbus-sys=$PREFIX/etc/dbus-1 \
+        --disable-man-pages \
+        --disable-gtk-doc
 
+# Change every occurance of -L -R in **/Makefile that does not
+# ends in lib to instead end in lib/$_arch.
+if [ "x$build64bit" != "x" ] ; then
+    find . -type f -name Makefile -exec $KBE_PREFIX/bin/sed -i -e 
"s%\(-[LR]/.*/lib\)\([^/]\|$\)%\1/$_arch\2%g" {} \;
+fi
+
+# make in po goes into an infinite loop on my box, disable
+# it for the moment to workaround this, since I do not know
+# why it is looping.  Also that is the only reason I added
+# --disable-man-pages --disable-gtk-doc.
+$KBE_PREFIX/bin/sed -i -e "s/ po //" Makefile
+$KBE_PREFIX/bin/sed -i -e "s/ docprivileges//" Makefile
Index: Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.Makefile.am.diff
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.Makefile.am.diff        
(revision 0)
+++ Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.Makefile.am.diff        
(revision 0)
@@ -0,0 +1,32 @@
+--- 0.5.9.1.orig/hald/solaris/probing/Makefile.am      2008-04-26 
05:46:53.542119000 +0000
++++ 0.5.9.1/hald/solaris/probing/Makefile.am   2008-05-30 12:05:01.543715047 
+0000
+@@ -1,6 +1,6 @@
+ 
+-NETSNMP_CFLAGS = `$(bindir)/net-snmp-config --cflags`
+-NETSNMP_LIBS = `$(bindir)/net-snmp-config --libs`
++NETSNMP_CFLAGS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --cflags`
++NETSNMP_LIBS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --libs`
+ 
+ INCLUDES = \
+       -DPACKAGE_SYSCONF_DIR=\""$(sysconfdir)"\" \
+@@ -15,16 +15,16 @@
+ 
+ hald_probe_storage_SOURCES = probe-storage.c cdutils.c cdutils.h fsutils.c 
fsutils.h ../../logger.c
+ hald_probe_storage_LDADD = $(top_builddir)/libhal/libhal.la @GLIB_LIBS@ -ladm 
-lefi
+-hald_probe_storage_CFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
++hald_probe_storage_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64
+ 
+ hald_probe_volume_SOURCES = probe-volume.c cdutils.c cdutils.h fsutils.c 
fsutils.h ../../logger.c 
+ hald_probe_volume_LDADD = $(top_builddir)/libhal/libhal.la @GLIB_LIBS@ 
-lfstyp -lnvpair -ladm -lefi
+-hald_probe_volume_CFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
++hald_probe_volume_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+ hald_probe_network_printer_SOURCES = probe-network-printer.c probe-snmp.c 
printer.c ../../logger.c
+ hald_probe_network_printer_LDADD = $(top_builddir)/libhal/libhal.la 
@GLIB_LIBS@ -lfstyp -lnvpair -ladm -lefi
+ hald_probe_network_printer_LDFLAGS = $(NETSNMP_LIBS)
+-hald_probe_network_printer_CFLAGS = -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 @GLIB_CFLAGS@ @DBUS_CFLAGS@ $(NETSNMP_CFLAGS)
++hald_probe_network_printer_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 @GLIB_CFLAGS@ @DBUS_CFLAGS@ $(NETSNMP_CFLAGS)
+ hald_probe_printer_SOURCES = printer.c probe-printer.c ../../logger.c
+ hald_probe_printer_LDADD = $(top_builddir)/libhal/libhal.la @GLIB_LIBS@ 
@DBUS_LIBS@ -lfstyp -lnvpair -ladm -lefi
+-hald_probe_printer_CFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
++hald_probe_printer_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64
+ 
Index: Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.addons.Makefile.in.diff
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.addons.Makefile.in.diff 
(revision 0)
+++ Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.addons.Makefile.in.diff 
(revision 0)
@@ -0,0 +1,13 @@
+--- 0.5.9.1.orig/hald/solaris/addons/Makefile.in       2008-04-26 
05:46:53.914669000 +0000
++++ 0.5.9.1/hald/solaris/addons/Makefile.in    2008-05-30 12:09:48.077822893 
+0000
+@@ -262,8 +262,8 @@
+ target_alias = @target_alias@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-NETSNMP_CFLAGS = `$(bindir)/net-snmp-config --cflags`
+-NETSNMP_LIBS = `$(bindir)/net-snmp-config --libs`
++NETSNMP_CFLAGS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --cflags`
++NETSNMP_LIBS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --libs`
+ INCLUDES = \
+       -DPACKAGE_SYSCONF_DIR=\""$(sysconfdir)"\" \
+       -DPACKAGE_DATA_DIR=\""$(datadir)"\" \
Index: Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.battery.c.diff
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.battery.c.diff  
(revision 0)
+++ Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.battery.c.diff  
(revision 0)
@@ -0,0 +1,74 @@
+--- 0.5.9.1.orig/hald/solaris/probing/battery.c        2008-04-26 
05:46:53.527561000 +0000
++++ 0.5.9.1/hald/solaris/probing/battery.c     2008-05-30 06:14:37.635575073 
+0000
+@@ -47,9 +47,13 @@
+       DBusError error;
+ 
+       HAL_DEBUG(("ac_adapter_present() enter"));
++#ifdef BATT_IOC_POWER_STATUS
+       if (ioctl(fd, BATT_IOC_POWER_STATUS, &pow) < 0) {
+               return;
+       }
++#else
++        pow = 1;
++#endif
+       if ((cs = libhal_device_new_changeset(udi)) == NULL) {
+               return;
+       }
+@@ -167,6 +171,7 @@
+ static void
+ battery_last_full(LibHalChangeSet *cs, int fd)
+ {
++#ifdef BATT_IOC_INFO
+       acpi_bif_t bif;
+ 
+       bzero(&bif, sizeof (bif));
+@@ -175,11 +180,13 @@
+       }
+       libhal_changeset_set_property_int(cs, "battery.reporting_last_full",
+           bif.bif_last_cap);
++#endif
+ }
+ 
+ static void
+ battery_dynamic_update(LibHalContext *ctx, const char *udi, int fd)
+ {
++#ifdef BATT_IOC_STATUS
+       int reporting_rate;
+       int reporting_current;
+       int reporting_lastfull;
+@@ -340,11 +347,13 @@
+       libhal_free_string(reporting_unit);
+       my_dbus_error_free(&error);
+       HAL_DEBUG(("battery_dynamic_update() exit"));
++#endif
+ }
+ 
+ static gboolean
+ battery_static_update(LibHalContext *ctx, const char *udi, int fd)
+ {
++#ifdef BATT_IOC_INFO
+       const char *technology;
+       int reporting_design;
+       int reporting_warning;
+@@ -454,11 +463,13 @@
+       my_dbus_error_free(&error);
+       HAL_DEBUG(("battery_static_update() exit"));
+       return (TRUE);
++#endif
+ }
+ 
+ gboolean
+ battery_update(LibHalContext *ctx, const char *udi, int fd)
+ {
++#ifdef BATT_IOC_STATUS
+       acpi_bst_t bst;
+       DBusError error;
+ 
+@@ -508,6 +519,7 @@
+       my_dbus_error_free(&error);
+       HAL_DEBUG(("battery_update() exit"));
+       return (TRUE);
++#endif        
+ }
+ 
+ static gboolean
Index: Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.addons.Makefile.am.diff
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.addons.Makefile.am.diff 
(revision 0)
+++ Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.addons.Makefile.am.diff 
(revision 0)
@@ -0,0 +1,11 @@
+--- 0.5.9.1.orig/hald/solaris/addons/Makefile.am       2008-04-26 
05:46:53.921308000 +0000
++++ 0.5.9.1/hald/solaris/addons/Makefile.am    2008-05-30 12:06:27.681670060 
+0000
+@@ -1,6 +1,6 @@
+ 
+-NETSNMP_CFLAGS = `$(bindir)/net-snmp-config --cflags`
+-NETSNMP_LIBS = `$(bindir)/net-snmp-config --libs`
++NETSNMP_CFLAGS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --cflags`
++NETSNMP_LIBS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --libs`
+ 
+ INCLUDES = \
+       -DPACKAGE_SYSCONF_DIR=\""$(sysconfdir)"\" \
Index: Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.Makefile.in.diff
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.Makefile.in.diff        
(revision 0)
+++ Dude/HAL/0.5.9.1/Solaris/diffs/hald.solaris.probing.Makefile.in.diff        
(revision 0)
@@ -0,0 +1,35 @@
+--- 0.5.9.1.orig/hald/solaris/probing/Makefile.in      2008-04-26 
05:46:53.519403000 +0000
++++ 0.5.9.1/hald/solaris/probing/Makefile.in   2008-05-30 12:05:58.257494813 
+0000
+@@ -284,8 +284,8 @@
+ target_alias = @target_alias@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-NETSNMP_CFLAGS = `$(bindir)/net-snmp-config --cflags`
+-NETSNMP_LIBS = `$(bindir)/net-snmp-config --libs`
++NETSNMP_CFLAGS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --cflags`
++NETSNMP_LIBS = `/opt/foss/bin$(_libsuffix)/net-snmp-config --libs`
+ INCLUDES = \
+       -DPACKAGE_SYSCONF_DIR=\""$(sysconfdir)"\" \
+       -DPACKAGE_DATA_DIR=\""$(datadir)"\" \
+@@ -297,17 +297,17 @@
+ 
+ hald_probe_storage_SOURCES = probe-storage.c cdutils.c cdutils.h fsutils.c 
fsutils.h ../../logger.c
+ hald_probe_storage_LDADD = $(top_builddir)/libhal/libhal.la @GLIB_LIBS@ -ladm 
-lefi
+-hald_probe_storage_CFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
++hald_probe_storage_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64
+ hald_probe_volume_SOURCES = probe-volume.c cdutils.c cdutils.h fsutils.c 
fsutils.h ../../logger.c 
+ hald_probe_volume_LDADD = $(top_builddir)/libhal/libhal.la @GLIB_LIBS@ 
-lfstyp -lnvpair -ladm -lefi
+-hald_probe_volume_CFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
++hald_probe_volume_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+ hald_probe_network_printer_SOURCES = probe-network-printer.c probe-snmp.c 
printer.c ../../logger.c
+ hald_probe_network_printer_LDADD = $(top_builddir)/libhal/libhal.la 
@GLIB_LIBS@ -lfstyp -lnvpair -ladm -lefi
+ hald_probe_network_printer_LDFLAGS = $(NETSNMP_LIBS)
+-hald_probe_network_printer_CFLAGS = -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 @GLIB_CFLAGS@ @DBUS_CFLAGS@ $(NETSNMP_CFLAGS)
++hald_probe_network_printer_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64 @GLIB_CFLAGS@ @DBUS_CFLAGS@ $(NETSNMP_CFLAGS)
+ hald_probe_printer_SOURCES = printer.c probe-printer.c ../../logger.c
+ hald_probe_printer_LDADD = $(top_builddir)/libhal/libhal.la @GLIB_LIBS@ 
@DBUS_LIBS@ -lfstyp -lnvpair -ladm -lefi
+-hald_probe_printer_CFLAGS = -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
++hald_probe_printer_CFLAGS = @CFLAGS@ -D_LARGEFILE_SOURCE 
-D_FILE_OFFSET_BITS=64
+ all: all-am
+ 
+ .SUFFIXES:
Index: Dude/HAL/0.5.9.1/Solaris/apply_patches
===================================================================
--- Dude/HAL/0.5.9.1/Solaris/apply_patches      (revision 0)
+++ Dude/HAL/0.5.9.1/Solaris/apply_patches      (revision 0)
@@ -0,0 +1,13 @@
+#!/bin/bash
+
+for file in  \
+    hald.solaris.addons.Makefile.am.diff \
+    hald.solaris.addons.Makefile.in.diff \
+    hald.solaris.probing.Makefile.am.diff \
+    hald.solaris.probing.Makefile.in.diff \
+    hald.solaris.probing.battery.c.diff
+do
+    echo "Applying patch $file."
+    /usr/bin/gpatch -p1 < ./Solaris/diffs/$file || exit 1
+done
+

Property changes on: Dude/HAL/0.5.9.1/Solaris/apply_patches
___________________________________________________________________
Name: svn:executable
   + *

Index: Dude/LIBICONV/1.11/Solaris/install.sh
===================================================================
--- Dude/LIBICONV/1.11/Solaris/install.sh       (revision 2040)
+++ Dude/LIBICONV/1.11/Solaris/install.sh       (working copy)
@@ -1,5 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -rf $DESTDIR$_libdir/lib*.a
 rm -rf $DESTDIR$_libdir/lib*la
 rm -rf $DESTDIR$_datadir/info/dir
 rm -rf $DESTDIR$_libdir/charset*
Index: Dude/LIBICONV/1.11/Solaris/patch.sh
===================================================================
--- Dude/LIBICONV/1.11/Solaris/patch.sh (revision 2040)
+++ Dude/LIBICONV/1.11/Solaris/patch.sh (working copy)
@@ -1,2 +1,2 @@
 #!/bin/sh
-:
+bash Solaris/apply_patches
Index: Dude/LIBICONV/1.11/Solaris/apply_patches
===================================================================
--- Dude/LIBICONV/1.11/Solaris/apply_patches    (revision 0)
+++ Dude/LIBICONV/1.11/Solaris/apply_patches    (revision 0)
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+# libtool 2.2.4 requires a shell smarter than Bourne shell, like bash.
+# Attempting to use Bourne shell /bin/sh on Solaris 10u5 fails like:
+# pkgbuild: ../libtool: syntax error at line 659: `func_arith_result=$' 
unexpected
+find . -type f -name Makefile.in -exec egrep "SHELL.*=.*/bin/sh" {} \; -exec 
sed -i -e "s%SHELL.*=.*/bin/sh%SHELL = @sh...@%" {} \;

Property changes on: Dude/LIBICONV/1.11/Solaris/apply_patches
___________________________________________________________________
Name: svn:executable
   + *

Index: Dude/CYRUS-SASL/2.1.21/Solaris/install.sh
===================================================================
--- Dude/CYRUS-SASL/2.1.21/Solaris/install.sh   (revision 2040)
+++ Dude/CYRUS-SASL/2.1.21/Solaris/install.sh   (working copy)
@@ -1,4 +1,6 @@
 #!/bin/sh
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR$_libdir/lib*.a
 rm -f $DESTDIR$_libdir/*.la
+rm -f $DESTDIR${_libdir}/sasl2/lib*.a
 rm -f $DESTDIR${_libdir}/sasl2/*.la
Index: Dude/FREEGLUT/2.4.0/Solaris/install.sh
===================================================================
--- Dude/FREEGLUT/2.4.0/Solaris/install.sh      (revision 2040)
+++ Dude/FREEGLUT/2.4.0/Solaris/install.sh      (working copy)
@@ -1,4 +1,5 @@
 #!/bin/bash
 $MAKE install DESTDIR=$DESTDIR
+rm -f $DESTDIR${_libdir}/lib*.a
 rm -f $DESTDIR${_libdir}/*.la
--
This message posted from opensolaris.org

Reply via email to