OSDN Git Service

Clean up autotools-related files and rpm spec file.
authorTATEISHI Katsuyuki <kt@wheel.jp>
Wed, 5 Aug 2009 17:07:05 +0000 (02:07 +0900)
committerTATEISHI Katsuyuki <kt@wheel.jp>
Wed, 5 Aug 2009 17:07:05 +0000 (02:07 +0900)
 * Rename configure.in to configure.ac.
 * Delete install target from Makefile.am.
 * Change sslproxy.spec.in to suit new autotools-files.
 * Add conf/logrotate.d for logrotate config and rename the config file because
   this filename should be the same as its package name according to rpmlint.
 * Change to install README into docdir.

 Note: To build this package, follow these steps.
  1 Install automake, autoconf, libtool and other software required by
    SSLProxy.
  2 Checkout from git repository.
    % git clone <repository>
  3 Generate configure script, Makefile.in and other files.
    % cd sslproxy
    % autoreconf -if
  4 Build
    % ./configure    [*]
    % make
  5 Install
    % make install

  [*] You should specify following options to install as previous releases.
    % ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
             --libdir='${prefix}/lib64'

Makefile.am
conf/Makefile.am
conf/logrotate.d/Makefile.am [new file with mode: 0644]
conf/logrotate.d/sslproxy [moved from conf/sslproxyadm.logrotate with 100% similarity]
configure.ac
logger/Makefile.am
parameter/Makefile.am
src/Makefile.am
sslfiles/Makefile.am
sslproxy.spec.in

index 7e7382a..82dc686 100644 (file)
 ######################################################################
 
 SUBDIRS = logger parameter src conf sslfiles
-AUTOMAKE_OPTIONS = foreign
 
+docdir = $(datadir)/doc/$(PACKAGE)-$(VERSION)
+dist_doc_DATA = \
+       README
+
+EXTRA_DIST = \
+       CHANGES \
+       sslproxy.spec.in
+
+install-data-hook:
+       mkdir -p $(DESTDIR)$(localstatedir)/log/sslproxy
index eee4c14..1266dbd 100644 (file)
@@ -1,8 +1,9 @@
-AUTOMAKE_OPTIONS = foreign
+SUBDIRS = logrotate.d
 
-install:
-       $(INSTALL) -b -m 644 -D ./sslproxy.logger_init.cf /etc/l7vs/sslproxy/sslproxy.logger_init.cf
-       $(INSTALL) -b -m 644 -D ./sslproxy.target_1.cf /etc/l7vs/sslproxy/sslproxy.target_1.cf
-       $(INSTALL) -b -m 644 -D ./sslproxy.target_2.cf /etc/l7vs/sslproxy/sslproxy.target_2.cf
-       $(INSTALL) -b -m 644 -D ./sslproxyadm.cf /etc/l7vs/sslproxy/sslproxyadm.cf
-       $(INSTALL) -b -m 644 -D ./sslproxyadm.logrotate /etc/logrotate.d/sslproxyadm
+sysconf_sslproxydir = $(sysconfdir)/l7vs/sslproxy
+
+dist_sysconf_sslproxy_DATA = \
+       sslproxy.logger_init.cf \
+       sslproxy.target_1.cf \
+       sslproxy.target_2.cf \
+       sslproxyadm.cf
diff --git a/conf/logrotate.d/Makefile.am b/conf/logrotate.d/Makefile.am
new file mode 100644 (file)
index 0000000..5252cbe
--- /dev/null
@@ -0,0 +1,4 @@
+sysconf_logrotatedir = $(sysconfdir)/logrotate.d
+
+dist_sysconf_logrotate_DATA = \
+       sslproxy
index 6fa54e6..923cace 100644 (file)
@@ -1,9 +1,17 @@
+#                                               -*- Autoconf -*-
+# Process this file with autoconf to produce a configure script.
+
+m4_define([SSLPROXY_VERSION], 1.0.1)
+m4_define([SSLPROXY_PATCHLV], 1)
+# For additional releasename (ex. m4_define([SSLPROXY_RELSUFFIX], [rc1]) for rc1)
+m4_define([SSLPROXY_RELSUFFIX], [atfix])
+
 AC_PREREQ(2.59)
