diff --git a/nativeLib/decrypt_file/.cproject b/nativeLib/decrypt_file/.cproject
new file mode 100644
index 0000000000..d6bbd1d5d4
--- /dev/null
+++ b/nativeLib/decrypt_file/.cproject
@@ -0,0 +1,608 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nativeLib/decrypt_file/.project b/nativeLib/decrypt_file/.project
new file mode 100644
index 0000000000..fde349a1f2
--- /dev/null
+++ b/nativeLib/decrypt_file/.project
@@ -0,0 +1,83 @@
+
+
+ decrypt_file
+
+
+
+
+
+ org.eclipse.cdt.managedbuilder.core.genmakebuilder
+ clean,full,incremental,
+
+
+ ?name?
+
+
+
+ org.eclipse.cdt.make.core.append_environment
+ true
+
+
+ org.eclipse.cdt.make.core.autoBuildTarget
+ all
+
+
+ org.eclipse.cdt.make.core.buildArguments
+
+
+
+ org.eclipse.cdt.make.core.buildCommand
+ make
+
+
+ org.eclipse.cdt.make.core.buildLocation
+ ${workspace_loc:/decrypt_file/Release}
+
+
+ org.eclipse.cdt.make.core.cleanBuildTarget
+ clean
+
+
+ org.eclipse.cdt.make.core.contents
+ org.eclipse.cdt.make.core.activeConfigSettings
+
+
+ org.eclipse.cdt.make.core.enableAutoBuild
+ false
+
+
+ org.eclipse.cdt.make.core.enableCleanBuild
+ true
+
+
+ org.eclipse.cdt.make.core.enableFullBuild
+ true
+
+
+ org.eclipse.cdt.make.core.fullBuildTarget
+ all
+
+
+ org.eclipse.cdt.make.core.stopOnError
+ true
+
+
+ org.eclipse.cdt.make.core.useDefaultBuildCmd
+ true
+
+
+
+
+ org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder
+ full,incremental,
+
+
+
+
+
+ org.eclipse.cdt.core.cnature
+ org.eclipse.cdt.core.ccnature
+ org.eclipse.cdt.managedbuilder.core.managedBuildNature
+ org.eclipse.cdt.managedbuilder.core.ScannerConfigNature
+
+
diff --git a/nativeLib/decrypt_file/README.TXT b/nativeLib/decrypt_file/README.TXT
new file mode 100644
index 0000000000..58fe088877
--- /dev/null
+++ b/nativeLib/decrypt_file/README.TXT
@@ -0,0 +1,5 @@
+To compile the file in decrypt_file, type the following at a command line
+and copy the resulting executable to the decoders folder in the
+LDM install:
+
+cc -D_GNU_SOURCE -o decrypt_file decrypt_file.c
\ No newline at end of file
diff --git a/nativeLib/decrypt_file/decrypt_file.c b/nativeLib/decrypt_file/decrypt_file.c
new file mode 100644
index 0000000000..5a7cd29a89
--- /dev/null
+++ b/nativeLib/decrypt_file/decrypt_file.c
@@ -0,0 +1,268 @@
+/* -----------------------------------------------------------------------------
+
+File name:
+ decrypt_file.c
+
+Compilation:
+ cc -D_GNU_SOURCE -o decrypt_file decrypt_file.c
+
+Requirements:
+ - cruft must be installed
+ - the decryption key must be in ~/.key
+
+File description:
+ This program attempts to decrypt a stream of data that has been encrypted
+ with cruft.
+
+ This program reads data from stdin. It assumes that there is some kind of
+ header before the start of the cruft header that must be stripped, though
+ it will still work if there is no header.
+
+ If the cruft header is not found within the first 128 bytes, then the input
+ data is simply copied to the output file since decryption is not needed. If
+ a cruft header is found, then the data is piped to cruft for decryption and
+ is written to the file name matching the template specified on the command line.
+
+ This program takes one argument: the output file name template that is used
+ by the mkstemp system call to open a file with a unique file name. The
+ string (".XXXXXX") is appended by this program as required by mkstemp.
+
+ Any program looking for files to process that are output by this program
+ should look at the file permissions before attempting a read. When this
+ program has finished writing the output file, it will change permissions to
+ 0666.
+
+Command line:
+ decrypt_file
+
+Author:
+ Brian M. Rapp 03/19/2009
+
+----------------------------------------------------------------------------- */
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+
+#define MAX_BUF_SIZE 4096 // This must not be greater than PIPE_BUF
+ // as defined in the kernel header file
+ // /usr/src/linux/include/linux/limits.h
+
+#define HDR_DEPTH 128 // The cruft header must occur within 128
+ // bytes of the beginning of the file.
+
+#define ENCRYPT_PROGRAM "cruft" // The code may require modification if
+ // a different decryption tool is used.
+
+#define INSERT_PROGRAM "pqinsert" // LDM tool to insert data into the product
+ // queue
+
+#define CRUFT_HDR_SIZE 9 // Cruft header length (see cruft_hdr below)
+#define SBN_HDR_SIZE 24 // Length of the SBN header
+#define WMO_HDR_SIZE 21 // Length of the WMO header (TTAAii CCCC DDHHMM\r\r\n)
+#define OPEN_FILE_PERMS (S_IRUSR | S_IWUSR)
+#define DONE_FILE_PERMS (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)
+#define DIR_PERMS 0777 // the permissions for the directories created
+#define DECRYPT_FLAG_OFFSET 5 // Offset to NWSTG CCB encryption flag
+
+char *progname;
+char cruft_hdr[] = {253, 253, 253, 253, 253, 253, 253, 253, 253};
+
+/* -------------------------------------------------------------------------- */
+
+void usage (char *exename) {
+ //fprintf (stderr, "Usage: %s output_file_path feed_type\n", exename); // no feed_type
+ fprintf (stderr, "Usage: %s output_file_path \n", exename);
+}
+
+/* -------------------------------------------------------------------------- */
+
+int main (int argc, char **argv) {
+
+ char *out_template; // Input as the file name template from the command
+ // line. This is modified by mkstemp to the output
+ // file name.
+
+ int out_fd; // Output file descriptor returned by call to mkstemp
+ FILE *out_pipe; // File pointer returned by call to popen for decryption
+ size_t len; // Length of buffers read from STDIN
+ size_t wlen; // Length of the write buffer
+ size_t count; // Number of items written by calls to fwrite
+ char file_buf[MAX_BUF_SIZE]; // Input buffer from STDIN
+ char *hdr_ptr; // Pointer to start of cruft header within file_buf
+ char command_line[128]; // Command line for starting cruft via popen
+ char pqinsert_line[128]; // PQInsert Line
+ char *sbn_hdr_ptr; // Pointer to the start of the 24-byte SBN header in each product
+ char *slash_ptr; // pointer for the slashes in the path
+ progname = argv[0]; // Get the program name
+
+ if (argc != 2) { // Only 1 parameter - the template for the output file name.
+ usage (argv[0]);
+ exit (1);
+ }
+
+ len = (size_t) strlen (argv[1]) + 7 + 1; // Allocate 7 extra bytes for the ".XXXXXX"
+ // plus 1 for the terminating nul
+ if ((out_template = malloc (len)) == NULL) { // Try to malloc memory for output file name
+ fprintf (stderr, "%s: Error \"%s\" while allocating memory for output template -- exiting\n",
+ progname, strerror (errno));
+ exit (errno);
+ }
+
+ sprintf (out_template, "%s.XXXXXX", argv[1]); // Output file name template
+
+ // the reasons the DIR_PERMS are 777 is because of NFS permission issues with mkdir
+ // make sure all of the intervening directories in out_template actually exist
+ slash_ptr = strchr ( out_template, '/' );
+ while ( slash_ptr != NULL )
+ {
+ *slash_ptr = '\0'; // truncate at the slash
+ if ( strlen( out_template ) > 0 ) // corner case with a leading slash
+ {
+ if ( mkdir ( out_template, DIR_PERMS ) == - 1 && errno != EEXIST )
+ {
+ // it failed but not because the directory already exists
+ fprintf ( stderr, "mkdir errno %d\n", errno );
+ if ( errno == EPERM )
+ {
+ fprintf ( stderr, "mkdir permission error\n" );
+ }
+ exit (errno);
+ }
+ }
+ *slash_ptr = '/'; // put the slash back
+ ++slash_ptr;
+ slash_ptr = strchr ( slash_ptr, '/' ); // find the next slash
+ }
+
+ if ((out_fd = mkstemp (out_template)) == -1) { // Create and open a unique temporary file for output
+ fprintf (stderr, "%s: Error \"%s\" creating temporary file for template %s -- exiting\n",
+ progname, strerror (errno), out_template);
+ exit (errno);
+ }
+
+ // Try to read some data from STDIN
+ if ((len = read (STDIN_FILENO, file_buf, MAX_BUF_SIZE)) < 0) { // Error if read return negative value -- clean up
+ fprintf (stderr, "%s: Error \"%s\" reading from STDIN -- exiting\n",
+ progname, strerror (errno));
+ close (out_fd);
+ unlink (out_template);
+ exit (errno);
+ } else if (len == 0) { // Input data stream is empty -- clean up
+ fprintf (stderr, "%s: File is empty -- ignoring\n", progname);
+ close (out_fd);
+ unlink (out_template);
+ exit (0);
+ }
+
+ // If we're here, then we read some bytes from STDIN.
+ // If the input buffer is less than 128 bytes, then only search through the number of bytes read
+ if ((hdr_ptr = memmem (file_buf, (len < HDR_DEPTH) ? len : HDR_DEPTH, cruft_hdr, CRUFT_HDR_SIZE)) == NULL) {
+ // then there is no cruft header within the first HDR_DEPTH bytes
+
+ if ((wlen = write (out_fd, file_buf, len)) != len) { // Try to write the input buffer to the output file
+ fprintf (stderr, "%s: Error \"%s\" writing to %s -- exiting\n", progname, strerror (errno), out_template);
+ close (out_fd);
+ unlink (out_template);
+ exit (errno);
+ }
+
+ // Read the rest of the input data and write it to the output file, exit on error
+ while ((len = read (STDIN_FILENO, file_buf, MAX_BUF_SIZE)) > 0) {
+ if ((wlen = write (out_fd, file_buf, len)) != len) {
+ fprintf (stderr, "%s: Error \"%s\" writing to %s -- exiting\n", progname, strerror (errno), out_template);
+ close (out_fd);
+ unlink (out_template);
+ exit (errno);
+ }
+ }
+
+ if (len < 0) { // Uh oh, there was an error reading from STDIN
+ fprintf (stderr, "%s: Error \"%s\" reading from STDIN -- exiting\n",
+ progname, strerror (errno));
+ close (out_fd);
+ unlink (out_template);
+ exit (errno);
+ }
+
+ close (out_fd); // Close the output file
+ } else { // Found a cruft header
+ // Write the 24-byte SBN header to the output file before closing it. Cruft will append to this file.
+ sbn_hdr_ptr = hdr_ptr - (WMO_HDR_SIZE + SBN_HDR_SIZE);
+
+ // Change compression flag from 'E' to 'U'
+ if (file_buf[0] == 0x40) {
+ if (file_buf[DECRYPT_FLAG_OFFSET] == 'E') {
+ file_buf[DECRYPT_FLAG_OFFSET] = 'U';
+ }
+ }
+
+ if ((wlen = write (out_fd, sbn_hdr_ptr, SBN_HDR_SIZE)) != SBN_HDR_SIZE) {
+ fprintf (stderr, "%s: Error \"%s\" writing SBN header to %s -- exiting\n", progname, strerror (errno), out_template);
+ close (out_fd);
+ unlink (out_template);
+ exit (errno);
+ }
+
+ close (out_fd);
+
+ if (chmod (out_template, OPEN_FILE_PERMS) < 0) { // Set file perms to 0600 so cruft can write to it.
+ fprintf (stderr, "%s: Error \"%s\" changing file permissions on %s to %od\n",
+ progname, strerror (errno), out_template, DONE_FILE_PERMS);
+ }
+
+ sprintf (command_line, "%s >> %s", ENCRYPT_PROGRAM, out_template); // Create pipe command line
+ if ((out_pipe = popen (command_line, "w")) == NULL) { // Try to open pipe for output to cruft
+ fprintf (stderr, "%s: Error \"%s\" while attempting to open pipe to %s -- exiting\n",
+ progname, strerror (errno), command_line);
+ unlink (out_template); // Clean up mess
+ exit (errno);
+ }
+
+ wlen = file_buf + len - hdr_ptr; // Calculate the length of the output buffer from the start of the cruft header
+ if ((count = fwrite (hdr_ptr, wlen, 1, out_pipe)) != 1) { // Try to pipe the output buffer to cruft
+ fprintf (stderr, "%s: Error \"%s\" writing to output pipe -- only wrote %d items exiting\n",
+ progname, strerror (errno), (int) count);
+ fclose (out_pipe);
+ unlink (out_template); // Clean up mess
+ exit (errno);
+ }
+
+ while ((len = read (STDIN_FILENO, file_buf, MAX_BUF_SIZE)) > 0) {
+ if ((count = fwrite (file_buf, len, 1, out_pipe)) != 1) {
+ fprintf (stderr, "%s: Error \"%s\" writing to output pipe -- only wrote %d items exiting\n",
+ progname, strerror (errno), (int) count);
+ fclose (out_pipe);
+ unlink (out_template); // Clean up mess
+ exit (errno);
+ }
+ }
+
+ if (len < 0) { // Uh oh, there was an error reading from STDIN
+ fprintf (stderr, "%s: Error \"%s\" reading from STDIN -- exiting\n", progname, strerror (errno));
+ fclose (out_pipe);
+ unlink (out_template); // Clean up the mess
+ exit (errno);
+ }
+
+ fclose (out_pipe);
+
+ sprintf(pqinsert_line, "%s %s", INSERT_PROGRAM, out_template);
+ if((system(pqinsert_line)) > 0) {
+ fprintf (stderr, "%s: Error \"%s\" running pqinsert -- file not inserted into data stream\n", progname, strerror (errno));
+ }
+
+ }
+
+ // Change file permissions on output file to 0666 as a signal to anyone watching that the file is available for access now
+ if (chmod (out_template, DONE_FILE_PERMS) < 0) {
+ fprintf (stderr, "%s: Error \"%s\" changing file permissions on %s to %od\n", progname, strerror (errno), out_template, DONE_FILE_PERMS);
+ }
+
+ exit (0);
+}
diff --git a/rpms/awips2.core/Installer.ldm/component.spec b/rpms/awips2.core/Installer.ldm/component.spec
index 6a0ffafc89..06c26b3b48 100644
--- a/rpms/awips2.core/Installer.ldm/component.spec
+++ b/rpms/awips2.core/Installer.ldm/component.spec
@@ -1,13 +1,16 @@
+%define _ldm_version 6.11.2
+%define _ldm_src_tar awips2-ldm.%{_ldm_version}.tar.gz
#
# AWIPS II LDM Spec File
#
%define __prelink_undo_cmd %{nil}
Name: awips2-ldm
Summary: AWIPS II LDM Distribution
-Version: 6.8.1
-Release: 33
+Version: %{_ldm_version}
+Release: 1
Group: AWIPSII
BuildRoot: /tmp
+BuildArch: noarch
URL: N/A
License: N/A
Distribution: N/A
@@ -15,6 +18,8 @@ Vendor: Raytheon
Packager: Bryan Kowal
AutoReq: no
+Requires: qpid-cpp-client = 0.7.946106-28.el5.centos.1
+Requires: qpid-cpp-client-devel = 0.7.946106-28.el5.centos.1
provides: awips2-ldm
provides: awips2-base-component
@@ -22,179 +27,167 @@ provides: awips2-base-component
AWIPS II LDM Distribution - Contains AWIPS II LDM.
%prep
-# Verify That The User Has Specified A BuildRoot.
-if [ "${RPM_BUILD_ROOT}" = "/tmp" ]
-then
- echo "An Actual BuildRoot Must Be Specified. Use The --buildroot Parameter."
- echo "Unable To Continue ... Terminating"
+# Ensure that a "buildroot" has been specified.
+if [ "%{_build_root}" = "" ]; then
+ echo "ERROR: A BuildRoot has not been specified."
+ echo "FATAL: Unable to Continue ... Terminating."
exit 1
fi
-LDM_BUILD_DIR="/tmp/awips2-${USER}/ldm-build"
-LDM_TAR_DIR="rpms/awips2.core/Installer.ldm/src"
-LDM_TAR_FILE="ldm-6.8.1.tar.gz"
-if [ -d ${RPM_BUILD_ROOT} ]; then
- rm -rf ${RPM_BUILD_ROOT}
+if [ -d %{_build_root} ]; then
+ rm -rf %{_build_root}
+fi
+/bin/mkdir -p %{_build_root}
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+
+# create the ldm directory
+/bin/mkdir -p %{_build_root}/usr/local/ldm-%{_ldm_version}/SOURCES
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+
+# create profile directory and ld directory
+/bin/mkdir -p %{_build_root}/etc/ld.so.conf.d
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+/bin/mkdir -p %{_build_root}/etc/profile.d
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+
+%build
+
+%install
+_ldm_destination=%{_build_root}/usr/local/ldm-%{_ldm_version}
+_ldm_destination_source=${_ldm_destination}/SOURCES
+
+_NATIVELIB_PROJECTS=( 'edexBridge' 'decrypt_file' )
+_RPM_directory=%{_baseline_workspace}/rpms
+_Installer_ldm=${_RPM_directory}/awips2.core/Installer.ldm
+
+# copy the ldm source to the ldm destination directory.
+/bin/cp ${_Installer_ldm}/src/%{_ldm_src_tar} ${_ldm_destination_source}
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+# package nativelib projects
+pushd . > /dev/null 2>&1
+cd %{_baseline_workspace}
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+for nativeProject in ${_NATIVELIB_PROJECTS[*]};
+do
+ /bin/tar -cf ${nativeProject}.tar ${nativeProject}
+ if [ $? -ne 0 ]; then
+ exit 1
+ fi
+ # move nativeLib to LDM SOURCES for post-installation
+ # build.
+ /bin/mv ${nativeProject}.tar \
+ ${_ldm_destination_source}/${nativeProject}.tar
if [ $? -ne 0 ]; then
exit 1
fi
-fi
-if [ -d ${LDM_BUILD_DIR} ]; then
- rm -rf ${LDM_BUILD_DIR}
-fi
-mkdir -p ${LDM_BUILD_DIR}
-if [ -d ${RPM_BUILD_ROOT}/usr/local/ldm]; then
- rm -rf ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
-fi
-mkdir -p ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
-# We cannot safely build ldm on a machine awips2-ldm
-# is already installed on.
-if rpm -q awips2-ldm
-then
- echo "ERROR: the awips2-ldm rpm must not be built"
- echo " on a machine with an awips2-ldm"
- echo " installation."
- echo "Unable To Continue ... Terminating."
- exit 1
-fi
-if [ -d /usr/local/ldm-6.8.1 ]; then
- rm -rf /usr/local/ldm-6.8.1
-fi
-mkdir -p /usr/local/ldm-6.8.1
-
-# Copy the src to the build directory.
-cp %{_baseline_workspace}/${LDM_TAR_DIR}/${LDM_TAR_FILE} \
- ${LDM_BUILD_DIR}
-# Copy patch0 to the build directory.
-cp %{_baseline_workspace}/${LDM_TAR_DIR}/ldm-6.8.1.patch0 \
- ${LDM_BUILD_DIR}
-# Copy patch1 to the build directory.
-cp %{_baseline_workspace}/${LDM_TAR_DIR}/ldm-6.8.1.patch1 \
- ${LDM_BUILD_DIR}
-# Copy patch2 to the build directory.
-cp %{_baseline_workspace}/${LDM_TAR_DIR}/ldm-6.8.1.patch2 \
- ${LDM_BUILD_DIR}
-cd ${LDM_BUILD_DIR}
-tar -xvf ${LDM_TAR_FILE}
-# remove the copied tar file
-rm -f ${LDM_TAR_FILE}
-
-cd ldm-6.8.1
-patch -p1 < ../ldm-6.8.1.patch0
-
-# remove the patch file
-rm -f ../ldm-6.8.1.patch0
-
-patch -p1 < ../ldm-6.8.1.patch1
-
-# remove the patch file
-rm -f ../ldm-6.8.1.patch1
-
-patch -p1 < ../ldm-6.8.1.patch2
-
-# remove the patch file.
-rm -f ../ldm-6.8.1.patch2
-
-%build
-LDM_BUILD_DIR="/tmp/awips2-${USER}/ldm-build"
-LDM_TAR_DIR="rpms/awips2.core/Installer.ldm/src"
-LDM_TAR_FILE="ldm-6.8.1.tar.gz"
-
-# go to the ldm src directory.
-cd ${LDM_BUILD_DIR}/ldm-6.8.1/src
-# set LDMHOME
-export LDMHOME=/usr/local/ldm-6.8.1
-# run the configure script
-
-./configure \
- --prefix=${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
-RC="$?"
-if [ ! "${RC}" = "0" ]; then
- echo "ERROR: configure of ldm-6.8.1 has failed."
- echo "Unable To Continue ... Terminating."
- exit 1
-fi
-# make ldm
-make clean
-make
-RC="$?"
-if [ ! "${RC}" = "0" ]; then
- echo "ERROR: make of ldm-6.8.1 has failed."
- echo "Unable To Continue ... Terminating."
- exit 1
-fi
-
-%install
-LDM_BUILD_DIR="/tmp/awips2-${USER}/ldm-build"
-
-cd ${LDM_BUILD_DIR}/ldm-6.8.1/src
-make install
-RC="$?"
-if [ ! "${RC}" = "0" ]; then
- echo "ERROR: install of ldm-6.8.1 has failed."
- echo "Unable To Continue ... Terminating."
- exit 1
-fi
-
-# copy the ldm src to the installation
-cd ${LDM_BUILD_DIR}/ldm-6.8.1
-cp -r src ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/ldm-6.8.1
-
-# remove the build directory.
-rm -rf ${LDM_BUILD_DIR}
-
-# re-locate the etc directory in the install
-cd /usr/local/ldm-6.8.1
-mv etc ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1
-
-# create links to the ldm directories
-cd ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1
-ln -s ldm-6.8.1 runtime
-ln -s runtime/bin bin
-ln -s runtime/include include
-ln -s runtime/lib lib
-ln -s runtime/man man
-ln -s runtime/src src
-
-# create our standard directories
-mkdir .ssh
-touch .ssh/known_hosts
-mkdir data
-mkdir decoders
-mkdir logs
-
-# create our ld.so.conf.d file.
-mkdir -p ${RPM_BUILD_ROOT}/etc/ld.so.conf.d
-touch ${RPM_BUILD_ROOT}/etc/ld.so.conf.d/awips2-i386.conf
-echo "/usr/local/ldm-6.8.1/lib" >> \
- ${RPM_BUILD_ROOT}/etc/ld.so.conf.d/awips2-i386.conf
-
-# install our "patches"
-PATCH_DIR="rpms/awips2.core/Installer.ldm/patch"
-# Copy the hidden files.
-hidden_files=( '.bash_profile' '.bashrc' '.cshrc' \
- '.lesshst' '.viminfo' )
-for hiddenFile in ${hidden_files[*]}; do
- cp %{_baseline_workspace}/${PATCH_DIR}/${hiddenFile} \
- ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1
done
-# Copy the contents of the bin directory.
-cp -f %{_baseline_workspace}/${PATCH_DIR}/bin/* \
- ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/bin
-# Copy the contents of the decoder directory.
-cp %{_baseline_workspace}/${PATCH_DIR}/decoders/* \
- ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/decoders
-# Copy the contents of the lib directory.
-cp -P %{_baseline_workspace}/${PATCH_DIR}/lib/* \
- ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/lib
-# Copy the contents of the etc directory.
-cp -f %{_baseline_workspace}/${PATCH_DIR}/etc/* \
- ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/etc
-
-# Merge pqact.conf.dev and pqact.conf.template to create
-# our pqact.conf file.
+popd > /dev/null 2>&1
+
+# copy ldm "patches" to SOURCES for post-installation
+# unpacking.
+cd ${_Installer_ldm}/patch
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+_PATCH_DIRS=( 'bin' 'decoders' 'etc' )
+for patchDir in ${_PATCH_DIRS[*]};
+do
+ /bin/tar -cf ${patchDir}.tar ${patchDir}
+ if [ $? -ne 0 ]; then
+ exit 1
+ fi
+ /bin/mv ${patchDir}.tar \
+ ${_ldm_destination_source}/${patchDir}.tar
+ if [ $? -ne 0 ]; then
+ exit 1
+ fi
+done
+
+# copy environment scripts to their destination
+/bin/cp profile.d/* %{_build_root}/etc/profile.d
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+/bin/touch %{_build_root}/etc/ld.so.conf.d/awips2-ldm-noarch.conf
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+echo "/usr/local/ldm-%{_ldm_version}/lib" > \
+ %{_build_root}/etc/ld.so.conf.d/awips2-ldm-noarch.conf
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+echo "/awips2/qpid/lib" >> \
+ %{_build_root}/etc/ld.so.conf.d/awips2-ldm-noarch.conf
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+
+%pre
+if [ -d /tmp/ldm ]; then
+ rm -rf /tmp/ldm
+fi
+mkdir -p /tmp/ldm
+for dir in etc .ssh;
+do
+ if [ -d /usr/local/ldm-%{_ldm_version}/${dir} ]; then
+ scp -qrp /usr/local/ldm-%{_ldm_version}/${dir} /tmp/ldm
+ fi
+done
+
+%post
+_ldm_dir=/usr/local/ldm-%{_ldm_version}
+_ldm_root_dir=${_ldm_dir}/ldm-%{_ldm_version}
+
pushd . > /dev/null 2>&1
-cd ${RPM_BUILD_ROOT}/usr/local/ldm-6.8.1/etc
+cd ${_ldm_dir}/SOURCES
+# unpack the ldm source
+/bin/tar -xf awips2-ldm.%{_ldm_version}.tar.gz \
+ -C ${_ldm_dir}
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+rm -f awips2-ldm.%{_ldm_version}.tar.gz
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+# unpack bin, decoders, and etc.
+_PATCH_DIRS=( 'bin' 'decoders' 'etc' )
+for patchDir in ${_PATCH_DIRS[*]};
+do
+ /bin/tar -xf ${patchDir}.tar -C ${_ldm_dir}
+ if [ $? -ne 0 ]; then
+ exit 1
+ fi
+ /bin/rm -f ${patchDir}.tar
+ if [ $? -ne 0 ]; then
+ exit 1
+ fi
+done
+/bin/chown -R ldm:fxalpha ${_ldm_dir}
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+popd > /dev/null 2>&1
+
+# construct pqact
+pushd . > /dev/null 2>&1
+cd ${_ldm_dir}/etc
+if [ $? -ne 0 ]; then
+ exit 1
+fi
if [ ! -f pqact.conf.template ]; then
echo "ERROR: pqact.conf.template does not exist."
exit 1
@@ -205,218 +198,171 @@ if [ ! -f pqact.conf.dev ]; then
fi
cp pqact.conf.template pqact.conf
-RC=$?
-if [ ${RC} -ne 0 ]; then
- echo "ERROR: Unable to create the pqact.conf file."
+if [ $? -ne 0 ]; then
exit 1
fi
cat pqact.conf.dev >> pqact.conf
-RC=$?
-if [ ${RC} -ne 0 ]; then
+if [ $? -ne 0 ]; then
echo "ERROR: Unable to merge pqact.conf.dev and pqact.conf."
exit 1
fi
popd > /dev/null 2>&1
-# Move our profile.d script to its final location.
-mkdir -p ${RPM_BUILD_ROOT}/etc/profile.d
-cp %{_baseline_workspace}/${PATCH_DIR}/profile.d/awipsLDM.csh \
- ${RPM_BUILD_ROOT}/etc/profile.d
-
-%pre
-if [ -d /tmp/ldm ]; then
- rm -rf /tmp/ldm
+pushd . > /dev/null 2>&1
+# build ldm
+cd ${_ldm_root_dir}/src
+if [ $? -ne 0 ]; then
+ exit 1
fi
-mkdir -p /tmp/ldm
-for dir in etc .ssh;
-do
- if [ -d /usr/local/ldm-6.8.1/${dir} ]; then
- scp -qrp /usr/local/ldm-6.8.1/${dir} /tmp/ldm
- fi
-done
+su ldm -c "./configure --disable-max-size --with-noaaport --disable-root-actions" \
+ > configure.log 2>&1
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+su ldm -c "make install" > install.log 2>&1
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+popd > /dev/null 2>&1
+pushd . > /dev/null 2>&1
+cd ${_ldm_root_dir}/src/noaaport
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+su ldm -c "/bin/bash my-make" > my-make.log 2>&1
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+popd > /dev/null 2>&1
+pushd . > /dev/null 2>&1
+cd ${_ldm_root_dir}/src
+make root-actions > root-actions.log 2>&1
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+popd > /dev/null 2>&1
-%post
-cd /usr/local/ldm-6.8.1/src
-export LDMHOME=/usr/local/ldm-6.8.1/ldm-6.8.1
-./configure --prefix=/usr/local/ldm-6.8.1/ldm-6.8.1
-make clean
-make
-make install_setuids
-RC="$?"
-if [ ! "${RC}" = "0" ]; then
- echo "WARNING: 'make install_setuids' has failed."
+# build decrypt_file & edexBridge
+pushd . > /dev/null 2>&1
+cd ${_ldm_dir}/SOURCES
+/bin/tar -xf decrypt_file.tar
+if [ $? -ne 0 ]; then
+ exit 1
fi
+/bin/tar -xf edexBridge.tar
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+/bin/rm -f *.tar
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+/bin/chown -R ldm:fxalpha ${_ldm_dir}/SOURCES
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+cd decrypt_file
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+su ldm -c "gcc -D_GNU_SOURCE -o decrypt_file decrypt_file.c" > \
+ decrypt_file.log 2>&1
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+/bin/mv decrypt_file ${_ldm_dir}/decoders/decrypt_file
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+cd ../edexBridge
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+su ldm -c "g++ edexBridge.cpp -I${_ldm_root_dir}/src/pqact \
+ -I${_ldm_root_dir}/include \
+ -I${_ldm_root_dir}/src \
+ -I/usr/include/qpid \
+ -L${_ldm_root_dir}/lib \
+ -L%{_libdir} \
+ -l ldm -l xml2 -l qpidclient -l qpidcommon -o edexBridge" > \
+ edexBridge.log 2>&1
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+/bin/mv edexBridge ${_ldm_dir}/bin/edexBridge
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+cd ..
+
+popd > /dev/null 2>&1
+
for dir in etc .ssh;
do
if [ -d /tmp/ldm/${dir} ]; then
- scp -qrp /tmp/ldm/${dir} /usr/local/ldm-6.8.1
+ scp -qrp /tmp/ldm/${dir} /usr/local/ldm-%{_ldm_version}
fi
done
-
#if a remote CP site, copy over the filtered data configuration
case $SITE_IDENTIFIER in gum|hfo|pbp|vrh)
echo -e "\nInstalling ldmd.conf for $SITE_IDENTIFIER."
- if ! scp /usr/local/ldm-6.8.1/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn1:/usr/local/ldm/etc/ldmd.conf
+ if ! scp /usr/local/ldm-%{_ldm_version}/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn1:/usr/local/ldm/etc/ldmd.conf
then
echo "ERROR: Failed copy of ldmd.conf to cpsbn1"
fi
- if ! scp /usr/local/ldm-6.8.1/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn2:/usr/local/ldm/etc/ldmd.conf
+ if ! scp /usr/local/ldm-%{_ldm_version}/etc/ldmd.conf.$SITE_IDENTIFIER cpsbn2:/usr/local/ldm/etc/ldmd.conf
then
echo "ERROR: Failed copy of ldmd.conf to cpsbn2"
fi
;;
esac
-#remove the extra configuration files
-rm -f /usr/local/ldm-6.8.1/etc/ldmd.conf.*
+# remove the extra configuration files
+rm -f /usr/local/ldm-%{_ldm_version}/etc/ldmd.conf.*
/sbin/ldconfig
+# create route-eth1, if it does not already exist.
+if [ ! -f /etc/sysconfig/network-scripts/route-eth1 ]; then
+ _route_eth1=/etc/sysconfig/network-scripts/route-eth1
+
+ touch ${_route_eth1}
+ echo "ADDRESS0=224.0.1.1" > ${_route_eth1}
+ echo "NETMASK0=255.255.255.255" >> ${_route_eth1}
+ echo "ADDRESS1=224.0.1.2" >> ${_route_eth1}
+ echo "NETMASK1=255.255.255.255" >> ${_route_eth1}
+ echo "ADDRESS2=224.0.1.3" >> ${_route_eth1}
+ echo "NETMASK2=255.255.255.255" >> ${_route_eth1}
+ echo "ADDRESS3=224.0.1.4" >> ${_route_eth1}
+ echo "NETMASK3=255.255.255.255" >> ${_route_eth1}
+ echo "ADDRESS4=224.0.1.5" >> ${_route_eth1}
+ echo "NETMASK4=255.255.255.255" >> ${_route_eth1}
+
+ # restart networking
+ /sbin/service network restart
+fi
+
rm -rf /tmp/ldm
+# remove the ldm SOURCES directory
+/bin/rm -rf ${_ldm_dir}/SOURCES
+if [ $? -ne 0 ]; then
+ exit 1
+fi
+
+%preun
%postun
/sbin/ldconfig
%clean
rm -rf ${RPM_BUILD_ROOT}
-rm -rf /usr/local/ldm-6.8.1
-rm -rf /tmp/awips2-${USER}/ldm-build
%files
%defattr(-,ldm,fxalpha,-)
-%attr(644,root,root) /etc/ld.so.conf.d/awips2-i386.conf
-%dir /usr/local/ldm-6.8.1
-/usr/local/ldm-6.8.1/.bash_profile
-/usr/local/ldm-6.8.1/.bashrc
-/usr/local/ldm-6.8.1/.cshrc
-/usr/local/ldm-6.8.1/.lesshst
-%dir /usr/local/ldm-6.8.1/.ssh
-%config(noreplace) /usr/local/ldm-6.8.1/.ssh/known_hosts
-/usr/local/ldm-6.8.1/.viminfo
+%dir /usr/local/ldm-%{_ldm_version}
+%dir /usr/local/ldm-%{_ldm_version}/SOURCES
+/usr/local/ldm-%{_ldm_version}/SOURCES/*
-/usr/local/ldm-6.8.1/bin
-/usr/local/ldm-6.8.1/data
-%dir /usr/local/ldm-6.8.1/decoders
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/binaryWriter
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/binWriter
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/cruft
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/decrypt_file
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/keygen
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/metarWriter
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/purge.sh
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/decoders/textWriter
-/usr/local/ldm-6.8.1/etc
-/usr/local/ldm-6.8.1/include
-/usr/local/ldm-6.8.1/lib
-%dir /usr/local/ldm-6.8.1/logs
-/usr/local/ldm-6.8.1/man
-/usr/local/ldm-6.8.1/runtime
-/usr/local/ldm-6.8.1/src
-
-%dir /usr/local/ldm-6.8.1/ldm-6.8.1
-%dir /usr/local/ldm-6.8.1/ldm-6.8.1/bin
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/afos
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ddplus
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/dds
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/edexBridge
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/feedme
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/feedtest
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/hds
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/hrs
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/hupsyslog
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ids
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmadmin
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmcheck
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmfail
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmping
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/ldmsend
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/monitor_data_store.sh
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/netcheck
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/newlog
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/notifyme
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/plotMetrics
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pps
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqact
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqcat
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqcheck
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqcreate
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqexpire
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqing
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqinsert
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqmon
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqsend
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqsurf
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/pqutil
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/regex
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/rpc.ldmd
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/rtstats
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/scour
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/scriptconfig
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/bin/syscheck
-/usr/local/ldm-6.8.1/ldm-6.8.1/include
-%dir /usr/local/ldm-6.8.1/ldm-6.8.1/lib
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_date_time.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_date_time.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_date_time.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_filesystem.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_filesystem.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_filesystem.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_iostreams.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_iostreams.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_iostreams.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_prg_exec_monitor.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_prg_exec_monitor.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_prg_exec_monitor.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_program_options.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_program_options.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_program_options.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_python.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_python.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_python.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_regex.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_regex.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_regex.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_serialization.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_serialization.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_serialization.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_signals.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_signals.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_signals.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_test_exec_monitor.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_test_exec_monitor.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_test_exec_monitor.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_thread.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_thread.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_thread.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_unit_test_framework.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_unit_test_framework.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_unit_test_framework.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_wserialization.so
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_wserialization.so.1.33.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libboost_wserialization.so.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.a
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.so
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.so.4
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcc.so.4.0.0
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.a
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.so
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.so.4
-%attr(755,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libcoroipcs.so.4.0.0
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libldm.a
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidclient.so
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidclient.so.4
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidclient.so.4.0.0
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidcommon.so
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidcommon.so.4
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidcommon.so.4.0.0
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidmessaging.so
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidmessaging.so.3
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidmessaging.so.3.0.2
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidtypes.so
-%attr(777,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidtypes.so.1
-%attr(644,ldm,fxalpha) /usr/local/ldm-6.8.1/ldm-6.8.1/lib/libqpidtypes.so.1.1.1
-%docdir /usr/local/ldm-6.8.1/ldm-6.8.1/man
-/usr/local/ldm-6.8.1/ldm-6.8.1/man
-/usr/local/ldm-6.8.1/ldm-6.8.1/src
+%attr(644,root,root) /etc/ld.so.conf.d/awips2-ldm-noarch.conf
%attr(755,root,root) /etc/profile.d/awipsLDM.csh
diff --git a/rpms/awips2.core/Installer.ldm/patch/bin/edexBridge b/rpms/awips2.core/Installer.ldm/patch/bin/edexBridge
deleted file mode 100755
index a0a4d30095..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/bin/edexBridge and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/bin/scour b/rpms/awips2.core/Installer.ldm/patch/bin/scour
deleted file mode 100644
index aa5f565a0a..0000000000
--- a/rpms/awips2.core/Installer.ldm/patch/bin/scour
+++ /dev/null
@@ -1,176 +0,0 @@
-
-# $Id: scour.in,v 1.1.16.6.2.7 2009/07/16 19:27:13 steve Exp $
-# Deletes old data files.
-#
-# Recursively deletes files older than a specified number of days from a
-# specified set of directories. The directories, retention time in days,
-# and an optional shell filename pattern appear, separated by tab characters
-# one directory per line, in a configuration file named on the command line.
-#
-# If no files have been written under a directory since the last time scour was
-# run, it will skip deleting old files and log an error message instead.
-#
-# WARNING: scour follows symbolic links, so don't put symbolic links to
-# directories you don't want scoured under data directories.
-
-PATH=/bin:/usr/bin
-CONFFILE=/usr/local/ldm/etc/scour.conf # default, if no args
-VERBOSEFLAG=
-DEBUGFLAG=
-ERRS=
-PROG=`basename $0`
-LOGGER="echo $PROG: "
-TZ=UTC0 export TZ
-LOG_LDM=local0
-
-while [ "$1" != "" ]
-do
- case "$1" in
- -v)
- VERBOSEFLAG=1
- ;;
- -x)
- DEBUGFLAG=1
- ;;
- -l) # logs to syslogd
- LOGGER="logger -t $PROG -p $LOG_LDM.notice"
- ;;
- -*)
- $LOGGER "unrecognized flag ($1)"
- ERRS=1
- ;;
- *)
- if [ $# -ne 1 ]
- then
- $LOGGER "only 1 conf file argument permitted"
- ERRS=1
- fi
- CONFFILE=$1
- ;;
- esac
- shift
-done
-
-if [ "$ERRS" != "" ]
-then
- $LOGGER "usage: $PROG [-l] [-v] [-x] [config-file]"
- exit 1
-fi
-
-if [ "$VERBOSEFLAG" != "" ]
-then
- $LOGGER "Starting Up"
-fi
-
-# Different find(1) utilities have different meanings for the "-mtime" argument.
-# Discover the meaning for the find(1) utility that will be used.
-#
-dayOffsetName=scour_$$
-trap 'rm -f /tmp/$dayOffsetName' EXIT
-if touch /tmp/$dayOffsetName; then
- sleep 2
- #
- # NOTE: OSF/1's find(1) utility doesn't conform to the Standard
- # because the CWD must be changed in order to get this test to work.
- #
- dir=`pwd`
- cd /tmp
- if find $dayOffsetName -mtime 0 |
- grep $dayOffsetName >/dev/null; then
- DAY_OFFSET=1
- elif find $dayOffsetName -mtime 1 |
- grep $dayOffsetName >/dev/null; then
- DAY_OFFSET=0
- else
- $LOGGER "Couldn't discover meaning of '-mtime' argument of find(1)"
- exit 1
- fi
- cd $dir
- rm /tmp/$dayOffsetName
-else
- $LOGGER "Couldn't create '-mtime' discovery-file /tmp/$dayOffsetName"
- exit 1
-fi
-
-while read dir age pattern; do
- if [ x$dir = x ] # ignore blank lines
- then
- continue
- fi
-
- case $dir in
- \#*) # ignore comments
- continue
- ;;
- *)
- if [ x$pattern = x ]
- then
- pattern="*"
- fi
-
- # Convert directory specification to absolute pathname: follow symbolic
- # links (because find(1) doesn't) and perform tilde-expansion.
- #
- # NB: The statement
- # edir=`csh -f -c "cd $dir && /bin/pwd"`
- # causes the read(1) of the enclosing while-loop to return EOF if the
- # directory doesn't exist.
- #
- if edir=`echo "cd $dir && /bin/pwd" | csh -f`; then
- : true
- else
- $LOGGER "directory $dir does not exist, skipping"
- continue
- fi
-
- if [ "$DEBUGFLAG" != "" ]
- then
- echo "dir=$dir age=$age pattern=$pattern edir=$edir"
- fi
-
- (
- if cd $edir
- then
- # if either "$edir/.scour$pattern" doesn't exist yet OR
- # there are files newer than "$edir/.scour$pattern"
- # then
- # delete old files and create "$edir/.scour$pattern"
- # else
- # skip deletions and log message
- if [ ! -f ".scour$pattern" ] || \
- [ -n "`find . -newer \".scour$pattern\" 2>/dev/null | \
- head -1`" ]
- then
- FINDAGE=`echo $age $DAY_OFFSET - p|dc`
- if [ "$VERBOSEFLAG" != "" ]
- then
- BEFORE=`du -s . 2>/dev/null | \
- sed 's/^ *\([0-9]*\).*/\1/'`
- fi
- find . -type f -mtime +$FINDAGE -name "$pattern" -print \
- | sed 's/\([^\n]\)/\\\1/g' \
- | xargs rm -f && touch ".scour$pattern"
- if [ "$VERBOSEFLAG" != "" ]
- then
- AFTER=`du -s . 2>/dev/null | \
- sed 's/^ *\([0-9]*\).*/\1/'`
- # set DELETED to max(0, BEFORE - AFTER)
- DELETED=`echo $BEFORE $AFTER|\
- sed 's/\([0-9]*\) \([0-9]*\).*/b=\1;a=\2;d=0;if(a" \
- "$age days old)"
- fi
- else
- $LOGGER "skipping, no recent files in $edir/$pattern"
- fi
- fi
- )
- ;;
- esac
-done < $CONFFILE
-
-if [ "$VERBOSEFLAG" != "" ]
-then
- $LOGGER exiting ...
-fi
diff --git a/rpms/awips2.core/Installer.ldm/patch/decoders/decrypt_file b/rpms/awips2.core/Installer.ldm/patch/decoders/decrypt_file
deleted file mode 100755
index e949ed0488..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/decoders/decrypt_file and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/etc/ldmadmin-pl.conf b/rpms/awips2.core/Installer.ldm/patch/etc/ldmadmin-pl.conf
index aa6626f826..a53794582e 100644
--- a/rpms/awips2.core/Installer.ldm/patch/etc/ldmadmin-pl.conf
+++ b/rpms/awips2.core/Installer.ldm/patch/etc/ldmadmin-pl.conf
@@ -5,7 +5,7 @@
chomp($hostname = `hostname --fqdn`);
# The LDM home directory:
-$ldmhome = "/usr/local/ldm-6.8.1";
+$ldmhome = "/usr/local/ldm-6.11.2";
# Requested size, in bytes, of the data portion of the LDM product-queue. The
# actual size might be slightly greater than the requested size for performance
@@ -145,7 +145,7 @@ $metrics_file = "$log_path/metrics.txt";
# The file-pattern for the metrics files to be plotted by the "plotmetrics"
# command:
-$metrics_files = "/usr/local/ldm-6.8.1/logs/metrics.txt*";
+$metrics_files = "/usr/local/ldm-6.11.2/logs/metrics.txt*";
# The number of metrics-files that the "newmetrics" command should keep
# around:
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so
deleted file mode 100644
index 52e189b59d..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so.1.33.1
deleted file mode 100644
index 52e189b59d..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so.2
deleted file mode 100644
index 52e189b59d..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_date_time.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so
deleted file mode 100644
index d6416f9be7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so.1.33.1
deleted file mode 100644
index d6416f9be7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so.2
deleted file mode 100644
index d6416f9be7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_filesystem.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so
deleted file mode 100644
index 033916d2e7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so.1.33.1
deleted file mode 100644
index 033916d2e7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so.2
deleted file mode 100644
index 033916d2e7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_iostreams.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so
deleted file mode 100644
index d7c7977a7f..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so.1.33.1
deleted file mode 100644
index d7c7977a7f..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so.2
deleted file mode 100644
index d7c7977a7f..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_prg_exec_monitor.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so
deleted file mode 100644
index d009048359..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so.1.33.1
deleted file mode 100644
index d009048359..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so.2
deleted file mode 100644
index d009048359..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_program_options.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so
deleted file mode 100644
index 502117da83..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so.1.33.1
deleted file mode 100644
index 502117da83..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so.2
deleted file mode 100644
index 502117da83..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_python.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so
deleted file mode 100644
index e6944a082b..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so.1.33.1
deleted file mode 100644
index e6944a082b..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so.2
deleted file mode 100644
index e6944a082b..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_regex.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so
deleted file mode 100644
index ba4aed030b..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so.1.33.1
deleted file mode 100644
index ba4aed030b..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so.2
deleted file mode 100644
index ba4aed030b..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_serialization.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so
deleted file mode 100644
index 7e3b21cca7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so.1.33.1
deleted file mode 100644
index 7e3b21cca7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so.2
deleted file mode 100644
index 7e3b21cca7..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_signals.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so
deleted file mode 100644
index 7917295486..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so.1.33.1
deleted file mode 100644
index 7917295486..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so.2
deleted file mode 100644
index 7917295486..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_test_exec_monitor.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so
deleted file mode 100644
index d690317f28..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so.1.33.1
deleted file mode 100644
index d690317f28..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so.2
deleted file mode 100644
index d690317f28..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_thread.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so
deleted file mode 100644
index 68e5d26e07..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so.1.33.1
deleted file mode 100644
index 68e5d26e07..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so.2
deleted file mode 100644
index 68e5d26e07..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_unit_test_framework.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so
deleted file mode 100644
index 724501b49e..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so.1.33.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so.1.33.1
deleted file mode 100644
index 724501b49e..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so.1.33.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so.2
deleted file mode 100644
index 724501b49e..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libboost_wserialization.so.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.a b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.a
deleted file mode 100644
index 3edbce7a68..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.a and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so
deleted file mode 100755
index db11b0e5d0..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so.4 b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so.4
deleted file mode 100755
index db11b0e5d0..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so.4 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so.4.0.0 b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so.4.0.0
deleted file mode 100755
index db11b0e5d0..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcc.so.4.0.0 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.a b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.a
deleted file mode 100644
index f3143a7f64..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.a and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so
deleted file mode 100755
index 2acf3ce8f2..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so.4 b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so.4
deleted file mode 100755
index 2acf3ce8f2..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so.4 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so.4.0.0 b/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so.4.0.0
deleted file mode 100755
index 2acf3ce8f2..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libcoroipcs.so.4.0.0 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so
deleted file mode 100755
index a605493071..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so.4 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so.4
deleted file mode 100755
index a605493071..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so.4 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so.4.0.0 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so.4.0.0
deleted file mode 100755
index a605493071..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidclient.so.4.0.0 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so
deleted file mode 100755
index 118b5274db..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so.4 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so.4
deleted file mode 100755
index 118b5274db..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so.4 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so.4.0.0 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so.4.0.0
deleted file mode 100755
index 118b5274db..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidcommon.so.4.0.0 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so
deleted file mode 100755
index a1a4dfc0a8..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so.3 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so.3
deleted file mode 100755
index a1a4dfc0a8..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so.3 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so.3.0.2 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so.3.0.2
deleted file mode 100755
index a1a4dfc0a8..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidmessaging.so.3.0.2 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so
deleted file mode 100755
index dac2b637df..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so.1
deleted file mode 100755
index dac2b637df..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so.1.1.1 b/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so.1.1.1
deleted file mode 100755
index dac2b637df..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/patch/lib/libqpidtypes.so.1.1.1 and /dev/null differ
diff --git a/rpms/awips2.core/Installer.ldm/src/awips2-ldm.6.11.2.tar.gz b/rpms/awips2.core/Installer.ldm/src/awips2-ldm.6.11.2.tar.gz
new file mode 100644
index 0000000000..afc8ef9ed8
Binary files /dev/null and b/rpms/awips2.core/Installer.ldm/src/awips2-ldm.6.11.2.tar.gz differ
diff --git a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch0 b/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch0
deleted file mode 100644
index 85c992ed5d..0000000000
--- a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch0
+++ /dev/null
@@ -1,241 +0,0 @@
-diff -uNr ldm-6.8.1/src/pqact/filel.c ldm-6.8.1-patch0/src/pqact/filel.c
---- ldm-6.8.1/src/pqact/filel.c 2008-09-17 11:35:18.000000000 -0500
-+++ ldm-6.8.1-patch0/src/pqact/filel.c 2011-02-22 12:31:58.000000000 -0600
-@@ -15,6 +15,7 @@
- #define PATH_MAX 255 /* _POSIX_PATH_MAX */
- #endif /* !PATH_MAX */
- #include
-+#include
- #include
- #include /* O_RDONLY et al */
- #include /* access, lseek */
-@@ -44,6 +45,13 @@
- extern pqueue* pq;
-
- static unsigned maxEntries = 0;
-+static int shared_id = -1;
-+static int sem_id = -1;
-+static unsigned shared_size;
-+static unsigned queue_counter = 0;
-+static unsigned largest_queue_element = 0;
-+static union semun semarg;
-+
-
- /*
- * Defined in pqcat.c
-@@ -524,6 +532,9 @@
- }
- else if (0 == strncmp(*av,"-log",4)) {
- entry->flags |= FL_LOG;
-+ }
-+ else if (0 == strncmp(*av,"-edex",3)) {
-+ entry->flags |= FL_EDEX;
- }
- }
-
-@@ -707,6 +718,19 @@
- : entry->handle.fd , prodp->info.ident);
-
- if (entry != NULL) {
-+ if(entry->flags & FL_EDEX) {
-+ if(shared_id == -1) {
-+ uerror("Notification specified but shared memory is not available.");
-+ }
-+ else {
-+ edex_message * queue = (edex_message *)shmat(shared_id, (void *)0, 0);
-+ strncpy(queue[queue_counter].filename, entry->path, 4096);
-+ strncpy(queue[queue_counter].ident, prodp->info.ident, 256);
-+ if(shmdt(queue) == -1) {
-+ uerror("Detaching shared memory failed.");
-+ }
-+ }
-+ }
- size_t sz = prodp->info.sz;
- void* data =
- (entry->flags & FL_STRIP)
-@@ -734,11 +758,23 @@
-
- status = atFinishedArgs(argc, argv, entry);
-
-- if ((status == 0) && (entry->flags & FL_LOG))
-+/* if ((status == 0) && (entry->flags & FL_LOG))
- unotice("Filed in \"%s\": %s",
- argv[argc-1],
- s_prod_info(NULL, 0, &prodp->info, ulogIsDebug()));
- } /* data written */
-+ if (status == 0) {
-+ if(entry->flags & FL_LOG)
-+ unotice("Filed in \"%s\": %s",
-+ argv[argc-1],
-+ s_prod_info(NULL, 0, &prodp->info, ulogIsDebug()));
-+ if(entry->flags & FL_EDEX && shared_id != -1) {
-+ semarg.val = queue_counter;
-+ int semreturn = semctl(sem_id, 1, SETVAL, semarg);
-+ queue_counter = (queue_counter == largest_queue_element) ? queue_counter = 0 : queue_counter + 1;
-+ }
-+ }
-+ }
-
- if (data != prodp->data)
- free(data);
-@@ -2289,6 +2325,30 @@
- return error;
- }
-
-+int
-+set_shared_space(
-+ int shid,
-+ int semid,
-+ unsigned size)
-+{
-+ int error;
-+ if(shid == -1 || semid == -1) {
-+ uerror("Shared memory is not available. Notification system disabled.");
-+ error = -1;
-+ }
-+ else {
-+ shared_id = shid;
-+ sem_id = semid;
-+ shared_size = size;
-+ semarg.val = size;
-+ semctl(sem_id, 0, SETVAL, semarg);
-+ semarg.val = -1;
-+ semctl(sem_id, 1, SETVAL, semarg);
-+ largest_queue_element = shared_size - 1;
-+ error = 0;
-+ }
-+ return error;
-+}
-
- /*
- * Returns the maximum number of file-descriptors that one process can have
-diff -uNr ldm-6.8.1/src/pqact/filel.h ldm-6.8.1-patch0/src/pqact/filel.h
---- ldm-6.8.1/src/pqact/filel.h 2008-09-17 11:35:45.000000000 -0500
-+++ ldm-6.8.1-patch0/src/pqact/filel.h 2011-02-22 12:16:40.000000000 -0600
-@@ -19,6 +19,7 @@
- #define FL_LOG 64
- #define FL_METADATA 128 /* write data-product metadata */
- #define FL_NODATA 256 /* don't write data */
-+#define FL_EDEX 512 /* send message to memory segment */
-
- #ifdef __cplusplus
- extern "C" {
-@@ -44,8 +45,23 @@
- extern void fl_close_all(void);
- extern void endpriv(void);
- extern int set_avail_fd_count(unsigned fdCount);
-+extern int set_shared_space(int shid, int semid, unsigned size);
- extern long openMax();
-
-+struct edex_message {
-+ char filename[4096];
-+ char ident[256];
-+};
-+typedef struct edex_message edex_message;
-+
-+union semun {
-+ int val; /* Value for SETVAL */
-+ struct semid_ds *buf; /* Buffer for IPC_STAT, IPC_SET */
-+ unsigned short *array; /* Array for GETALL, SETALL */
-+ struct seminfo *__buf; /* Buffer for IPC_INFO
-+ (Linux specific) */
-+};
-+
- #ifdef __cplusplus
- }
- #endif
-diff -uNr ldm-6.8.1/src/pqact/pqact.c ldm-6.8.1-patch0/src/pqact/pqact.c
---- ldm-6.8.1/src/pqact/pqact.c 2008-09-04 15:09:52.000000000 -0500
-+++ ldm-6.8.1-patch0/src/pqact/pqact.c 2011-02-22 12:39:21.000000000 -0600
-@@ -20,6 +20,9 @@
- #include
- #include
- #include
-+#include
-+#include
-+#include
- #ifndef NO_WAITPID
- #include
- #endif
-@@ -44,7 +47,10 @@
-
- static volatile int hupped = 0;
- static char* conffilename = 0;
--
-+static int shmid = -1;
-+static int semid = -1;
-+static key_t key;
-+static key_t semkey;
- timestampt oldestCursor;
- timestampt currentCursor;
- int currentCursorSet = 0;
-@@ -104,6 +110,15 @@
- /*EMPTY*/;
- }
-
-+ if(shmid != -1) {
-+ unotice("Deleting shared segment.");
-+ shmctl(shmid, IPC_RMID, NULL);
-+ }
-+ if(semid != -1) {
-+ semctl(semid, 0, IPC_RMID);
-+ }
-+
-+
- (void)closeulog();
- }
-
-@@ -203,6 +218,8 @@
- (void)fprintf(stderr,
- "\t-d datadir cd to \"datadir\" before interpreting filenames in\n");
- (void)fprintf(stderr,
-+ "\t-e EDEX! \n");
-+ (void)fprintf(stderr,
- "\t conffile (default %s)\n",
- DEFAULT_DATADIR);
- (void)fprintf(stderr,
-@@ -237,6 +254,7 @@
- prod_class_t clss;
- int toffset = TOFFSET_NONE;
- int loggingToStdErr = 0;
-+ unsigned queue_size = 5000;
-
- conffilename = DEFAULT_CONFFILENAME;
-
-@@ -278,7 +296,7 @@
-
- opterr = 1;
-
-- while ((ch = getopt(ac, av, "vxl:d:f:q:o:p:i:t:")) != EOF)
-+ while ((ch = getopt(ac, av, "vxel:d:f:q:o:p:i:t:")) != EOF)
- switch (ch) {
- case 'v':
- logmask |= LOG_UPTO(LOG_INFO);
-@@ -286,6 +304,12 @@
- case 'x':
- logmask |= LOG_MASK(LOG_DEBUG);
- break;
-+ case 'e':
-+ key = ftok("/etc/rc.d/rc.local",'R');
-+ semkey = ftok("/etc/rc.d/rc.local",'e');
-+ shmid = shmget(key, sizeof(edex_message) * queue_size, 0666 | IPC_CREAT);
-+ semid = semget(semkey, 2, 0666 | IPC_CREAT);
-+ break;
- case 'l':
- logfname = optarg;
- break;
-@@ -421,6 +445,14 @@
- }
-
- /*
-+ * Inform the "filel" module of the shared memory segment
-+ */
-+ if (shmid != -1 && semid != -1)
-+ {
-+ set_shared_space(shmid, semid, queue_size);
-+ }
-+
-+ /*
- * Compile the pattern.
- */
- if (re_isPathological(spec.pattern))
diff --git a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch1 b/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch1
deleted file mode 100644
index 9994bd94f1..0000000000
--- a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch1
+++ /dev/null
@@ -1,165 +0,0 @@
-diff -uNr ldm-6.8.1/src/pqact/filel.c ldm-6.8.1.patch1-dir/src/pqact/filel.c
---- ldm-6.8.1/src/pqact/filel.c 2011-03-15 19:37:31.000000000 -0500
-+++ ldm-6.8.1.patch1-dir/src/pqact/filel.c 2011-03-15 19:42:54.000000000 -0500
-@@ -51,8 +51,6 @@
- static unsigned queue_counter = 0;
- static unsigned largest_queue_element = 0;
- static union semun semarg;
--
--
- /*
- * Defined in pqcat.c
- */
-@@ -584,7 +582,7 @@
- strncpy(entry->path, path, PATH_MAX);
- entry->path[PATH_MAX-1] = 0; /* just in case */
-
-- udebug(" unio_open: %d", entry->handle.fd);
-+ udebug(" unio_open: %d %s", entry->handle.fd, entry->path);
- } /* output-file set to close_on_exec */
-
- if (error) {
-@@ -712,10 +710,10 @@
- int status = -1; /* failure */
- fl_entry* entry = get_fl_entry(UNIXIO, argc, argv);
-
-- udebug(" unio_prodput: %d %s",
-+ udebug(" unio_prodput: %d",
- entry == NULL
- ? -1
-- : entry->handle.fd , prodp->info.ident);
-+ : entry->handle.fd);
-
- if (entry != NULL) {
- if(entry->flags & FL_EDEX) {
-@@ -751,7 +749,6 @@
- }
-
- status = unio_put(entry, prodp->info.ident, data, sz);
--
- if (status == 0) {
- if (entry->flags & FL_OVERWRITE)
- (void)ftruncate(entry->handle.fd, sz);
-@@ -774,13 +771,13 @@
- queue_counter = (queue_counter == largest_queue_element) ? queue_counter = 0 : queue_counter + 1;
- }
- }
-- }
-+ } /* data written */
-
- if (data != prodp->data)
- free(data);
- } /* data != NULL */
- } /* entry != NULL */
--
-+ udebug(" unio_prodput: complete for %s at location %s", prodp->info.ident, entry->path);
- return status;
- }
-
-diff -uNr ldm-6.8.1/src/pqact/palt.c ldm-6.8.1.patch1-dir/src/pqact/palt.c
---- ldm-6.8.1/src/pqact/palt.c 2009-01-06 14:44:09.000000000 -0600
-+++ ldm-6.8.1.patch1-dir/src/pqact/palt.c 2011-03-16 09:21:01.000000000 -0500
-@@ -552,6 +552,54 @@
- return epochTime;
- }
-
-+static void
-+seq_sub(
-+ const char* istring, /* input string, possibly including
-+ indicators to be expanded */
-+ char* ostring, /* output string, with date indicators
-+ expanded */
-+ u_int seqnum) /* UTC-based product-time (might be "now") */
-+{
-+ static int seqfirst = 1; /* true only first time called */
-+ static regex_t seqprog; /* compiled regexp for date indicator */
-+ static regmatch_t seqpmatch[1]; /* substring matching information */
-+ const char* e2; /* pointer to last character of seq
-+ * indicator substring */
-+ const char* is; /* pointer to next input character */
-+ /*
-+ * Compile regular-expression on first call.
-+ */
-+ if (seqfirst) {
-+ static char seq_exp[] = "\\(seq\\)";
-+
-+ if (regcomp(&seqprog, seq_exp, REG_EXTENDED) != 0)
-+ serror("Bad regular expression or out of memory: %s", seq_exp);
-+ seqfirst = 0;
-+ }
-+
-+ for (is = istring; regexec(&seqprog, is, 1, seqpmatch, 0) == 0; is = e2) {
-+ /*
-+ * Process the next date indicator in "istring".
-+ */
-+ printf("%d, %d\n", seqpmatch[0].rm_so, seqpmatch[0].rm_eo);
-+ const char *const s0 = &is[seqpmatch[0].rm_so];
-+ /* start of entire substring match */
-+
-+ e2 = &is[seqpmatch[0].rm_eo]; /* points to last char of substring */
-+
-+ /*
-+ * Copy stuff before match.
-+ */
-+ {
-+ while (is < s0)
-+ *ostring++ = *is++;
-+ }
-+
-+ int printed = sprintf(ostring, "%d", seqnum);
-+ ostring+=printed;
-+ }
-+ (void)strcpy(ostring, is); /* copy rest of input to output */
-+}
-
- /*
- from ldm3/dd_regexp.c,v 1.24 1991/03/02 17:32:08
-@@ -1005,6 +1053,7 @@
-
- date_sub("(02:yyyy)-(02:mm)-(02:dd)", buf, may31);
- assert(strcmp(buf, "2007-05-02") == 0);
-+ seq_sub("/tmp/(seq).txt", buf, 1234);
-
- exit(0);
- }
-@@ -1110,8 +1159,11 @@
- date_sub(buf2, buf1, prod->info.arrival.tv_sec);
- buf1[sizeof(buf1)-1] = 0;
-
-+ seq_sub(buf2, buf1, prod->info.seqno);
-+ buf1[sizeof(buf1) -1] = 0;
-+
- if (ulogIsVerbose())
-- uinfo(" %s: %s", s_actiont(&pal->action), buf1);
-+ uinfo(" %s: %s and the ident is %s", s_actiont(&pal->action), buf1, prod->info.ident);
-
- argc = tokenize(buf1, argv, ARRAYLEN(argv));
-
-diff -uNr ldm-6.8.1/src/pqact/pqact.c ldm-6.8.1.patch1-dir/src/pqact/pqact.c
---- ldm-6.8.1/src/pqact/pqact.c 2011-03-15 19:37:31.000000000 -0500
-+++ ldm-6.8.1.patch1-dir/src/pqact/pqact.c 2011-03-15 19:44:56.000000000 -0500
-@@ -118,7 +118,6 @@
- semctl(semid, 0, IPC_RMID);
- }
-
--
- (void)closeulog();
- }
-
-@@ -218,8 +217,6 @@
- (void)fprintf(stderr,
- "\t-d datadir cd to \"datadir\" before interpreting filenames in\n");
- (void)fprintf(stderr,
-- "\t-e EDEX! \n");
-- (void)fprintf(stderr,
- "\t conffile (default %s)\n",
- DEFAULT_DATADIR);
- (void)fprintf(stderr,
-@@ -289,6 +286,7 @@
- extern int optind;
- extern int opterr;
- extern char *optarg;
-+
- int ch;
- int logmask = (LOG_MASK(LOG_ERR) | LOG_MASK(LOG_WARNING) |
- LOG_MASK(LOG_NOTICE));
diff --git a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch2 b/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch2
deleted file mode 100644
index 8394365e4e..0000000000
--- a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.patch2
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -crB ldm-6.8.1/src/pqact/palt.c ldm-6.8.1-patch2/src/pqact/palt.c
-*** ldm-6.8.1/src/pqact/palt.c 2012-03-21 14:43:55.000000000 -0500
---- ldm-6.8.1-patch2/src/pqact/palt.c 2012-03-21 14:48:12.000000000 -0500
-***************
-*** 1148,1153 ****
---- 1148,1154 ----
- */
- static char buf1[_POSIX_ARG_MAX];
- static char buf2[_POSIX_ARG_MAX];
-+ static char final_buf[_POSIX_ARG_MAX];
- static char* argv[1 + _POSIX_ARG_MAX/2];
-
- regsub(pal, prod->info.ident, buf1);
-***************
-*** 1159,1171 ****
- date_sub(buf2, buf1, prod->info.arrival.tv_sec);
- buf1[sizeof(buf1)-1] = 0;
-
-! seq_sub(buf2, buf1, prod->info.seqno);
-! buf1[sizeof(buf1) -1] = 0;
-
- if (ulogIsVerbose())
-! uinfo(" %s: %s and the ident is %s", s_actiont(&pal->action), buf1, prod->info.ident);
-
-! argc = tokenize(buf1, argv, ARRAYLEN(argv));
-
- if (argc < ARRAYLEN(argv))
- {
---- 1160,1172 ----
- date_sub(buf2, buf1, prod->info.arrival.tv_sec);
- buf1[sizeof(buf1)-1] = 0;
-
-! seq_sub(buf1, final_buf, prod->info.seqno);
-! final_buf[sizeof(final_buf) -1] = 0;
-
- if (ulogIsVerbose())
-! uinfo(" %s: %s and the ident is %s", s_actiont(&pal->action), final_buf, prod->info.ident);
-
-! argc = tokenize(final_buf, argv, ARRAYLEN(argv));
-
- if (argc < ARRAYLEN(argv))
- {
diff --git a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.tar.gz b/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.tar.gz
deleted file mode 100644
index b2e3d8c677..0000000000
Binary files a/rpms/awips2.core/Installer.ldm/src/ldm-6.8.1.tar.gz and /dev/null differ
diff --git a/rpms/build/i386/build.sh b/rpms/build/i386/build.sh
index b19bce49fb..37dbb8eaa6 100644
--- a/rpms/build/i386/build.sh
+++ b/rpms/build/i386/build.sh
@@ -375,11 +375,6 @@ if [ "${1}" = "-qpid" ]; then
fi
if [ "${1}" = "-ldm" ]; then
- # Ensure that the user has root privileges.
- if [ ! ${UID} = 0 ]; then
- echo "ERROR: You must have root privileges to build ldm."
- exit 1
- fi
buildRPM "awips2-ldm"
exit 0
diff --git a/rpms/build/x86_64/build.sh b/rpms/build/x86_64/build.sh
index f7f56475d1..1ad54435b8 100644
--- a/rpms/build/x86_64/build.sh
+++ b/rpms/build/x86_64/build.sh
@@ -217,6 +217,7 @@ if [ "${1}" = "-full" ]; then
buildRPM "awips2-python-shapely"
buildRPM "awips2-postgres"
buildRPM "awips2-pgadmin3"
+ buildRPM "awips2-ldm"
exit 0
fi
@@ -257,7 +258,8 @@ if [ "${1}" = "-qpid" ]; then
fi
if [ "${1}" = "-ldm" ]; then
- echo "INFO: AWIPS II currently does not support a 64-bit version of ldm."
+ buildRPM "awips2-ldm"
+
exit 0
fi