You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by "William A. Rowe, Jr." <wr...@rowe-clan.net> on 2007/10/01 09:22:11 UTC

Time to chop exports.c in half?

server/Makefile.in;

export_files:
        tmp=export_files_unsorted.txt; \
        rm -f $$tmp && touch $$tmp; \
        for dir in $(EXPORT_DIRS); do \
            ls $$dir/*.h >> $$tmp; \
        done; \
        for dir in $(EXPORT_DIRS_APR); do \
            (ls $$dir/ap[ru].h $$dir/ap[ru]_*.h >> $$tmp 2>/dev/null); \
        done; \
        sort -u $$tmp > $@; \
        rm -f $$tmp

Isn't it time, already, do do away with everything related to EXPORT_DIRS_APR
in httpd 2.3-dev?  (Obviously I wouldn't suggest changing anything for 2.2).

It seems every modern OS should do a perfectly respectible job of binding
dynamic libraries and their symbols without this extra, leftover cruft.

Bill

Re: Time to chop exports.c in half?

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Joe Orton wrote:
> On Mon, Oct 01, 2007 at 02:22:11AM -0500, William Rowe wrote:
>> server/Makefile.in;
>>
>> export_files:
>>         tmp=export_files_unsorted.txt; \
>>         rm -f $$tmp && touch $$tmp; \
>>         for dir in $(EXPORT_DIRS); do \
>>             ls $$dir/*.h >> $$tmp; \
>>         done; \
>>         for dir in $(EXPORT_DIRS_APR); do \
>>             (ls $$dir/ap[ru].h $$dir/ap[ru]_*.h >> $$tmp 2>/dev/null); \
>>         done; \
>>         sort -u $$tmp > $@; \
>>         rm -f $$tmp
>>
>> Isn't it time, already, do do away with everything related to EXPORT_DIRS_APR
>> in httpd 2.3-dev?  (Obviously I wouldn't suggest changing anything for 2.2).
>>
>> It seems every modern OS should do a perfectly respectible job of binding
>> dynamic libraries and their symbols without this extra, leftover cruft.
> 
> It's still necessary where APR/APR-util are built as static archives 
> rather than shared libraries (i.e. configure --disable-shared).  To be 
> able to avoid it in httpd would mean exporting the $enable_shared from 
> apr/configure somehow.  (it is certainly useful and reduces the size of 
> the httpd binary by something like 25% for a minimal build IIRC)

Patch targeting trunk-only forthcoming.  Thanks for the feedback Joe.

Bill

Re: Time to chop exports.c in half?

Posted by Joe Orton <jo...@redhat.com>.
On Mon, Oct 01, 2007 at 02:22:11AM -0500, William Rowe wrote:
> server/Makefile.in;
> 
> export_files:
>         tmp=export_files_unsorted.txt; \
>         rm -f $$tmp && touch $$tmp; \
>         for dir in $(EXPORT_DIRS); do \
>             ls $$dir/*.h >> $$tmp; \
>         done; \
>         for dir in $(EXPORT_DIRS_APR); do \
>             (ls $$dir/ap[ru].h $$dir/ap[ru]_*.h >> $$tmp 2>/dev/null); \
>         done; \
>         sort -u $$tmp > $@; \
>         rm -f $$tmp
> 
> Isn't it time, already, do do away with everything related to EXPORT_DIRS_APR
> in httpd 2.3-dev?  (Obviously I wouldn't suggest changing anything for 2.2).
>
> It seems every modern OS should do a perfectly respectible job of binding
> dynamic libraries and their symbols without this extra, leftover cruft.

It's still necessary where APR/APR-util are built as static archives 
rather than shared libraries (i.e. configure --disable-shared).  To be 
able to avoid it in httpd would mean exporting the $enable_shared from 
apr/configure somehow.  (it is certainly useful and reduces the size of 
the httpd binary by something like 25% for a minimal build IIRC)

joe