Commit cf0a3747 authored by Jeff Trawick's avatar Jeff Trawick
Browse files

Fix some MinGW build issues...

mpm_winnt.c:  MinGW doesn't currently define the Windows
              STACK_SIZE_PARAM_IS_A_RESERVATION symbol

mpm_unix.c:   Bypass all this code on Windows  (too much trouble
              to keep it out of Makefile)

mpm_common.h: Skip over definitions of functions not available on
              Windows to keep references out of exports.c.

PR: 49535
Submitted by: John Vandenberg <jayvdb gmail.com>
Minor tweaks by: trawick

Other commits for this PR: r1089950, r1089951, r1089954


git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1090614 13f79535-47bb-0310-9956-ffa450edef68
parent 73b656e0
Loading
Loading
Loading
Loading
+3 −0
Changes for CHANGES: 3 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -2,6 +2,9 @@

Changes with Apache 2.3.12

  *) MinGW build improvements.  PR 49535.  [John Vandenberg 
     <jayvdb gmail.com>, Jeff Trawick]

  *) core: Support module names with colons in loglevel configuration.
     [Torsten Förtsch <torsten foertsch gmx net>]

+4 −0
Changes for include/mpm_common.h: 4 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -212,6 +212,8 @@ AP_DECLARE(gid_t) ap_gname2id(const char *name);
int initgroups(const char *name, gid_t basegid);
#endif

#if !defined(WIN32) || defined(DOXYGEN)

typedef struct ap_pod_t ap_pod_t;

struct ap_pod_t {
@@ -255,6 +257,8 @@ AP_DECLARE(apr_status_t) ap_mpm_pod_signal(ap_pod_t *pod);
 */
AP_DECLARE(void) ap_mpm_pod_killpg(ap_pod_t *pod, int num);

#endif /* !WIN32 || DOXYGEN */

/**
 * Check that exactly one MPM is loaded
 * Returns NULL if yes, error string if not.
+4 −0
Changes for server/mpm/winnt/mpm_winnt.c: 4 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -44,6 +44,10 @@
#define _environ environ
#endif

#ifndef STACK_SIZE_PARAM_IS_A_RESERVATION /* missing on MinGW */
#define STACK_SIZE_PARAM_IS_A_RESERVATION 0x00010000
#endif

/* scoreboard.c does the heavy lifting; all we do is create the child
 * score by moving a handle down the pipe into the child's stdin.
 */
+4 −0
Changes for server/mpm_unix.c: 4 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -25,6 +25,8 @@
 * does not belong in src/os/unix
 */

#ifndef WIN32

#include "apr.h"
#include "apr_thread_proc.h"
#include "apr_signal.h"
@@ -918,3 +920,5 @@ apr_status_t ap_fatal_signal_setup(server_rec *s, apr_pool_t *in_pconf)

    return APR_SUCCESS;
}

#endif /* WIN32 */