>Number: 4496 >Category: os-bsdi >Synopsis: Apache doesn't know how to build DSO support for BSD/OS 3 >Confidential: no >Severity: non-critical >Priority: medium >Responsible: apache >State: open >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Sat May 29 20:10:00 PDT 1999 >Last-Modified: >Originator: [EMAIL PROTECTED] >Organization: apache >Release: 1.3.6 >Environment: BSD/OS 3.1, fully patched or nearly so. BSD/OS lc.alink.net 3.1 BSDI BSD/OS 3.1 Kernel #16: Fri Jan 22 14:42:48 PST 1999 [EMAIL PROTECTED]:/usr/src/sys/compile/ALINK i386 >Description: There are two problems. First, GuessOS doesn't distinguish between BSD/OS 3 and BSD/OS 4. It must, because the correct procedure for building DSOs under BSD/OS 3 is different from under BSD/OS 4.
Second, of course, src/Configure lacks knowledge of how to do DSOs under BSD/OS 3, although what it has for *bsdi* is correct for BSD/OS 4. I don't know when dlopen() was introduced into BSD/OS. It is possible that the instructions I give for BSD/OS 3 are also correct for 2. However, I don't have a BSD/OS 2 machine available to me any more. >How-To-Repeat: >Fix: Yes, here are patches: For GuessOS: *** GuessOS 1999/04/01 05:36:20 1.1.1.4 --- GuessOS 1999/05/30 02:58:40 *************** *** 114,119 **** --- 114,127 ---- echo "i486-whatever-bsdi"; exit 0 ;; + BSD/386:*|BSD/OS:3.*:*) + echo "${MACHINE}-whatever-bsdi3"; exit 0 + ;; + + BSD/386:*|BSD/OS:4.*:*) + echo "${MACHINE}-whatever-bsdi4"; exit 0 + ;; + BSD/386:*|BSD/OS:*) echo "${MACHINE}-whatever-bsdi"; exit 0 ;; and for src/Configure (note, I do *not* supply a rule for *bsdi*): *** Configure 1999/05/26 03:17:17 1.1.1.5.4.1 --- Configure 1999/05/30 03:00:24 *************** *** 985,991 **** LDFLAGS_SHLIB_EXPORT="" SHLIB_SUFFIX_DEPTH=2 ;; ! *-bsdi) CFLAGS_SHLIB="-fPIC" LDFLAGS_SHLIB="-shared" LDFLAGS_SHLIB_EXPORT="-rdynamic" --- 985,998 ---- LDFLAGS_SHLIB_EXPORT="" SHLIB_SUFFIX_DEPTH=2 ;; ! *-bsdi3*) ! CFLAGS_SHLIB="-r" ! LDFLAGS_SHLIB="-r" ! LD_SHLIB="shlicc2" ! CC="shlicc2" ! LDFLAGS_SHLIB_EXPORT=" " ! ;; ! *-bsdi4*) CFLAGS_SHLIB="-fPIC" LDFLAGS_SHLIB="-shared" LDFLAGS_SHLIB_EXPORT="-rdynamic" Note that it's important, when building for dlopen() on BSD/OS 3, that the compiler for httpd itself be shlicc or shlicc2. Will setting CC in the above location have the desired effect? >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, you need] [to include <[EMAIL PROTECTED]> in the Cc line and make sure the] [subject line starts with the report component and number, with ] [or without any 'Re:' prefixes (such as "general/1098:" or ] ["Re: general/1098:"). If the subject doesn't match this ] [pattern, your message will be misfiled and ignored. The ] ["apbugs" address is not added to the Cc line of messages from ] [the database 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! ]