Opened 15 years ago

Closed 15 years ago

#20958 closed defect (fixed)

apr0 @0.9.17 fails to build

Reported by: nerdling (Jeremy Lavergne) Owned by: blair (Blair Zajac)
Priority: Normal Milestone:
Component: ports Version: 1.8.99
Keywords: snowleopard Cc:
Port: apr0 apache20

Description

Making all in network_io/unix
/bin/sh /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_apr0/work/apr-0.9.17/libtool --silent --mode=compile /usr/bin/gcc-4.2   -pipe -O2 -arch x86_64 -DHAVE_CONFIG_H -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -no-cpp-precomp  -I/opt/local/include -I../../include -I../../include/arch/unix -I../../include/arch/unix  -c sendrecv.c && touch sendrecv.lo
/bin/sh /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_devel_apr0/work/apr-0.9.17/libtool --silent --mode=compile /usr/bin/gcc-4.2   -pipe -O2 -arch x86_64 -DHAVE_CONFIG_H -DDARWIN -DSIGPROCMASK_SETS_THREAD_MASK -no-cpp-precomp  -I/opt/local/include -I../../include -I../../include/arch/unix -I../../include/arch/unix  -c sockopt.c && touch sockopt.lo
sendrecv.c:965:2: error: #error APR has detected sendfile on your system, but nobody has written a
sendrecv.c:966:2: error: #error version of it for APR yet. To get past this, either write apr_sendfile
sendrecv.c:967:2: error: #error or change APR_HAS_SENDFILE in apr.h to 0.
make[2]: *** [sendrecv.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1

Change History (7)

comment:1 Changed 15 years ago by blair (Blair Zajac)

I doubt that the APR team will fix apr 0.9.17 to support Snow Leopard. I don't have the cycles to work on it either. I would accept a patch for it if you can get it working.

What do you need apache20 for? I suggest upgrading to the apache2 port which uses the apr port which should support Snow Leopard.

comment:2 in reply to:  1 Changed 15 years ago by nerdling (Jeremy Lavergne)

Replying to blair@…:

I doubt that the APR team will fix apr 0.9.17 to support Snow Leopard. I don't have the cycles to work on it either. I would accept a patch for it if you can get it working.

Would a patch that has a pre-fetch phase to stop it on darwin 10 be adequate?

comment:3 Changed 15 years ago by blair (Blair Zajac)

Yes, that would work.

comment:4 Changed 15 years ago by blair (Blair Zajac)

I just checked 0.9.18 but it has only two fixes in it:

Changes with APR 0.9.18

  *) z/OS: return standard apr_status_t codes from apr_dso_load()
     and apr_dso_sym().  [David Jones <oscaremma gmail.com>]

  *) Fix apr_tokenize_to_argv parsing.  PR 46128
     [Edward Rudd <eddie omegaware.com>]

and the 0.9.x branch only has this fix:

Changes with APR 0.9.19

  *) SECURITY: CVE-2009-2412 (cve.mitre.org)
     Fix overflow in pools and rmm, where size alignment was taking place.
     [Matt Lewis <mattlewis@google.com>, Sander Striker, William Rowe]

I'll keep an eye out for any changes with Snow Leopard support.

comment:5 Changed 15 years ago by blb@…

Shouldn't the darwin 9 section also be applied to 10 for this?

comment:6 Changed 15 years ago by blair (Blair Zajac)

It's worth trying. I don't have 10.6 installed anywhere yet.

Can the original reporter duplicate add this section to the Portfile:

platform darwin 10 {
        post-configure {
                reinplace {s|\(#define APR_HAS_SENDFILE[[:space:]]*\)1|\1 0|} ${worksrcpath}/include/apr.h
        }
}

and see if it works.

comment:7 Changed 15 years ago by blair (Blair Zajac)

Resolution: fixed
Status: newclosed

I finally got to installing 10.6 myself and tried the suggested fix. It worked.

Committed in r56778.

Note: See TracTickets for help on using tickets.