-AC_INIT(sslproxy)
-PACKAGENAME=sslproxy
-VERSION=1.0.1-1
+AC_INIT([sslproxy],
+       SSLPROXY_VERSION[-]SSLPROXY_PATCHLV[]SSLPROXY_RELSUFFIX,
+       [ultramonkey-l7-develop@lists.sourceforge.jp])
 
-AM_INIT_AUTOMAKE($PACKAGENAME, $VERSION, no-define )
+AM_INIT_AUTOMAKE([foreign])
 AC_CONFIG_SRCDIR([config.h.in])
 AC_CONFIG_HEADER([config.h])
 
@@ -17,15 +25,31 @@ AC_PROG_MAKE_SET
 AC_PROG_RANLIB
 
 # Checks for libraries.
-AC_CHECK_LIB(log4cxx, main, :,
+AC_LANG_PUSH([C++])
+AC_CHECK_LIB([log4cxx], [main],,
        [AC_MSG_ERROR( sslproxy require log4cxx library. )] )
-AC_CHECK_LIB(rt, main, :,
+AC_CHECK_LIB([boost_regex], [main],,
+        [AC_MSG_ERROR([sslproxy requires boost, The Boost C++ Libraries.])])
+AC_LANG_POP([C++])
+AC_CHECK_LIB([rt], [main],,
        [AC_MSG_ERROR( sslproxy require rt library. )] )
-AC_CHECK_LIB(ssl, main, :,
-       [AC_MSG_ERROR( sslproxy require ssl library. )] )
+AC_CHECK_LIB([ssl], [main],,
+       [AC_MSG_ERROR([sslproxy require ssl library.  In many linux distro, ]dnl
+[openssl-devel or openssl-dev package will provides you the ssl libraries.])])
 
 # Checks for header files.
 AC_CHECK_HEADERS([limits.h unistd.h])
+AC_LANG_PUSH([C++])
+AC_CHECK_HEADERS([boost/asio/ssl.hpp],,
+[AC_MSG_ERROR([sslproxy requires boost, The Boost C++ Libraries, ]dnl
+[1.36.0 or higher.  Does your system have boost headers?  ]dnl
+[In many linux distro, boost-devel or boost-dev package will provides you ]dnl
+[the boost headers.])])
+
+AC_CHECK_HEADERS([log4cxx/logger.h],,
+       [AC_MSG_ERROR([sslproxy requires log4cxx.  Does your system have ]dnl
+[log4cxx headers?])])
+AC_LANG_POP([C++])
 
 # Checks for typedefs, structures, and compiler characteristics.
 AC_HEADER_STDBOOL
@@ -40,19 +64,16 @@ AC_FUNC_MKTIME
 AC_FUNC_STRFTIME
 AC_CHECK_FUNCS([gethostname localtime_r memset])
 
-# application-specific option
-if test `uname -m` == "x86_64"; then
-       AC_SUBST( libdir, [/usr/lib64] )
-else
-       AC_SUBST( libdir, [/usr/lib] )
-fi
-
 AC_SUBST(CC,g++)
-AC_SUBST(exec_prefix, [/usr] )
+AC_SUBST(sslproxy_version, SSLPROXY_VERSION)
+AC_SUBST(sslproxy_patchlv, SSLPROXY_PATCHLV)
+AC_SUBST(sslproxy_relsuffix, SSLPROXY_RELSUFFIX)
 AC_CONFIG_FILES([parameter/Makefile]
                [logger/Makefile]
                [Makefile]
                [src/Makefile]
                [conf/Makefile]
-               [sslfiles/Makefile])
-AC_OUTPUT(sslproxy.spec)
+               [conf/logrotate.d/Makefile]
+               [sslfiles/Makefile]
+               [sslproxy.spec])
+AC_OUTPUT
index 352fe32..5d29a77 100644 (file)
@@ -1,7 +1,7 @@
 noinst_LIBRARIES= libsslproxy_logger.a
-AUTOMAKE_OPTIONS = foreign
                
 libsslproxy_logger_a_SOURCES   = \
+                               lexical_cast.h \
                                logger_enum.h \
                                logger.h \
                                logger_impl.h \
@@ -12,5 +12,7 @@ libsslproxy_logger_a_SOURCES  = \
                                time_and_size_based_rolling_policy.h \
                                time_and_size_based_rolling_policy.cpp
 
-libsslproxy_logger_a_CPPFLAGS  = -O2 -g -I../include -I../parameter \
+libsslproxy_logger_a_CPPFLAGS  = -O2 -g \
+                               -I$(top_srcdir)/include \
+                               -I$(top_srcdir)/parameter \
                                -DVERSION=\"$(VERSION)\"
index 7de6bd2..830d260 100644 (file)
@@ -1,5 +1,4 @@
 noinst_LIBRARIES= libsslproxy_parameter.a
-AUTOMAKE_OPTIONS = foreign
                
 libsslproxy_parameter_a_SOURCES                = \
                                parameter_enum.h \
@@ -8,5 +7,7 @@ libsslproxy_parameter_a_SOURCES         = \
                                parameter.cpp \
                                parameter_impl.cpp
 
-libsslproxy_parameter_a_CPPFLAGS       = -O2 -g -I../../include -I../logger \
+libsslproxy_parameter_a_CPPFLAGS       = -O2 -g \
+                                       -I$(top_srcdir)/include \
+                                       -I$(top_srcdir)/logger \
                                        -DVERSION=\"$(VERSION)\"
index e171fb4..99f8151 100644 (file)
@@ -1,35 +1,27 @@
 sbin_PROGRAMS  = sslproxy
-AUTOMAKE_OPTIONS = foreign
-SSLPROXY_SBINDIR = @sbindir@
+dist_sbin_SCRIPTS = sslproxyadm
 
-sslproxy_CPPFLAGS      = -O2 -g -I../include \
-                 -I../logger -I../parameter \
+sslproxy_CPPFLAGS      = -O2 -g -I$(top_srcdir)/include \
+                 -I$(top_srcdir)/logger -I$(top_srcdir)/parameter \
                  -I/usr/local/include/boost \
                  -pthread \
                  -DVERSION=\"$(VERSION)\"
 
 sslproxy_SOURCES       =       \
-                       ../logger/logger_wrapper.h \
-                       ../parameter/parameter_wrapper.h \
-                       ../include/sslproxy.h \
-                       ../include/sslproxyserver.h \
-                       ../include/sslproxysession.h \
+                       $(top_srcdir)/logger/logger_wrapper.h \
+                       $(top_srcdir)/parameter/parameter_wrapper.h \
+                       $(top_srcdir)/include/sslproxy.h \
+                       $(top_srcdir)/include/sslproxyserver.h \
+                       $(top_srcdir)/include/sslproxysession.h \
                        sslproxy.cpp \
                        sslproxymain.cpp \
                        sslproxyserver.cpp \
                        sslproxysession.cpp
 
-sslproxy_LDADD =       ../logger/libsslproxy_logger.a \
-                       ../parameter/libsslproxy_parameter.a \
+sslproxy_LDADD =       $(top_builddir)/logger/libsslproxy_logger.a \
+                       $(top_builddir)/parameter/libsslproxy_parameter.a \
                        -llog4cxx \
                        -lrt \
                        -lssl \
                        -lboost_system-gcc41-mt \
                        -lboost_thread-gcc41-mt
-
-install:
-       $(INSTALL) -m 755 -D \
-               ./sslproxy \
-               ./sslproxyadm \
-               $(SSLPROXY_SBINDIR)
-       mkdir -p /var/log/l7vs/sslproxy
index 7bcb7c1..7d8c801 100644 (file)
@@ -1,7 +1,7 @@
-AUTOMAKE_OPTIONS = foreign
+sysconf_sslproxydir = $(sysconfdir)/l7vs/sslproxy
 
-install:
-       $(INSTALL) -b -m 644 -D ./root.pem /etc/l7vs/sslproxy/root.pem
-       $(INSTALL) -b -m 644 -D ./server.pem /etc/l7vs/sslproxy/server.pem
-       $(INSTALL) -b -m 644 -D ./passwd.txt /etc/l7vs/sslproxy/passwd.txt
-       $(INSTALL) -b -m 644 -D ./dh512.pem /etc/l7vs/sslproxy/dh512.pem
+dist_sysconf_sslproxy_DATA = \
+       root.pem \
+       server.pem \
+       passwd.txt \
+       dh512.pem
index 4f964f4..4545100 100644 (file)
-%define prefix   /usr
-
-#Uncomment these if they are not defined by your rpm macros file
-%define _sysconfdir             /etc
-%define _localstatedir          /var
-
 Summary: The SSL Proxy Server
 Name: sslproxy
-Version: 1.0.1
-Release: 1
-License: LGPL
-Packager: Toru Morishita
-Group: Network
+Version: @sslproxy_version@
+Release: @sslproxy_patchlv@@sslproxy_relsuffix@
+License: LGPLv2
+Group: System Environment/Daemons
+URL: http://ultramonkey-l7.sourceforge.jp/
 Source0: %{name}-%{version}-%{release}.tar.gz
-BuildRoot: /var/tmp/%{name}-%{version}-root
-Docdir: %{prefix}/doc
-Provides: %{name}-%{version}-%{release}
-BuildPrereq: automake autoconf libtool
-AutoReqProv: no
-#Requires:
+BuildRoot: %{_tmppath}/%{name}-%{version}-root
 
 %description
 SSL proxy server daemon
 
 %prep
-rm -rf ${RPM_BUILD_ROOT}
-%setup
+%setup -q -n %{name}-%{version}-%{release}
 
 %build
-
-# I am providing my own configure macro replacement. Hopefully this
-# will result in fewer portability problems than using the one supplied
-# by various vendours. I fear that I hope in vein.
-CFLAGS="${CFLAGS:-%optflags}" ; export CFLAGS
-if [ -f confgure.in ]; then
-       aclocal
-       libtoolize --force --copy
-       automake
-       autoconf
-fi
-./configure %{_target_platform} \
-       --prefix=%{_prefix} \
-       --exec-prefix=%{_exec_prefix} \
-       --bindir=%{_bindir} \
-       --sbindir=%{_sbindir} \
-       --sysconfdir=%{_sysconfdir} \
-       --datadir=%{_datadir} \
-       --includedir=%{_includedir} \
-       --libdir=%{_libdir} \
-       --libexecdir=%{_libexecdir} \
-       --localstatedir=%{_localstatedir} \
-       --sharedstatedir=%{_sharedstatedir} \
-       --mandir=%{_mandir} \
-       --infodir=%{_infodir}
-
-make -j2
+export CPPFLAGS="-I%{_prefix}/local/include/boost"
+%configure
+make
 
 %install
-# rm -rf ${RPM_BUILD_ROOT}
-
-# Manually install init script
-#mkdir -p ${RPM_BUILD_ROOT}/etc/init.d/
-#install -c -m 755 \
-#        ${RPM_BUILD_DIR}/%{name}-%{version}/etc/init.d/sslproxy.rh \
-#               ${RPM_BUILD_ROOT}/etc/init.d/sslproxy
-
-# Install eveything else
-#make DESTDIR=$RPM_BUILD_ROOT install
-
-mkdir -p $RPM_BUILD_ROOT%{_sbindir}
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/init.d
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/l7vs/sslproxy
-
-install -c -m 755 -D src/sslproxy src/sslproxyadm $RPM_BUILD_ROOT%{_sbindir}
-
-#install -c -m 755 -D init.d/sslproxy $RPM_BUILD_ROOT%{_sysconfdir}/init.d
-
-install -c -m 644 -D conf/sslproxy.logger_init.cf $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D conf/sslproxy.target_1.cf $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D conf/sslproxy.target_2.cf $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D conf/sslproxyadm.cf $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D conf/sslproxyadm.logrotate $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/sslproxyadm
-
-install -c -m 644 -D sslfiles/root.pem $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D sslfiles/server.pem $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D sslfiles/passwd.txt $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
-install -c -m 644 -D sslfiles/dh512.pem $RPM_BUILD_ROOT%{_sysconfdir}/l7vs/sslproxy
+rm -rf ${RPM_BUILD_ROOT}
+%makeinstall
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post
-mkdir -p /var/log/l7vs/sslproxy
-
 %files
 %defattr(-, root, root, 0755)
-%{_sbindir}
+%{_sbindir}/*
 #%config %{_sysconfdir}/init.d/*
-%config %{_sysconfdir}/l7vs/sslproxy/*
-%config %{_sysconfdir}/logrotate.d/*
-
-#%doc README COPYING
-#%{_mandir}
+%config(noreplace) %{_sysconfdir}/l7vs/sslproxy/*
+%config(noreplace) %{_sysconfdir}/logrotate.d/*
+%dir %{_sysconfdir}/l7vs/sslproxy
+%doc %{_docdir}/%{name}-%{version}-%{release}
 
 %changelog
-
+* Thu Aug  6 2009 TATEISHI Katsuyuki <kt@wheel.jp> 1.0.1-1atfix
+- update for autotools-fix branch
+- rpmlint free