You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by Sander Striker <st...@apache.org> on 2001/07/18 12:20:53 UTC

[PATCH] exports.c creation

Hi,

I've written a new make_exports.awk script which I posted to the list
earlier.  Attached is a newer version which seems to handle everything
ok now.

To move to the new make_exports the following steps are required:

 - copy make_exports.awk to httpd-2.0/build
 - delete httpd-2.0/build/buildexports.sh and
          httpd-2.0/build/buildexports.awk
 - patch up httpd-2.0/server/Makefile.in (patch is at the
   bottom of this mail)

Now we can remove the make_exports stuff from apr aswell, since it is
not needed there.

I think this could be even faster than the make_exports steps that
were in place, so that shouldn't be the issue.

Oh, I just noticed that in apr/network_io/unix/sendrecv.c there is
a kludge to allow exports.c to compile/link.  Kludges like these
can now be happily removed.

Sander

--- server/Makefile.in  Wed Jul 18 11:45:23 2001
+++ server/Makefile.in.new      Wed Jul 18 11:07:25 2001
@@ -17,8 +17,7 @@
        util_filter.c exports.c buildmark.c scoreboard.c \
        error_bucket.c protocol.c core.c request.c

-TARGETS = delete-exports $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE)
export_vars.h \
-       httpd.exp
+TARGETS = $(LTLIBRARY_NAME) $(CORE_IMPLIB_FILE) export_vars.h httpd.exp

 include $(top_srcdir)/build/rules.mk
 include $(top_srcdir)/build/library.mk
@@ -32,28 +31,12 @@

 util.lo: test_char.h

-EXPORT_FILES = $(top_builddir)/srclib/apr/apr.exports \
-       $(top_builddir)/srclib/apr-util/aprutil.exports \
-       $(TARGET_EXPORTS)
-
-delete-exports:
-       @if test -f $(TARGET_EXPORTS); then \
-                   headers="`find $(top_srcdir)/include/*.h -newer
$(TARGET_EXPORTS)`" ; \
-                   if test -n "$$headers"; then \
-                       echo Found newer headers. Will rebuild
$(TARGET_EXPORTS). ; \
-                       echo rm -f $(TARGET_EXPORTS) ; \
-                       rm -f $(TARGET_EXPORTS) ; \
-                   fi \
-       fi
-
-
-$(TARGET_EXPORTS):
-       $(AWK) -f $(top_srcdir)/srclib/apr/build/make_export.awk \
-               $(top_srcdir)/include/*.h \
-               $(top_srcdir)/os/$(OS_DIR)/*.h > $@
-
+EXPORT_FILES = $(top_srcdir)/include/*.h \
+       $(top_srcdir)/srclib/apr/include/*.h \
+       $(top_srcdir)/srclib/apr-util/include/*.h
+
 exports.c: $(EXPORT_FILES)
-       (cat $(EXPORT_FILES) | $(top_srcdir)/build/buildexports.sh
$(top_srcdir)) > $@
+       $(AWK) -f $(top_srcdir)/build/make_exports.awk $(EXPORT_FILES) > $@

 export_vars.h:
        $(AWK) -f $(top_srcdir)/build/make_var_export.awk \

Re: [PATCH] exports.c creation

Posted by rb...@covalent.net.
++1

Ryan

On Wed, 18 Jul 2001, Sander Striker wrote:

> Hi,
>
> I've written a new make_exports.awk script which I posted to the list
> earlier.  Attached is a newer version which seems to handle everything
> ok now.
>
> To move to the new make_exports the following steps are required:
>
>  - copy make_exports.awk to httpd-2.0/build
>  - delete httpd-2.0/build/buildexports.sh and
>           httpd-2.0/build/buildexports.awk
>  - patch up httpd-2.0/server/Makefile.in (patch is at the
>    bottom of this mail)
>
> Now we can remove the make_exports stuff from apr aswell, since it is
> not needed there.
>
> I think this could be even faster than the make_exports steps that
> were in place, so that shouldn't be the issue.
>
> Oh, I just noticed that in apr/network_io/unix/sendrecv.c there is
> a kludge to allow exports.c to compile/link.  Kludges like these
> can now be happily removed.


_____________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
Covalent Technologies			rbb@covalent.net
-----------------------------------------------------------------------------


Re: [PATCH] exports.c creation

Posted by rb...@covalent.net.
++1

Ryan

On Wed, 18 Jul 2001, Sander Striker wrote:

> Hi,
>
> I've written a new make_exports.awk script which I posted to the list
> earlier.  Attached is a newer version which seems to handle everything
> ok now.
>
> To move to the new make_exports the following steps are required:
>
>  - copy make_exports.awk to httpd-2.0/build
>  - delete httpd-2.0/build/buildexports.sh and
>           httpd-2.0/build/buildexports.awk
>  - patch up httpd-2.0/server/Makefile.in (patch is at the
>    bottom of this mail)
>
> Now we can remove the make_exports stuff from apr aswell, since it is
> not needed there.
>
> I think this could be even faster than the make_exports steps that
> were in place, so that shouldn't be the issue.
>
> Oh, I just noticed that in apr/network_io/unix/sendrecv.c there is
> a kludge to allow exports.c to compile/link.  Kludges like these
> can now be happily removed.


_____________________________________________________________________________
Ryan Bloom                        	rbb@apache.org
Covalent Technologies			rbb@covalent.net
-----------------------------------------------------------------------------