You are viewing a plain text version of this content. The canonical link for it is here.
Posted to apache-bugdb@apache.org by Venki Rajagopalan <ve...@eng.sun.com> on 1999/05/13 04:41:30 UTC

config/4402: "configure" fails if SharedModule directives are added in Configuration.tmpl

>Number:         4402
>Category:       config
>Synopsis:       "configure" fails if SharedModule directives are added in Configuration.tmpl
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    apache
>State:          open
>Class:          sw-bug
>Submitter-Id:   apache
>Arrival-Date:   Wed May 12 19:50:00 PDT 1999
>Last-Modified:
>Originator:     venki@eng.sun.com
>Organization:
apache
>Release:        1.3.6
>Environment:
OS: Solaris 2.7
Compiler: Haven't gotten that far yet, but planning to use SUNWspro compiler.
uname -a output: SunOS abyss 5.7 Generic sun4u sparc SUNW,Ultra-1
>Description:
Bug
---

If the src/Configuration.tmpl file is modified to include SharedModule
directives as specified in the DSO manual dso.html supplied with the
distribution, configure fails with messages like
	./configure: module_env.so=yes: not found
	./configure: shared_env.so=yes: not found
	...

Problem Cause
-------------
The manual asks a SharedModule directive to be included like this :
	- Edit src/Configuration:
                      << AddModule    modules/xxxx/mod_foo.o
                      >> SharedModule modules/xxxx/mod_foo.so

However, the code in configure does not take care of the ".so" suffix change
and so the subsequent variable assignment in the configure script fails.
>How-To-Repeat:
Just change any AddModule directive in src/Configuration.tmpl to SharedModule
_and_ change the module's suffix from .o to .so
>Fix:
Suggested Fix
-------------

The change in the context diff below fixes the problem.

abyss# diff -c configure configure.new
*** configure   Wed May 12 19:35:28 1999
--- configure.new       Wed May 12 19:35:51 1999
***************
*** 235,244 ****
--- 235,249 ----
      if [ ".`echo $module | grep 'SharedModule'`" != . ]; then
          share=yes
      fi
+ #
+ #  Added the "-e 's/\.so$//' \" line for sed below to remove the trailer
+ #  for shared object directives.
+ #
      module=`echo "$module" |\
              sed -e 's%^.*/\(.*\)$%\1%' \
                  -e 's/\.[oa]$//' \
                  -e 's/\.module$//' \
+                 -e 's/\.so$//' \
                  -e 's/^mod_//' \
                  -e 's/^lib//'`
      eval "module_$module=$add"
>Audit-Trail:
>Unformatted:
[In order for any reply to be added to the PR database, ]
[you need to include <ap...@Apache.Org> in the Cc line ]
[and leave the subject line UNCHANGED.  This is not done]
[automatically because of the potential for mail loops. ]
[If you do not include this Cc, your reply may be ig-   ]
[nored unless you are responding to an explicit request ]
[from a developer.                                      ]
[Reply only with text; DO NOT SEND ATTACHMENTS!         ]