Skip to content
Commits on Source (25)
# BEGIN COPYRIGHT BLOCK
# (C) 2018 Red Hat, Inc.
# All rights reserved.
# END COPYRIGHT BLOCK
services:
- docker
env:
- FEDORA=27
- FEDORA=28
install:
- docker pull registry.fedoraproject.org/fedora:$FEDORA
- docker run
--name=container
--detach
-i
-v $(pwd):/root/nuxwdog
registry.fedoraproject.org/fedora:$FEDORA
- docker exec container dnf install -y dnf-plugins-core make rpm-build
- docker exec container dnf builddep -y --spec /root/nuxwdog/nuxwdog.spec
- docker exec container /root/nuxwdog/build_nuxwdog
script:
- docker exec container rpm -ivh /root/nuxwdog/release/dist/rpmpkg/RPMS/x86_64/*
\ No newline at end of file
This diff is collapsed.
# --- BEGIN COPYRIGHT BLOCK ---
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301 USA
#
# Copyright (C) 2007 Red Hat, Inc.
# All rights reserved.
# --- END COPYRIGHT BLOCK ---
# look for included m4 files in the ./m4/ directory
ACLOCAL_AMFLAGS = -I m4
AUTOMAKE_OPTIONS = foreign
SUBDIRS = . lib/perl/Nuxwdogclient
#------------------------
# Compiler Flags
#------------------------
DEBUG_DEFINES = @debug_defs@
NUXWDOG_INCLUDES = @jni_inc@ -I$(srcdir)/build/include
# These paths are dependent on the settings of prefix and exec_prefix
# which may be specified at make time. So we cannot use AC_DEFINE in
# the configure.ac because that would set the values prior to their
# being defined. Defining them here ensures that they are properly
# expanded before use. See create_instance.h for more details. The
# quoting ensures that the values are # quoted for the shell command,
# and the value expands to a quoted string value in the header file
# (e.g. - #define LOCALSTATEDIR "/var"; without the quotes, it would
# be #define LOCALSTATEDIR /var which would be an error).
PATH_DEFINES = -DLOCALSTATEDIR="\"$(localstatedir)\"" \
-DSYSCONFDIR="\"$(sysconfdir)\"" -DLIBDIR="\"$(libdir)\"" \
-DBINDIR="\"$(bindir)\"" -DDATADIR="\"$(datadir)\"" \
-DDOCDIR="\"$(docdir)\"" -DLIBEXECDIR="\"$(libexecdir)\""
AM_CPPFLAGS = $(DEBUG_DEFINES) $(NUXWDOG_INCLUDES) $(PATH_DEFINES)
# We need to make sure that libpthread is linked before libc on HP-UX.
if HPUX
AM_LDFLAGS = -lpthread
endif
#------------------------
# Linker Flags
#------------------------
NSPR_LINK = @nspr_lib@ -lplc4 -lplds4 -lnspr4
SELINUX_LINK = -lselinux
KEYUTILS_LINK = -lkeyutils
LIBSOCKET=@LIBSOCKET@
LIBNSL=@LIBNSL@
LIBDL=@LIBDL@
LIBCSTD=@LIBCSTD@
LIBCRUN=@LIBCRUN@
#------------------------
# Install Paths
#------------------------
licensedir = $(prefix)@licensedir@
nuxwdog_jardir = $(prefix)@nuxwdog_jardir@
#------------------------
# Build Products
#------------------------
lib_LTLIBRARIES = libnuxwdog.la libnuxwdog-jni.la
bin_PROGRAMS = nuxwdog
#------------------------
# Installed Files
#------------------------
license_DATA = $(srcdir)/LICENSE
nuxwdog_jar_SCRIPTS = $(srcdir)/build/jars/nuxwdog.jar
#////////////////////////////////////////////////////////////////
#
# Dynamic Libraries
#
#////////////////////////////////////////////////////////////////
#------------------------
# libnuxwdog
#------------------------
library_includedir=$(includedir)/nuxwdog
library_include_HEADERS = $(srcdir)/src/com/redhat/nuxwdog/WatchdogClient.h $(srcdir)/src/com/redhat/nuxwdog/wdservermessage.h \
$(srcdir)/src/com/redhat/nuxwdog/WatchdogClientJNI.h
libnuxwdog_la_SOURCES = src/com/redhat/nuxwdog/WatchdogClient.cpp \
src/com/redhat/nuxwdog/wdservermessage.cpp \
src/com/redhat/nuxwdog/wdutils.cpp \
src/com/redhat/nuxwdog/WatchdogClientCFunc.c
libnuxwdog_la_CPPFLAGS = $(AM_CPPFLAGS) @nspr_inc@ -fno-strict-aliasing
libnuxwdog_la_LDFLAGS = $(AM_LDFLAGS) -version-info $(GENERIC_LIBRARY_VERSION) --release $(VERSION)
libnuxwdog_la_LIBADD = $(NSPR_LINK) \
$(LIBCSTD) $(LIBCRUN)
#--------------------------
# libnuxwdog-jni
#--------------------------
libnuxwdog_jni_la_SOURCES = src/com/redhat/nuxwdog/WatchdogClientJNI.cpp
libnuxwdog_jni_la_CPPFLAGS = $(AM_CPPFLAGS)
libnuxwdog_jni_la_LDFLAGS = $(AM_LDFLAGS) -avoid-version
libnuxwdog_jni_la_LIBADD = -lnuxwdog $(LIBCSTD) $(LIBCRUN)
#////////////////////////////////////////////////////////////////
#
# Programs
#
#////////////////////////////////////////////////////////////////
nuxwdog_SOURCES = src/com/redhat/nuxwdog/watchdog.cpp \
src/com/redhat/nuxwdog/wdconf.cpp \
src/com/redhat/nuxwdog/wdsignals.cpp \
src/com/redhat/nuxwdog/wdpwd.cpp \
src/com/redhat/nuxwdog/wdlog.cpp \
src/com/redhat/nuxwdog/wdservermessage.cpp \
src/com/redhat/nuxwdog/wdlsmgr.cpp \
src/com/redhat/nuxwdog/wdutils.cpp
nuxwdog_CPPFLAGS = $(AM_CPPFLAGS) @nspr_inc@ -fno-strict-aliasing
nuxwdog_LDADD = $(NSPR_LINK) $(LIBCSTD) $(LIBCRUN) $(SELINUX_LINK) $(KEYUTILS_LINK)
#////////////////////////////////////////////////////////////////
#
# Wrappers
#
#////////////////////////////////////////////////////////////////
#------------------------
# Man pages
#------------------------
man_MANS = src/doc/nuxwdog.1
EXTRA_DIST = src/doc/nuxwdog.1
This diff is collapsed.
Nuxwdog is a watchdog daemon that can be used to start, stop, monitor and reconfigure server programs.
It is based on the uxwdog code that is used to start the Netscape Enterprise Server (NES).
Nuxwdog is used in Red Hat Certificate System 8 to start all of the Java-based and C/C++ based servers.
These servers require passwords to access security databases in order to start, but there was a requirement
that no unencrypted password files be stored on the system. In this case, nuxwdog is used to prompt the user
for the relevant passwords during server startup. These passwords are then cached by the nuxwdog, so that
nuxwdog can restart the server without human intervention. This is particularly important for automatically
restarting the server in case of a server crash.
More details on how nuxwdog works and how to configure it can be found on the Dogtag wiki:
http://pki.fedoraproject.org/wiki/Nuxwdog
This diff is collapsed.
#!/bin/sh
# --- BEGIN COPYRIGHT BLOCK ---
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301 USA
#
# Copyright (C) 2007 Red Hat, Inc.
# All rights reserved.
# --- END COPYRIGHT BLOCK ---
# Check autoconf version
AC_VERSION=`autoconf --version | grep '^autoconf' | sed 's/.*) *//'`
case $AC_VERSION in
'' | 0.* | 1.* | 2.[0-4]* | 2.[0-9] | 2.5[0-8]* )
echo "You must have autoconf version 2.59 or later installed (found version $AC_VERSION)."
exit 1
;;
* )
echo "Found autoconf version $AC_VERSION"
;;
esac
# Check automake version
AM_VERSION=`automake --version | grep '^automake' | sed 's/.*) *//'`
case $AM_VERSION in
'' | 0.* | 1.[0-8].* | 1.9.[0-5]* )
echo "You must have automake version 1.9.6 or later installed (found version $AM_VERSION)."
exit 1
;;
* )
echo "Found automake version $AM_VERSION"
;;
esac
# Check libtool version
LT_VERSION=`libtool --version | grep ' libtool)' | sed 's/.*) \([0-9][0-9.]*\)[^ ]* .*/\1/'`
case $LT_VERSION in
'' | 0.* | 1.[0-4]* | 1.5.[0-9] | 1.5.[0-1]* | 1.5.2[0-1]* )
echo "You must have libtool version 1.5.22 or later installed (found version $LT_VERSION)."
exit 1
;;
* )
echo "Found libtool version $LT_VERSION"
;;
esac
# Run autoreconf
echo "Running autoreconf -fvi"
autoreconf -fvi
<!-- ### BEGIN COPYRIGHT BLOCK ###
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Copyright (C) 2007 Red Hat, Inc.
All rights reserved.
### END COPYRIGHT BLOCK ### -->
<project name="dog" default="main" basedir=".">
<import file="config/product.xml"/>
<import file="config/product-ext.xml" optional="true"/>
<property name="jss.home" value="${jni-jar.home}${dirsec}"/>
<property name="jss.jar" value="${jss.home}/jss4.jar"/>
<property name="ldapjdk.jar" value="${jar.home}/ldapjdk.jar"/>
<path id="classpath">
<pathelement location="${jss.jar}"/>
<pathelement location="${ldapjdk.jar}"/>
</path>
<target name="clean"
depends=""
description="--> remove component directories">
<echo message="${begin.clean.log.message}"/>
<delete dir="${dist.base}"/>
<delete dir="${build.dir}"/>
<echo message="${end.clean.log.message}"/>
</target>
<target name="download"
depends=""
description="--> download dependent components">
<echo message="${begin.download.log.message}"/>
<echo message="${empty.download.log.message}"/>
<echo message="${end.download.log.message}"/>
</target>
<target name="compile_java"
depends=""
description="--> compile java source code into classes">
<echo message="${begin.compile.java.log.message}"/>
<mkdir dir="${build.classes}"/>
<javac debug="on"
srcdir="${src.dir}/com/redhat/${product.prefix}${product}"
destdir="${build.classes}">
<classpath refid="classpath"/>
</javac>
<echo message="${end.compile.java.log.message}"/>
</target>
<target name="build_jars"
depends="compile_java"
description="--> generate jar files">
<echo message="${begin.build.jars.log.message}"/>
<mkdir dir="${build.jars}"/>
<jar jarfile="${build.jars}/${product.prefix}${product}.jar">
<fileset dir="${build.classes}">
<include name="com/redhat/${product.prefix}${product}/**"/>
</fileset>
</jar>
<echo message="${end.build.jars.log.message}"/>
</target>
<target name="build_jni_headers"
depends="compile_java"
description="--> generate jni header files">
<echo message="${begin.build.jni.headers.log.message}"/>
<mkdir dir="${build.dir}/include"/>
<exec executable="javah" failonerror="true">
<arg value="-classpath"/>
<arg value="${build.classes}:${jss.jar}:${ldapjdk.jar}"/>
<arg value="-jni"/>
<arg value="-d"/>
<arg value="${build.dir}/include"/>
<arg value="com.redhat.${product.prefix}${product}.WatchdogClient"/>
</exec>
<echo message="${end.build.jni.headers.log.message}"/>
</target>
<target name="build_header_files"
depends="compile_java"
description="--> store C header files">
<echo message="${begin.build.headers.log.message}"/>
<mkdir dir="${build.dir}/usr/include"/>
<copy todir="${build.dir}/usr/include">
<fileset dir="${src.dir}/com/redhat/${product.prefix}${product}">
<include name="WatchdogClient.h"/>
<include name="wdservermessage.h"/>
</fileset>
</copy>
</target>
<target name="build"
depends="build_jars,build_jni_headers,build_header_files"
description="--> build classes, jars, and jni headers">
<echo message="${notify.build.log.message}"/>
</target>
<target name="compile_junit_tests"
depends="build"
description="--> compile junit test source code">
<echo message="${begin.compile.junit.tests.log.message}"/>
<echo message="${empty.compile.junit.tests.log.message}"/>
<echo message="${end.compile.junit.tests.log.message}"/>
</target>
<target name="run_junit_tests"
depends="compile_junit_tests"
description="--> execute junit tests">
<echo message="${begin.run.junit.tests.log.message}"/>
<echo message="${empty.run.junit.tests.log.message}"/>
<echo message="${end.run.junit.tests.log.message}"/>
</target>
<target name="verify"
depends="run_junit_tests"
description="--> build and execute junit tests">
<echo message="${notify.verify.log.message}"/>
</target>
<target name="clean_javadocs"
depends=""
description="--> remove javadocs directory">
<echo message="${begin.clean.javadocs.log.message}"/>
<echo message="${empty.clean.javadocs.log.message}"/>
<echo message="${end.clean.javadocs.log.message}"/>
</target>
<target name="compose_javadocs"
depends="build"
description="--> generate javadocs">
<echo message="${begin.compose.javadocs.log.message}"/>
<echo message="${empty.compose.javadocs.log.message}"/>
<echo message="${end.compose.javadocs.log.message}"/>
</target>
<target name="document"
depends="clean_javadocs,compose_javadocs"
description="--> remove old javadocs and compose new javadocs">
<echo message="${notify.document.log.message}"/>
</target>
<target name="distribute_binaries"
depends="document"
description="--> create the zip and gzipped tar binary distributions">
<echo message="${begin.distribute.binaries.log.message}"/>
<mkdir dir="${dist.base.binaries}"/>
<echo message="${begin.binary.wrappers.log.message}"/>
<echo message="${empty.binary.wrappers.log.message}"/>
<echo message="${end.binary.wrappers.log.message}"/>
<echo message="${begin.binary.zip.log.message}"/>
<zip destfile="${dist.base.binaries}/${dist.name}.zip">
<zipfileset dir="./build/jars"
filemode="755"
prefix="${jni-jar.home}">
<include name="**"/>
</zipfileset>
<zipfileset dir="."
filemode="644"
prefix="usr/share/doc/${dist.name}">
<include name="LICENSE"/>
</zipfileset>
</zip>
<echo message="${end.binary.zip.log.message}"/>
<echo message="${begin.binary.tar.log.message}"/>
<tar longfile="gnu"
destfile="${dist.base.binaries}/${dist.name}.tar">
<tarfileset dir="./build/jars"
mode="755"
prefix="${dist.name}/${jni-jar.home}">
<include name="**"/>
</tarfileset>
<tarfileset dir="."
mode="644"
prefix="usr/share/doc/${dist.name}">
<include name="LICENSE"/>
</tarfileset>
</tar>
<echo message="${end.binary.tar.log.message}"/>
<echo message="${begin.binary.gtar.log.message}"/>
<gzip destfile="${dist.base.binaries}/${dist.name}.tar.gz"
src="${dist.base.binaries}/${dist.name}.tar"/>
<delete file="${dist.base.binaries}/${dist.name}.tar"/>
<delete dir="${dist.name}"/>
<checksum fileext=".md5">
<fileset dir="${dist.base.binaries}/">
<include name="**/*"/>
<exclude name="**/*.asc"/>
<exclude name="**/*.md5"/>
</fileset>
</checksum>
<checksum fileext=".sha1"
algorithm="SHA">
<fileset dir="${dist.base.binaries}/">
<include name="**/*"/>
<exclude name="**/*.asc"/>
<exclude name="**/*.md5"/>
</fileset>
</checksum>
<echo message="${end.binary.gtar.log.message}"/>
<echo message="${end.distribute.binaries.log.message}"/>
</target>
<target name="distribute_source"
depends=""
description="--> create the zip and gzipped tar source distributions">
<echo message="${begin.distribute.source.log.message}"/>
<mkdir dir="${dist.base.source}"/>
<echo message="${begin.source.zip.log.message}"/>
<zip destfile="${dist.base.source}/${src.dist.name}.zip">
<zipfileset dir="."
filemode="644"
prefix="${src.dist.name}">
<include name="LICENSE"/>
<include name="Makefile.*"/>
<include name="aclocal.m4"/>
<include name="build.xml"/>
<include name="compile"/>
<include name="config/product*.xml"/>
<include name="config/release*.xml"/>
<include name="config.guess"/>
<include name="config.h.in"/>
<include name="config.sub"/>
<include name="configure.ac"/>
<include name="depcomp"/>
<include name="install-sh"/>
<include name="ltmain.sh"/>
<include name="m4/**"/>
<include name="missing"/>
<include name="release"/>
<include name="src/**"/>
<include name="lib/**"/>
</zipfileset>
<zipfileset dir="."
filemode="755"
prefix="${src.dist.name}">
<include name="autogen.sh"/>
<include name="configure"/>
<include name="setup_package"/>
</zipfileset>
</zip>
<echo message="${end.source.zip.log.message}"/>
<echo message="${begin.source.tar.log.message}"/>
<tar longfile="gnu"
destfile="${dist.base.source}/${src.dist.name}.tar">
<tarfileset dir="."
mode="644"
prefix="${src.dist.name}">
<include name="LICENSE"/>
<include name="Makefile.*"/>
<include name="aclocal.m4"/>
<include name="build.xml"/>
<include name="compile"/>
<include name="config/product*.xml"/>
<include name="config/release*.xml"/>
<include name="config.guess"/>
<include name="config.h.in"/>
<include name="config.sub"/>
<include name="configure.ac"/>
<include name="depcomp"/>
<include name="install-sh"/>
<include name="ltmain.sh"/>
<include name="m4/**"/>
<include name="missing"/>
<include name="release"/>
<include name="src/**"/>
<include name="lib/**"/>
</tarfileset>
<tarfileset dir="."
mode="755"
prefix="${src.dist.name}">
<include name="autogen.sh"/>
<include name="configure"/>
<include name="setup_package"/>
</tarfileset>
</tar>
<echo message="${end.source.tar.log.message}"/>
<echo message="${begin.source.gtar.log.message}"/>
<gzip destfile="${dist.base.source}/${src.dist.name}.tar.gz"
src="${dist.base.source}/${src.dist.name}.tar"/>
<delete file="${dist.base.source}/${src.dist.name}.tar"/>
<delete dir="${dist.name}"/>
<checksum fileext=".md5">
<fileset dir="${dist.base.source}/">
<include name="**/*"/>
<exclude name="**/*.asc"/>
<exclude name="**/*.md5"/>
</fileset>
</checksum>
<checksum fileext=".sha1"
algorithm="SHA">
<fileset dir="${dist.base.source}/">
<include name="**/*"/>
<exclude name="**/*.asc"/>
<exclude name="**/*.md5"/>
</fileset>
</checksum>
<echo message="${end.source.gtar.log.message}"/>
<echo message="${end.distribute.source.log.message}"/>
</target>
<target name="distribute"
depends="distribute_binaries,distribute_source"
description="--> create binary and source component distributions">
<echo message="${notify.distribute.log.message}"/>
</target>
<target name="main"
depends="clean,distribute"
description="--> clean, build, verify, document, distribute [default]">
<echo message="${notify.main.log.message}"/>
</target>
</project>
#!/bin/bash
# BEGIN COPYRIGHT BLOCK
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
#
# (C) 2007 Red Hat, Inc.
# All rights reserved.
# END COPYRIGHT BLOCK
# Always switch into the base directory of this
# shell script prior to executing it so that all
# of its output is written to this directory
cd `dirname $0`
# Retrieve the directory name housing this component
PWD=`pwd`
# Set Red Hat component-specific environment variables
REDHAT_BUILD_SCRIPT=`basename $0`
export REDHAT_BUILD_SCRIPT
REDHAT_COMPONENT=`basename ${PWD}`
export REDHAT_COMPONENT
REDHAT_SPECFILE="nuxwdog.spec"
export REDHAT_SPECFILE
# Set PKI 'ant' environment variables (originally obtained from specfile)
PKI_PRODUCT_UI_FLAVOR_PREFIX=""
export PKI_PRODUCT_UI_FLAVOR_PREFIX
PKI_PRODUCT_PREFIX=""
export PKI_PRODUCT_PREFIX
PKI_PRODUCT="nuxwdog"
export PKI_PRODUCT
PKI_VERSION="1.0.4"
export PKI_VERSION
# Set Red Hat helper variables
REDHAT_COMPONENT_NAME=${PKI_PRODUCT}
export REDHAT_COMPONENT_NAME
# Invoke the shared Red Hat PKI build script
config-ext/build_redhat_pki $@
#! /bin/sh
# Wrapper for compilers which do not understand `-c -o'.
scriptversion=2009-10-06.20; # UTC
# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software
# Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
case $1 in
'')
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand `-c -o'.
Remove `-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file `INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
esac
ofile=
cfile=
eat=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as `compile cc -o foo foo.c'.
# So we strip `-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no `-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# `.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use `[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:
LICENSE AGREEMENT
RED HAT(R) ENTERPRISE LINUX(R)
AND RED HAT(R) APPLICATIONS
This end user license agreement ("EULA") governs the use of any of the
versions of Red Hat Enterprise Linux, any Red Hat Applications (as set
forth at www.redhat.com/licenses/products), and any related updates,
source code, appearance, structure and organization (the "Programs"),
regardless of the delivery mechanism.
1. License Grant. Subject to the following terms, Red Hat, Inc.
("Red Hat") grants to you ("User") a perpetual, worldwide license to
the Programs pursuant to the GNU General Public License v.2. The
Programs are either a modular operating system or an application
consisting of hundreds of software components. With the exception of
certain image files identified in Section 2 below, the license
agreement for each software component is located in the software
component's source code and permits User to run, copy, modify, and
redistribute (subject to certain obligations in some cases) the
software component, in both source code and binary code forms. This
EULA pertains solely to the Programs and does not limit User's rights
under, or grant User rights that supersede, the license terms of any
particular component.
2. Intellectual Property Rights. The Programs and each of their
components are owned by Red Hat and others and are protected under
copyright law and under other laws as applicable. Title to the Programs
and any component, or to any copy, modification, or merged portion
shall remain with the aforementioned, subject to the applicable
license. The "Red Hat" trademark and the "Shadowman" logo are
registered trademarks of Red Hat in the U.S. and other countries. This
EULA does not permit User to distribute the Programs or their
components using Red Hat's trademarks, regardless of whether the copy
has been modified. User should read the information found at
http://www.redhat.com/about/corporate/trademark/
before distributing a copy of the Programs. User may make a commercial
redistribution of the Programs only if, (a) a separate agreement with
Red Hat authorizing such commercial redistribution is executed or other
written permission is granted by Red Hat or (b) User modifies any files
identified as "REDHAT-LOGOS" to remove and replace all images
containing the "Red Hat" trademark or the "Shadowman" logo. Merely
deleting these files may corrupt the Programs.
3. Limited Warranty. Except as specifically stated in this Section
3, a separate agreement with Red Hat, or a license for a particular
component, to the maximum extent permitted under applicable law, the
Programs and the components are provided and licensed "as is" without
warranty of any kind, expressed or implied, including the implied
warranties of merchantability, non-infringement or fitness for a
particular purpose. Red Hat warrants that the media on which the
Programs and the components are furnished will be free from defects in
materials and manufacture under normal use for a period of 30 days from
the date of delivery to User. Red Hat does not warrant that the
functions contained in the Programs will meet User's requirements or
that the operation of the Programs will be entirely error free, appear
precisely as described in the accompanying documentation, or comply
with regulatory requirements. This warranty extends only to the party
that purchases services pertaining to the Programs from Red Hat or a
Red Hat authorized distributor.
4. Limitation of Remedies and Liability. To the maximum extent
permitted by applicable law, User's exclusive remedy under this EULA is
to return any defective media within 30 days of delivery along with a
copy of User's payment receipt and Red Hat, at its option, will replace
it or refund the money paid by User for the media. To the maximum
extent permitted under applicable law, neither Red Hat, any Red Hat
authorized distributor, nor the licensor of any component provided to
User under this EULA will be liable to User for any incidental or
consequential damages, including lost profits or lost savings arising
out of the use or inability to use the Programs or any component, even
if Red Hat, such authorized distributor or licensor has been advised of
the possibility of such damages. In no event shall Red Hat's liability,
an authorized distributor's liability or the liability of the licensor
of a component provided to User under this EULA exceed the amount that
User paid to Red Hat under this EULA during the twelve months preceding
the action.
5. Export Control. As required by the laws of the United States and
other countries, User represents and warrants that it: (a) understands
that the Programs and their components may be subject to export
controls under the U.S. Commerce Department's Export Administration
Regulations ("EAR"); (b) is not located in a prohibited destination
country under the EAR or U.S. sanctions regulations (currently Cuba,
Iran, Iraq, North Korea, Sudan and Syria, subject to change as posted
by the United States government); (c) will not export, re-export, or
transfer the Programs to any prohibited destination or persons or
entities on the U.S. Bureau of Industry and Security Denied Parties
List or Entity List, or the U.S. Office of Foreign Assets Control list
of Specially Designated Nationals and Blocked Persons, or any similar
lists maintained by other countries, without the necessary export
license(s) or authorizations(s); (d) will not use or transfer the
Programs for use in connection with any nuclear, chemical or biological
weapons, missile technology, or military end-uses where prohibited by
an applicable arms embargo, unless authorized by the relevant
government agency by regulation or specific license; (e) understands
and agrees that if it is in the United States and exports or transfers
the Programs to eligible end users, it will, to the extent required by
EAR Section 740.17(e), submit semi-annual reports to the Commerce
Department's Bureau of Industry and Security, which include the name
and address (including country) of each transferee; and (f) understands
that countries including the United States may restrict the import,
use, or export of encryption products (which may include the Programs
and the components) and agrees that it shall be solely responsible for
compliance with any such import, use, or export restrictions.
6. Third Party Programs. Red Hat may distribute third party software
programs with the Programs that are not part of the Programs. These
third party programs are not required to run the Programs, are provided
as a convenience to User, and are subject to their own license terms.
The license terms either accompany the third party software programs or
can be viewed at http://www.redhat.com/licenses/thirdparty/eula.html.
If User does not agree to abide by the applicable license terms for the
third party software programs, then User may not install them. If User
wishes to install the third party software programs on more than one
system or transfer the third party software programs to another party,
then User must contact the licensor of the applicable third party
software programs.
7. General. If any provision of this agreement is held to be
unenforceable, that shall not affect the enforceability of the
remaining provisions. This agreement shall be governed by the laws of
the State of New York and of the United States, without regard to any
conflict of laws provisions. The rights and obligations of the parties
to this EULA shall not be governed by the United Nations Convention on
the International Sale of Goods.
Copyright (C) 2003 Red Hat, Inc. All rights reserved. "Red Hat" and the
Red Hat "Shadowman" logo are registered trademarks of Red Hat, Inc.
"Linux" is a registered trademark of Linus Torvalds. All other trademarks
are the property of their respective owners.
#!/bin/bash
# BEGIN COPYRIGHT BLOCK
# (C) 2010 Red Hat, Inc.
# All rights reserved.
# END COPYRIGHT BLOCK
# Always switch into the base directory above this
# shared shell script prior to executing it so that
# all of its output is written to this directory
cd `dirname $0`/..
# Set pre-defined variables
#
# NOTE: Variables prefixed with "REDHAT" are defined in the invoking script.
# Variables prefixed with "PKI" are defined in this shared script.
# Variables containing no prefix are reserved for the generated script.
#
PKI_ABORT_SCRIPT="false"
PKI_BUILD_XML=build.xml
PKI_EULA="config-ext/EULA"
PKI_RELEASE_DIR=release
PKI_RELEASE_SCRIPT=release.sh
PKI_SHARED_SCRIPT=`basename $0`
# Check the values of the passed-in environment variables
if [ "${REDHAT_BUILD_SCRIPT}" == "" ]; then
printf "ERROR: The 'REDHAT_BUILD_SCRIPT' environment variable is undefined!\n"
PKI_ABORT_SCRIPT="true"
fi
if [ "${REDHAT_COMPONENT}" == "" ]; then
printf "ERROR: The 'REDHAT_COMPONENT' environment variable is undefined!\n"
PKI_ABORT_SCRIPT="true"
fi
if [ "${REDHAT_SPECFILE}" == "" ]; then
printf "ERROR: The 'REDHAT_SPECFILE' environment variable is undefined!\n"
PKI_ABORT_SCRIPT="true"
fi
if [ "${PKI_ABORT_SCRIPT}" == "true" ]; then
printf "\n"
printf "The '${PKI_SHARED_SCRIPT}' shared build script MUST be invoked by "
printf "a\nPKI component-specific build script (e. g. - '${REDHAT_BUILD_SCRIPT}')\n"
printf "which defines ALL environment variables prefixed by 'REDHAT'!\n"
exit 255
fi
# Compute remaining variables by assigning their values from the specfile
PKI_SOURCE_CODE_URL="https://pki.fedoraproject.org/svn/nuxwdog/trunk"
PKI_PRODUCT_BUILD_XML="${PKI_BUILD_XML}"
PKI_PRODUCT_NAME="${PKI_PRODUCT}"
PKI_PRODUCT_SOURCE_PATH="."
PKI_RELEASE_ROOT="${PKI_RELEASE_DIR}"
PKI_SOURCE_CODE_LOCAL_REPOSITORY="."
# Always check that local source code for this PKI component is available
if [ ! -d "${PKI_SOURCE_CODE_LOCAL_REPOSITORY}" ]; then
printf "Please checkout the '${REDHAT_COMPONENT}' source code from:\n\n"
printf " '${PKI_SOURCE_CODE_URL}'\n\n"
printf "to:\n\n"
printf " '${PKI_SOURCE_CODE_LOCAL_REPOSITORY}'\n\n"
exit 255
fi
# Define awk scripts
check_targets='
BEGIN {
success = "false";
}
{
while( getline < FILENAME > 0 ) {
if( substr( $0, 0, 80 ) ~ "target name" ) {
start = substr( $0,
match( $0, "\"" ) + 1 );
target = substr( start,
start,
match( start, "\"" ) - 1 );
if( build_target == target ) {
success = "true";
}
}
}
}
END {
printf( "%s", success );
}'
display_targets='{
while( getline < FILENAME > 0 ) {
if( substr( $0, 0, 80 ) ~ "target name" ) {
start = substr( $0,
match( $0, "\"" ) + 1 );
target = substr( start,
start,
match( start, "\"" ) - 1 );
}
if( substr( $0, 0, 80 ) ~ "description" ) {
start = substr( $0,
match( $0, "\"" ) + 1 );
description[target] = substr( start,
start,
match( start, "\"" ) - 1 );
printf( "'%20s' %s\n", target, description[target] );
}
}
}'
# Provide a usage function
usage() {
if [ $# -gt 0 ] ; then
echo
echo "$1"
fi
echo
echo "Usage: ${REDHAT_BUILD_SCRIPT} [target]"
echo
echo " where [target] is one of the optional values:"
echo
echo " help --> display '${PKI_PRODUCT_NAME}' usage statement"
echo " refresh --> fetch latest '${PKI_PRODUCT_NAME}.spec' file"
awk "$display_targets" ${PKI_PRODUCT_BUILD_XML}
echo
exit 255
}
# Verify that the appropriate number of
# command-line parameters have been entered
# and that a valid target has been specified
if [ $# -eq 0 ] ; then
RELEASE_TARGET=main
BUILD_TARGET=""
elif [ $# -eq 1 ] ; then
if [ "$1" == "help" ]; then
usage
else
SUCCESS=`awk -v build_target=$1 "$check_targets" ${PKI_PRODUCT_BUILD_XML}`
if [ "${SUCCESS}" == "false" ]; then
usage "ERROR: Invalid target '$1' specified for '${PKI_PRODUCT_NAME}'!"
else
RELEASE_TARGET=local
BUILD_TARGET="$1"
fi
fi
elif [ $# -gt 1 ] ; then
usage "ERROR: Too many parameters specified for '${PKI_PRODUCT_NAME}'!"
fi
# This script may ONLY be run on Linux!
PKI_OS=`uname`
if [ "${PKI_OS}" != "Linux" ]; then
printf "The '${REDHAT_BUILD_SCRIPT}' script is ONLY executable on a 'Linux' machine!\n"
exit 255
fi
# Always start with a new release root directory
rm -rf ${PKI_RELEASE_ROOT}
mkdir -p ${PKI_RELEASE_ROOT}
# Copy the source code to the release root
find . -name .svn -prune -o -name *.swp -prune -o -print | cpio -pdum ${PKI_RELEASE_DIR} > /dev/null 2>&1
cd - > /dev/null 2>&1
# Copy the EULA to the release root
cp ${PKI_EULA} ${PKI_RELEASE_ROOT}
# Remove unused files
rm -rf ${PKI_RELEASE_ROOT}/build_*
rm -rf ${PKI_RELEASE_ROOT}/*.spec
if [ -d ${PKI_RELEASE_ROOT}/config-ext ]; then
rm -rf ${PKI_RELEASE_ROOT}/config-ext
fi
# Create the default spec file
cp ${REDHAT_SPECFILE} ${PKI_RELEASE_ROOT}/${PKI_PRODUCT_NAME}.spec
# Use bash-specific syntax to create the default build script
cat >> ${PKI_RELEASE_ROOT}/${PKI_RELEASE_SCRIPT} << END_OF_SCRIPT
#!/bin/bash
#####################################################################
### DO NOT EDIT! This script has been automatically generated! ###
#####################################################################
# Always switch into the base directory of this
# shell script prior to executing it so that all
# of its output is written to this directory
cd \`dirname \$0\`
# Set pre-defined variables
BUILD_SCRIPT=\`basename \$0\`
BUILD_XML=${PKI_BUILD_XML}
SPECFILE=${PKI_PRODUCT_NAME}.spec
# Define awk scripts
check_targets='
BEGIN {
success = "false";
}
{
while( getline < FILENAME > 0 ) {
if( substr( \$0, 0, 80 ) ~ "target name" ) {
start = substr( \$0,
match( \$0, "\"" ) + 1 );
target = substr( start,
start,
match( start, "\"" ) - 1 );
if( build_target == target ) {
success = "true";
}
}
}
}
END {
printf( "%s", success );
}'
display_targets='{
while( getline < FILENAME > 0 ) {
if( substr( \$0, 0, 80 ) ~ "target name" ) {
start = substr( \$0,
match( \$0, "\"" ) + 1 );
target = substr( start,
start,
match( start, "\"" ) - 1 );
}
if( substr( \$0, 0, 80 ) ~ "description" ) {
start = substr( \$0,
match( \$0, "\"" ) + 1 );
description[target] = substr( start,
start,
match( start, "\"" ) - 1 );
printf( "'%20s' %s\n", target, description[target] );
}
}
}'
# Provide a usage function
usage() {
if [ \$# -gt 0 ] ; then
echo
echo "\$1"
fi
echo
echo "Usage: \${BUILD_SCRIPT} [target]"
echo
echo " where [target] is one of the optional values:"
echo
echo " help --> display '${PKI_PRODUCT_NAME}' usage statement"
awk "\$display_targets" \${BUILD_XML}
echo
exit 255
}
# Verify that the appropriate number of
# command-line parameters have been entered
# and that a valid target has been specified
if [ \$# -eq 0 ] ; then
RELEASE_TARGET=main
BUILD_TARGET=main
elif [ \$# -eq 1 ] ; then
if [ "\$1" == "help" ]; then
usage
else
SUCCESS=\`awk -v build_target=\$1 "\$check_targets" \${BUILD_XML}\`
if [ "\${SUCCESS}" == "false" ]; then
usage "ERROR: Invalid target '\$1' specified for '${PKI_PRODUCT_NAME}'!"
else
RELEASE_TARGET=local
BUILD_TARGET="\$1"
fi
fi
elif [ \$# -gt 1 ] ; then
usage "ERROR: Too many parameters specified for '${PKI_PRODUCT_NAME}'!"
fi
# This script may ONLY be run on Linux!
OS=\`uname\`
if [ "\${OS}" != "Linux" ]; then
printf "The '\${BUILD_SCRIPT}' script is ONLY executable on a 'Linux' machine!\n"
exit 255
fi
ant -f config/release.xml -Dproduct.ui.flavor.prefix=\${PKI_PRODUCT_UI_FLAVOR_PREFIX} -Dproduct.prefix=\${PKI_PRODUCT_PREFIX} -Dproduct=\${PKI_PRODUCT} -Dversion=\${PKI_VERSION} -Dbasedir=. -Dspecfile=\${SPECFILE} -Dtarget=\${BUILD_TARGET} \${RELEASE_TARGET}
END_OF_SCRIPT
chmod 00755 ${PKI_RELEASE_ROOT}/${PKI_RELEASE_SCRIPT}
cd ${PKI_RELEASE_ROOT}
./${PKI_RELEASE_SCRIPT} ${BUILD_TARGET}
This diff is collapsed.
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to 1 if the `closedir' function returns void instead of `int'. */
#undef CLOSEDIR_VOID
/* cpu type pa-risc */
#undef CPU_hppa
/* cpu type ia64 */
#undef CPU_ia64
/* cpu type sparc */
#undef CPU_sparc
/* Define to 1 if you have the <arpa/inet.h> header file. */
#undef HAVE_ARPA_INET_H
/* Define to 1 if your system has a working `chown' function. */
#undef HAVE_CHOWN
/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you
don't. */
#undef HAVE_DECL_STRERROR_R
/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'.
*/
#undef HAVE_DIRENT_H
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */
#undef HAVE_DOPRNT
/* Define to 1 if you have the `endpwent' function. */
#undef HAVE_ENDPWENT
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Define to 1 if you have the `fork' function. */
#undef HAVE_FORK
/* Define to 1 if you have the `ftruncate' function. */
#undef HAVE_FTRUNCATE
/* Define to 1 if you have the `getcwd' function. */
#undef HAVE_GETCWD
/* Define to 1 if you have the `gethostbyname' function. */
#undef HAVE_GETHOSTBYNAME
/* Define to 1 if you have the `getpagesize' function. */
#undef HAVE_GETPAGESIZE
/* Define to 1 if you have the `inet_ntoa' function. */
#undef HAVE_INET_NTOA
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <keyutils.h> header file. */
#undef HAVE_KEYUTILS_H
/* Define to 1 if you have the `localtime_r' function. */
#undef HAVE_LOCALTIME_R
/* Define to 1 if `lstat' has the bug that it succeeds when given the
zero-length file name argument. */
#undef HAVE_LSTAT_EMPTY_STRING_BUG
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
to 0 otherwise. */
#undef HAVE_MALLOC
/* Define to 1 if you have the <malloc.h> header file. */
#undef HAVE_MALLOC_H
/* Define to 1 if you have the `memmove' function. */
#undef HAVE_MEMMOVE
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the `memset' function. */
#undef HAVE_MEMSET
/* Define to 1 if you have the `mkdir' function. */
#undef HAVE_MKDIR
/* Define to 1 if you have a working `mmap' system call. */
#undef HAVE_MMAP
/* Define to 1 if you have the `munmap' function. */
#undef HAVE_MUNMAP
/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */
#undef HAVE_NDIR_H
/* Define to 1 if you have the <netdb.h> header file. */
#undef HAVE_NETDB_H
/* Define to 1 if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
/* Define to 1 if you have the `putenv' function. */
#undef HAVE_PUTENV
/* Define to 1 if you have the `rmdir' function. */
#undef HAVE_RMDIR
/* Define to 1 if you have the `setrlimit' function. */
#undef HAVE_SETRLIMIT
/* HAVE_SIGNED_CHAR */
#undef HAVE_SIGNED_CHAR
/* Define to 1 if you have the `socket' function. */
#undef HAVE_SOCKET
/* Define to 1 if `stat' has the bug that it succeeds when given the
zero-length file name argument. */
#undef HAVE_STAT_EMPTY_STRING_BUG
/* Define to 1 if stdbool.h conforms to C99. */
#undef HAVE_STDBOOL_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `strcasecmp' function. */
#undef HAVE_STRCASECMP
/* Define to 1 if you have the `strchr' function. */
#undef HAVE_STRCHR
/* Define to 1 if you have the `strcspn' function. */
#undef HAVE_STRCSPN
/* Define to 1 if you have the `strdup' function. */
#undef HAVE_STRDUP
/* HAVE_STRERROR */
#undef HAVE_STRERROR
/* Define to 1 if you have the `strerror_r' function. */
#undef HAVE_STRERROR_R
/* Define to 1 if you have the `strftime' function. */
#undef HAVE_STRFTIME
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strncasecmp' function. */
#undef HAVE_STRNCASECMP
/* Define to 1 if you have the `strpbrk' function. */
#undef HAVE_STRPBRK
/* Define to 1 if you have the `strrchr' function. */
#undef HAVE_STRRCHR
/* Define to 1 if you have the `strstr' function. */
#undef HAVE_STRSTR
/* Define to 1 if you have the `strtol' function. */
#undef HAVE_STRTOL
/* HAVE_SYS_BITYPES_H */
#undef HAVE_SYS_BITYPES_H
/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_DIR_H
/* Define to 1 if you have the <sys/file.h> header file. */
#undef HAVE_SYS_FILE_H
/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'.
*/
#undef HAVE_SYS_NDIR_H
/* Define to 1 if you have the <sys/param.h> header file. */
#undef HAVE_SYS_PARAM_H
/* Define to 1 if you have the <sys/socket.h> header file. */
#undef HAVE_SYS_SOCKET_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
#undef HAVE_SYS_WAIT_H
/* Define to 1 if you have the `tzset' function. */
#undef HAVE_TZSET
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the `vfork' function. */
#undef HAVE_VFORK
/* Define to 1 if you have the <vfork.h> header file. */
#undef HAVE_VFORK_H
/* Define to 1 if you have the `vprintf' function. */
#undef HAVE_VPRINTF
/* HAVE_WEAK_IO_SYMBOLS */
#undef HAVE_WEAK_IO_SYMBOLS
/* Define to 1 if `fork' works. */
#undef HAVE_WORKING_FORK
/* Define to 1 if `vfork' works. */
#undef HAVE_WORKING_VFORK
/* Define to 1 if the system has the type `_Bool'. */
#undef HAVE__BOOL
/* HP-UX */
#undef HPUX
/* HP-UX 11 */
#undef HPUX11
/* HP-UX 11.11 */
#undef HPUX11_11
/* HP-UX 11.23 */
#undef HPUX11_23
/* HPUX_SOURCE */
#undef HPUX_SOURCE
/* Linux */
#undef LINUX
/* Linux 2.6 */
#undef LINUX2_0
/* Linux 2.6 */
#undef LINUX2_2
/* Linux 2.6 */
#undef LINUX2_4
/* Linux 2.6 */
#undef LINUX2_6
/* Define to 1 if `lstat' dereferences a symlink specified with a trailing
slash. */
#undef LSTAT_FOLLOWS_SLASHED_SYMLINK
/* Define to the sub-directory in which libtool stores uninstalled libraries.
*/
#undef LT_OBJDIR
/* Linux */
#undef Linux
/* NEED_ENDIAN_H */
#undef NEED_ENDIAN_H
/* NEED_GETOPT_H */
#undef NEED_GETOPT_H
/* NEED_IOCTL_H */
#undef NEED_IOCTL_H
/* NEED_SYS_TIME_H */
#undef NEED_SYS_TIME_H
/* NEED_UINT_T */
#undef NEED_UINT_T
/* NET_SSL */
#undef NET_SSL
/* NO_INT64_T */
#undef NO_INT64_T
/* Define to 1 if your C compiler doesn't accept -c and -o together. */
#undef NO_MINUS_C_MINUS_O
/* NSPR */
#undef NSPR
/* NSPR20 */
#undef NSPR20
/* NS_USE_NATIVE */
#undef NS_USE_NATIVE
/* OS version */
#undef OSVERSION
/* OS HP-UX */
#undef OS_hpux
/* OS SOLARIS */
#undef OS_solaris
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define as the return type of signal handlers (`int' or `void'). */
#undef RETSIGTYPE
/* SOLARIS */
#undef SOLARIS
/* SOLARIS_55_OR_GREATER */
#undef SOLARIS_55_OR_GREATER
/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */
#undef STAT_MACROS_BROKEN
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* Define to 1 if strerror_r returns char *. */
#undef STRERROR_R_CHAR_P
/* SVR4 */
#undef SVR4
/* SW_THREADS */
#undef SW_THREADS
/* SYSV */
#undef SYSV
/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#undef TIME_WITH_SYS_TIME
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
/* Define if the keyring should be used */
#undef USE_KEYRING
/* USE_NODL_TABS */
#undef USE_NODL_TABS
/* Version number of package */
#undef VERSION
/* UNIX */
#undef XP_UNIX
/* _BSD_SOURCE */
#undef _BSD_SOURCE
/* _HPUX_SOURCE */
#undef _HPUX_SOURCE
/* POSIX revision */
#undef _POSIX_C_SOURCE
/* _POSIX_SOURCE */
#undef _POSIX_SOURCE
/* _PR_NEED_FAKE_POLL */
#undef _PR_NEED_FAKE_POLL
/* _PR_NTHREAD */
#undef _PR_NTHREAD
/* _REENTRANT */
#undef _REENTRANT
/* SVID_GETTOD */
#undef _SVID_GETTOD
/* _SVID_SOURCE */
#undef _SVID_SOURCE
/* SVR4 */
#undef __svr4
/* SVR4 */
#undef __svr4__
/* Define to empty if `const' does not conform to ANSI C. */
#undef const
/* Define to `int' if <sys/types.h> doesn't define. */
#undef gid_t
/* HP-UX pa-risc */
#undef hppa
/* HP-UX */
#undef hpux
/* linux */
#undef linux
/* Define to rpl_malloc if the replacement function should be used. */
#undef malloc
/* Define to `int' if <sys/types.h> does not define. */
#undef pid_t
/* Define to `unsigned int' if <sys/types.h> does not define. */
#undef size_t
/* SunOS5 */
#undef sunos5
/* Define to `int' if <sys/types.h> doesn't define. */
#undef uid_t
/* Define as `fork' if `vfork' does not work. */
#undef vfork
This diff is collapsed.
<!-- ### BEGIN COPYRIGHT BLOCK ###
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Copyright (C) 2007 Red Hat, Inc.
All rights reserved.
### END COPYRIGHT BLOCK ### -->
<project name="product.xml" default="main" basedir=".">
<!-- Set up properties based upon the user's default Ant configuration -->
<property file=".ant.properties"/>
<property file="${user.home}/.ant.properties"/>
<property environment="env"/>
<!-- Check for required properties passed-in via the build scripts -->
<fail message="The '-Dproduct.ui.flavor.prefix=PKI UI FLAVOR' property MUST always be specified by 'ant' (even if one does not exist)!"
unless="product.ui.flavor.prefix"/>
<fail message="The '-Dproduct.prefix=PKI PREFIX' property MUST always be specified by 'ant' (even if one does not exist)!"
unless="product.prefix"/>
<fail message="The '-Dproduct=PKI BASENAME' property MUST always be specified by 'ant'!"
unless="product"/>
<fail message="The '-Dversion=PKI VERSION' property MUST always be specified by 'ant'!"
unless="version"/>
<!-- Set up optional properties passed-in via the build scripts -->
<property name="basedir" value=""/>
<property name="dirsec" value=""/>
<property name="target" value=""/>
<!-- if "product.ui.flavor.prefix" is "", -->
<!-- set "product.ui.prefix" to ""; -->
<!-- otherwise, -->
<!-- set "product.ui.prefix" to "product.ui.flavor.prefix" -->
<condition property="product.ui.prefix"
value=""
else="${product.ui.flavor.prefix}">
<equals arg1="${product.ui.flavor.prefix}"
arg2=""/>
</condition>
<!-- "product.name" is of the form "x-y-z" -->
<condition property="product.name"
value="${product.ui.prefix}-${product.prefix}-${product}">
<not>
<equals arg1="${product.ui.prefix}"
arg2=""/>
</not>
</condition>
<!-- "product.name" is of the form "x-y" -->
<condition property="product.name"
value="${product.prefix}-${product}">
<and>
<equals arg1="${product.ui.prefix}"
arg2=""/>
<not>
<equals arg1="${product.prefix}"
arg2=""/>
</not>
</and>
</condition>
<!-- "product.name" is of the form "x" -->
<condition property="product.name"
value="${product}">
<and>
<equals arg1="${product.ui.prefix}"
arg2=""/>
<equals arg1="${product.prefix}"
arg2=""/>
</and>
</condition>
<!-- Set up architecture-dependent properties -->
<exec executable="uname"
failonerror="true"
outputproperty="arch">
<arg line="-i"/>
</exec>
<!-- Set up architecture-independent properties -->
<property name="jar.home" value="/usr/share/java"/>
<property name="pki-jar.home" value="${jar.home}/${product.prefix}"/>
<property name="jni-jar.home" value="/usr/lib/java"/>
<!-- Set up properties that control various build options -->
<property name="debug" value="true"/>
<property name="chmod.fail" value="true"/>
<property name="chmod.maxparallel" value="250"/>
<property name="deprecation" value="false"/>
<property name="optimize" value="true"/>
<!-- Set up properties related to the source tree -->
<property name="docs.dir" value="docs"/>
<property name="lib.dir" value="lib"/>
<property name="src.dir" value="src"/>
<property name="test.dir" value="test"/>
<property name="etc.dir" value="${src.dir}/etc"/>
<property name="script.dir" value="${src.dir}/script"/>
<!-- Set up properties for the release area -->
<property name="release.root" value="."/>
<!-- Set up properties for the build area -->
<property name="build.dir" value="build"/>
<property name="bootstrap.dir" value="bootstrap"/>
<property name="build.jars" value="${build.dir}/jars"/>
<property name="build.classes" value="${build.dir}/classes"/>
<property name="build.lib" value="${build.dir}/lib"/>
<property name="build.javadocs" value="${build.dir}/javadocs"/>
<property name="build.tests" value="${build.dir}/testcases"/>
<property name="build.tests.javadocs" value="${build.dir}/javadocs.test/"/>
<property name="manifest.tmp" value="${build.dir}/optional.manifest"/>
<!-- Set up properties for the distribution area -->
<property name="dist.name" value="${product.name}-${version}"/>
<property name="dist.base" value="dist"/>
<property name="dist.base.source" value="${dist.base}/source"/>
<property name="dist.base.binaries" value="${dist.base}/binary"/>
<property name="dist.dir" value="dist"/>
<property name="dist.bin" value="${dist.dir}/bin"/>
<property name="dist.lib" value="${dist.dir}/lib"/>
<property name="dist.docs" value="${dist.dir}/docs"/>
<property name="dist.etc" value="${dist.dir}/etc"/>
<property name="src.dist.name" value="${product.name}-${version}"/>
<property name="src.dist.dir" value="dist-src"/>
<property name="src.dist.src" value="${src.dist.dir}/src"/>
<property name="src.dist.docs" value="${src.dist.dir}/docs"/>
<property name="src.dist.lib" value="${src.dist.dir}/lib"/>
<!-- Set up properties for log messages -->
<property name="begin.clean.log.message"
value="Removing '${product.name}' component directories ..."/>
<property name="empty.clean.log.message"
value="Nothing to do!"/>
<property name="end.clean.log.message"
value="Completed removing '${product.name}' component directories."/>
<property name="begin.download.log.message"
value="Downloading '${product.name}' dependent components ..."/>
<property name="empty.download.log.message"
value="Nothing to do!"/>
<property name="end.download.log.message"
value="Completed downloading '${product.name}' dependent components."/>
<property name="begin.compile.java.log.message"
value="Compiling '${product.name}' java code from '${src.dir}' into '${build.classes}' ..."/>
<property name="empty.compile.java.log.message"
value="Nothing to do!"/>
<property name="end.compile.java.log.message"
value="Completed compiling '${product.name}' java code from '${src.dir}' into '${build.classes}'."/>
<property name="begin.build.jars.log.message"
value="Generating '${product.name}' jar files ..."/>
<property name="empty.build.jars.log.message"
value="Nothing to do!"/>
<property name="end.build.jars.log.message"
value="Completed generating '${product.name}' jar files."/>
<property name="begin.build.jni.headers.log.message"
value="Generating '${product.name}' java header files ..."/>
<property name="empty.build.jni.headers.log.message"
value="Nothing to do!"/>
<property name="end.build.jni.headers.log.message"
value="Completed generating '${product.name}' java header files."/>
<property name="notify.build.log.message"
value="Built classes, jars, and jni headers for the '${product.name}' component."/>
<property name="begin.compile.junit.tests.log.message"
value="Compiling '${product.name}' junit tests from '${test.dir}' into '${build.tests}' ..."/>
<property name="empty.compile.junit.tests.log.message"
value="Nothing to do!"/>
<property name="end.compile.junit.tests.log.message"
value="Completed compiling '${product.name}' junit tests from '${test.dir}' into '${build.tests}'."/>
<property name="begin.run.junit.tests.log.message"
value="Executing '${product.name}' tests ..."/>
<property name="empty.run.junit.tests.log.message"
value="Nothing to do!"/>
<property name="end.run.junit.tests.log.message"
value="Completed executing '${product.name}' tests."/>
<property name="notify.verify.log.message"
value="Verified the '${product.name}' component."/>
<property name="begin.clean.javadocs.log.message"
value="Removing '${product.name}' javadocs directory ..."/>
<property name="empty.clean.javadocs.log.message"
value="Nothing to do!"/>
<property name="end.clean.javadocs.log.message"
value="Completed removing '${product.name}' javadocs directory."/>
<property name="begin.compose.javadocs.log.message"
value="Composing '${product.name}' javadocs ..."/>
<property name="empty.compose.javadocs.log.message"
value="Nothing to do!"/>
<property name="end.compose.javadocs.log.message"
value="Completed composing '${product.name}' javadocs."/>
<property name="notify.document.log.message"
value="Documented '${product.name}' javadocs."/>
<property name="begin.distribute.binaries.log.message"
value="Creating '${product.name}' binary distributions ..."/>
<property name="begin.binary.wrappers.log.message"
value=" Creating '${product.name}' binary wrappers ..."/>
<property name="empty.binary.wrappers.log.message"
value=" Nothing to do!"/>
<property name="end.binary.wrappers.log.message"
value=" Completed creating '${product.name}' binary wrappers."/>
<property name="begin.binary.zip.log.message"
value=" Creating '${product.name}' binary zip files ..."/>
<property name="empty.binary.zip.log.message"
value=" Nothing to do!"/>
<property name="end.binary.zip.log.message"
value=" Completed creating '${product.name}' binary zip files."/>
<property name="begin.binary.tar.log.message"
value=" Creating '${product.name}' binary tar files ..."/>
<property name="empty.binary.tar.log.message"
value=" Nothing to do!"/>
<property name="end.binary.tar.log.message"
value=" Completed creating '${product.name}' binary tar files."/>
<property name="begin.binary.gtar.log.message"
value=" Creating '${product.name}' binary gzip files ..."/>
<property name="empty.binary.gtar.log.message"
value=" Nothing to do!"/>
<property name="end.binary.gtar.log.message"
value=" Completed creating '${product.name}' binary gzip files."/>
<property name="end.distribute.binaries.log.message"
value="Completed creating '${product.name}' binary distributions."/>
<property name="begin.distribute.source.log.message"
value="Creating '${product.name}' source distributions ..."/>
<property name="begin.source.zip.log.message"
value=" Creating '${product.name}' source zip files ..."/>
<property name="empty.source.zip.log.message"
value=" Nothing to do!"/>
<property name="end.source.zip.log.message"
value=" Completed creating '${product.name}' source zip files."/>
<property name="begin.source.tar.log.message"
value=" Creating '${product.name}' source tar files ..."/>
<property name="empty.source.tar.log.message"
value=" Nothing to do!"/>
<property name="end.source.tar.log.message"
value=" Completed creating '${product.name}' source tar files."/>
<property name="begin.source.gtar.log.message"
value=" Creating '${product.name}' source gzip files ..."/>
<property name="empty.source.gtar.log.message"
value=" Nothing to do!"/>
<property name="end.source.gtar.log.message"
value=" Completed creating '${product.name}' source gzip files."/>
<property name="end.distribute.source.log.message"
value="Completed creating '${product.name}' source distributions."/>
<property name="notify.distribute.log.message"
value="Distributed '${product.name}' distribution packages."/>
<property name="notify.main.log.message"
value="Built, verified, documented, and distributed a fresh '${product.name}' component."/>
</project>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.