https://issues.apache.org/bugzilla/show_bug.cgi?id=55706

            Bug ID: 55706
           Summary: broken apr version check in native v1.1.29 build;
                    fails detect of installed v2.0.0
           Product: Tomcat Native
           Version: 1.1.29
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: Library
          Assignee: [email protected]
          Reporter: [email protected]

I'm building Tomcat 7.0.47.0 from src on

    uname -a
        Linux rand3.int 3.7.10-1.16-desktop #1 SMP PREEMPT Fri May 31 20:21:23
UTC 2013 (97c14ba) x86_64 x86_64 x86_64 GNU/Linux

Once built,

    service tomcat7-custom version
        jsvc (Apache Commons Daemon) 1.0.15-dev
        Copyright (c) 1999-2011 Apache Software Foundation.
        java version "1.7.0_15"
        OpenJDK Runtime Environment (build 1.7.0_15-b20)
        OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)
        commons daemon version "1.0.15-dev"
        commons daemon process (id: 23245, parent: 23244)
        Server version: Apache Tomcat/7.0.47
        Server built:   Oct 25 2013 10:07:09
        Server number:  7.0.47.0
        OS Name:        Linux
        OS Version:     3.7.10-1.16-desktop
        Architecture:   amd64
        JVM Version:    1.7.0_15-b20
        JVM Vendor:     Oracle Corporation

moving on to 'native',

    cd tomcat7/build/bin
    tar zxvf tomcat-native.tar.gz
    cd tomcat-native-1.1.29-src/jni/native

configure fails @ APR version check

    ./configure \
     --prefix=/usr/local \
     --with-apr=/usr/local/apache24x/bin/apr-2-config \
     --with-java-home=/etc/alternatives/java_sdk_openjdk \
     --with-ssl=/usr/local/src/openssl/1.0.1e \
     --libdir=/usr/lib64

        ...
        configure: loading site script /usr/share/site/x86_64-unknown-linux-gnu
        checking build system type... x86_64-unknown-linux-gnu
        checking host system type... x86_64-unknown-linux-gnu
        checking target system type... x86_64-unknown-linux-gnu
        checking for a BSD-compatible install... /usr/bin/install -c
        checking for working mkdir -p... yes
        Tomcat Native Version: 1.1.29
        checking for chosen layout... tcnative
        checking for APR... yes
        configure: error: You need APR version 1.2.1 or newer installed. For
optimal performance version 1.3.0 or newer is needed.

but,

    /usr/local/apache24x/bin/apr-2-config --version
        2.0.0

applying this patch

    cat /usr/local/src/tc-native.patch
            Only in native: config.log
            Only in native: config.nice
            diff -ur native.ORIG/configure native/configure
            --- native.ORIG/configure    2013-10-10 05:51:58.000000000 -0700
            +++ native/configure    2013-10-25 10:11:19.692085473 -0700
            @@ -1903,7 +1903,7 @@
                 TEST_X="test -x"
               fi

            -  acceptable_majors="1"
            +  acceptable_majors="2"

               apr_temp_acceptable_apr_config=""
               for apr_temp_major in $acceptable_majors
            @@ -2020,20 +2020,20 @@
               fi
               sapr_version="`echo $sapr_pversion|sed -e 's/\(a-z*\)$/.\1/'`"
               tc_save_IFS=$IFS; IFS=.; set $sapr_version; IFS=$tc_save_IFS
            -  if test "${1}" -lt "1"; then
            -    { { echo "$as_me:$LINENO: error: You need APR version 1.2.1 or
newer installed. For optimal performance version 1.3.0 or newer is needed." >&5
            -echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
            -   { (exit 1); exit 1; }; }
            -  else
            -    if test "${2}" -lt "2"; then
            -      { { echo "$as_me:$LINENO: error: You need APR version 1.2.1
or newer installed. For optimal performance version 1.3.0 or newer is needed."
>&5
            -echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
            -   { (exit 1); exit 1; }; }
            -    elif test "${2}" -lt "3"; then
            -      { echo "$as_me:$LINENO: WARNING: For optimal performance you
need APR version 1.3.0 or newer installed." >&5
            -echo "$as_me: WARNING: For optimal performance you need APR
version 1.3.0 or newer installed." >&2;}
            -    fi
            -  fi
            +#  if test "${1}" -lt "1"; then
            +#    { { echo "$as_me:$LINENO: error: You need APR version 1.2.1
or newer installed. For optimal performance version 1.3.0 or newer is needed."
>&5
            +#echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
            +#   { (exit 1); exit 1; }; }
            +#  else
            +#    if test "${2}" -lt "2"; then
            +#      { { echo "$as_me:$LINENO: error: You need APR version 1.2.1
or newer installed. For optimal performance version 1.3.0 or newer is needed."
>&5
            +#echo "$as_me: error: You need APR version 1.2.1 or newer
installed. For optimal performance version 1.3.0 or newer is needed." >&2;}
            +#   { (exit 1); exit 1; }; }
            +#    elif test "${2}" -lt "3"; then
            +#      { echo "$as_me:$LINENO: WARNING: For optimal performance
you need APR version 1.3.0 or newer installed." >&5
            +#echo "$as_me: WARNING: For optimal performance you need APR
version 1.3.0 or newer installed." >&2;}
            +#    fi
            +#  fi

               APR_BUILD_DIR="`$apr_config --installbuilddir`"

    patch -p1 <  /usr/local/src/tc-native.patch
        patching file configure

removes the broken check, and the build proceeds,

    ./configure ...
    make
    make install
    ls -al /usr/lib64/libtcnative*
        -rw-r--r-- 1 root root 214K Apr 15 14:46 /usr/lib64/libtcnative-1.a
        -rwxr-xr-x 1 root root 1.1K Apr 15 14:46 /usr/lib64/libtcnative-1.la*
        lrwxrwxrwx 1 root root   23 Apr 15 14:46 /usr/lib64/libtcnative-1.so ->
libtcnative-1.so.0.1.27*
        lrwxrwxrwx 1 root root   23 Apr 15 14:46 /usr/lib64/libtcnative-1.so.0
-> libtcnative-1.so.0.1.27*
        -rwxr-xr-x 1 root root 186K Apr 15 14:46
/usr/lib64/libtcnative-1.so.0.1.27*
    ldd /usr/${LIBDIR}/libtcnative-1.so
        linux-vdso.so.1 =>  (0x00007fffc4549000)
        libapr-2.so.0 => /usr/local/apache24x/lib/libapr-2.so.0
(0x00007feabdd3a000)
        libssl.so.1.0.0 => /usr/local/ssl/lib64/libssl.so.1.0.0
(0x00007feabdacf000)
        libcrypto.so.1.0.0 => /usr/local/ssl/lib64/libcrypto.so.1.0.0
(0x00007feabd6e4000)
        libuuid.so.1 => /lib64/libuuid.so.1 (0x00007feabd4a1000)
        librt.so.1 => /lib64/librt.so.1 (0x00007feabd298000)
        libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007feabd05d000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007feabce40000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007feabcc3b000)
        libexpat.so.1 => /lib64/libexpat.so.1 (0x00007feabca10000)
        libc.so.6 => /lib64/libc.so.6 (0x00007feabc680000)
        libz.so.1 => /lib64/libz.so.1 (0x00007feabc467000)
        /lib64/ld-linux-x86-64.so.2 (0x00007feabe1c1000)

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to