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...@lnd.com> on 2000/03/20 19:44:13 UTC
[Patch 2.0] Win32 Build Structure
apache-2.0.diffs address all of the following from the weekend:
1) makefile.nt builds within 95/98/NT
2) removes all precompiled header flags
3) builds logresolve, htpasswd, htdigest
4) fixed dirty build of htpasswd to deposit it's results
into Debug - Release directories.
5) deposits copy of aprlib.dll to @@ServerRoot@@/bin for
htpasswd and htdigest.
6) CHANGES for this and the COMSPEC resolution
Post cvs update steps...
1) Add attached logresolve dsp/mak files
into apache-2.0/src/support
2) Rename makefile.nt to makefile.win
3) Kill makefile_win32.txt and makefile_win32_debug.txt
Todo:
1) Don't try aprlib.dll on installdll unless we want
the headache - either strip ap_snprintf requirements,
plan on linking in aprlib.dll to installdll (yuck),
or tightly bind to the c code (not pleasent either).
2) Test logresolve.exe (builds - echos - not sure it
actually resolves anything. But it doesn't hurt
anything either).
3) Review aprlib.dll location for 'best practices'.
RE: [Patch 2.0] Win32 Build Structure
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
Ok... I've wasted enough hours on this today...
Try quoting the stated 'platform sdk' includes as
#include <> - which should prevent them from ever
becoming dependencys of the target. We should look
at this project-wide, you might just use devstudio
to mass re-create all the make files and look for
victims of bad #includes.
If you want to roll in the installdll stuff, i've
attached a copy with the 'platform sdk' stuff
stripped out.
> -----Original Message-----
> From: Bill Stoddard [mailto:stoddard@raleigh.ibm.com]
> Sent: Monday, March 20, 2000 4:49 PM
> To: new-httpd@apache.org
> Subject: Re: [Patch 2.0] Win32 Build Structure
>
>
> + "..\..\..\..\platform sdk\include\basetsd.h"\
> + "..\..\..\..\platform sdk\include\guiddef.h"\
> + "..\..\..\..\platform sdk\include\qos.h"\
> + "..\..\..\..\platform sdk\include\tvout.h"\
>
> This looks quite scary! Okay, I am off to home to do this
> work from my new
> Athlon 700!
>
> Bill
>
Re: [Patch 2.0] Win32 Build Structure
Posted by Bill Stoddard <st...@raleigh.ibm.com>.
+ "..\..\..\..\platform sdk\include\basetsd.h"\
+ "..\..\..\..\platform sdk\include\guiddef.h"\
+ "..\..\..\..\platform sdk\include\qos.h"\
+ "..\..\..\..\platform sdk\include\tvout.h"\
This looks quite scary! Okay, I am off to home to do this work from my new
Athlon 700!
Bill
Re: [Patch 2.0] Win32 Build Structure
Posted by Bill Stoddard <st...@raleigh.ibm.com>.
> > 1) Don't try aprlib.dll on installdll unless we want
> > the headache - either strip ap_snprintf requirements,
> > plan on linking in aprlib.dll to installdll (yuck),
> > or tightly bind to the c code (not pleasent either).
>
> So basically the installer is broke for now. Is that right? How else can
I
> get the conf files built?
Yep.
What exactly are you wanting to do? You don't need the installer to run
Apache on Windows. In fact, I have never used the installer, other than to
do testing of binary packages we put up on the website. Hand copy httpd.conf
(httpd.conf-dist-win), mime.types, et. al from apache-2.0/conf directory
into /apache/conf. nmake -f makefile.nt installd will install into directory
/apache.
Bill
Re: [Patch 2.0] Win32 Build Structure
Posted by Brian Moon <br...@dealnews.com>.
ok after adding the registry key it runs but complains that it cannot find
the httpd.conf file even though it is there. I tried to run apache -h and
got:
APACHE caused an invalid page fault in
module APRLIB.DLL at 015f:100029a5.
Registers:
EAX=009c0e40 CS=015f EIP=100029a5 EFLGS=00010206
EBX=009c0e40 SS=0167 ESP=0068bcfc EBP=008b629c
ECX=00000000 DS=0167 ESI=00000000 FS=7067
EDX=bffc9490 ES=0167 EDI=007b0e51 GS=0000
Bytes at CS:EIP:
8b 46 10 85 c0 74 10 50 e8 ae 00 00 00 8b 46 10
Stack dump:
00000000 10002a6b 00000000 007b0e3c 10002acc 00000000 00417dcc 009c0e40
00418148 008b629c 00000001 0044523c 00000110 00000028 00000000 00000000
The quest continues.
Brian Moon
----------------------------------------------------------------------
dealnews LLC
Makers of dealnews, dealmac
http://dealnews.com/ | http://dealmac.com/
----- Original Message -----
From: "William A. Rowe, Jr." <wr...@lnd.com>
To: <ne...@apache.org>
Sent: Monday, March 20, 2000 10:37 PM
Subject: RE: [Patch 2.0] Win32 Build Structure
> Looks like it might be faulting upon return from _ap_clear_pool.
> I don't like the look of EBP in your dump either. You are trying
> a release build, correct? What's your warning message?
>
> This brings to mind several points;
>
> 1) We need to BASE= all the dll's, to prevent load time fixup
> (I can never comprehend how many production .dll's wander
> around with 0x10000000 base!?!) and help identify addresses.
>
> 2) We need to create .map files from the linker to assist in
> debugging the release build for others.
>
> New projects for Wednesday, I guess. First I'm fixing up the
> 98/NT explict linkage to GetFileAttributesEx, which won't bind
> to the 95 kernel32 (causing Apache.exe to fail, of course).
> I wonder if the bug you found might not be something similar.
>
> I won't find out myself until it loads on 95.
>
> The only key I'm sure we look at is:
>
> HKEY_LOCAL_MACHINE\SOFTWARE\Apache Group\Apache\2.0
>
> ServerRoot="C:\Apache" [or what have you.]
>
> > -----Original Message-----
> > From: Brian Moon [mailto:brianm@dealnews.com]
> > Sent: Monday, March 20, 2000 5:32 PM
> > To: new-httpd@apache.org
> > Subject: Re: [Patch 2.0] Win32 Build Structure
> >
> >
> > The dll built. I really am interested in seeing Apache run
> > though. I did
> > not (duh) look for the conf files in the dist. Only thing now is that
> > Apache complains about the registry. What key needs to be added?
> >
> > Right now Apache starts and spits out a warning about the registry and
> > GPF's:
> >
> > APACHE caused an invalid page fault in
> > module APRLIB.DLL at 015f:10002b41.
> > Registers:
> > EAX=009c0ee0 CS=015f EIP=10002b41 EFLGS=00010202
> > EBX=00000008 SS=0167 ESP=0068bd44 EBP=00000001
> > ECX=00000000 DS=0167 ESI=009c0ee0 FS=4ac7
> > EDX=00000008 ES=0167 EDI=00000000 GS=4abe
> > Bytes at CS:EIP:
> > 8b 4f 04 8b 41 08 7f 06 5f 5e 33 c0 5b c3 55 8b
> > Stack dump:
> > 00000008 00403030 007b0e3a 10002bf8 009c0ee0 00000008
> > 00403038 009c0ee0
> > 004338cd 009c0ee0 00403030 008b42e8 00000001 007b0e3a
> > 008b4298 72617774
> >
> > I am not sure if this is because of the registry or not. I
> > would think that
> > Apache could recover from not finding the data in the
> > registry. Maybe not.
> >
> > Brian Moon
> > ----------------------------------------------------------------------
> > dealnews LLC
> > Makers of dealnews, dealmac
> > http://dealnews.com/ | http://dealmac.com/
> >
> >
> > ----- Original Message -----
> > From: "William A. Rowe, Jr." <wr...@lnd.com>
> > To: <ne...@apache.org>
> > Sent: Monday, March 20, 2000 4:44 PM
> > Subject: RE: [Patch 2.0] Win32 Build Structure
> >
> >
> > > Depends on what q. you are asking....
> > >
> > > If you are asking how to create your vanilla http.conf, save
> > > httpd.conf-dist-win as httpd.conf and replace @@ServerRoot@@
> > > with the server root path.
> > >
> > > If you are asking how do we start building the install binaries,
> > > I'd suggest we hack it one of the three ways I mentioned, just
> > > pick your poison. But... if we are asking to bundle the alpha
> > > to end user-testers as binaries, I'd ask if we are even ready
> > > for that yet. It won't run on 95 (kernel32 GetFileAttributesExA
> > > is missing, of course) without a rewrite using FindFirstFile,
> > > and until the final touches are put on the apr, I'd suggest we
> > > are way ahead of the curve.
> > >
> > > I know my personal list of things I want to see working needs
> > > no help yet from the bugdb. Since you are keenly interested,
> > > though, I've attached the files for os/win32/installer/installdll
> > > and will post up the diffs in the next go around. Before anyone
> > > thinks of committing these though - Brian, give them a whack.
> > >
> > > Bill
> > >
> > > > -----Original Message-----
> > > > From: Brian Moon [mailto:brianm@dealnews.com]
> > > > Sent: Monday, March 20, 2000 3:57 PM
> > > > To: new-httpd@apache.org
> > > > Subject: Re: [Patch 2.0] Win32 Build Structure
> > > >
> > > >
> > > > > 1) Don't try aprlib.dll on installdll unless we want
> > > > > the headache - either strip ap_snprintf requirements,
> > > > > plan on linking in aprlib.dll to installdll (yuck),
> > > > > or tightly bind to the c code (not pleasent either).
> > > >
> > > > So basically the installer is broke for now. Is that right?
> > > > How else can I
> > > > get the conf files built?
> > > >
> > > > Brian Moon
> > > >
> > ----------------------------------------------------------------------
> > > > dealnews LLC
> > > > Makers of dealnews, dealmac
> > > > http://dealnews.com/ | http://dealmac.com/
> > > >
> > > >
> >
>
>
Re: [Patch 2.0] Win32 Build Structure
Posted by Bill Stoddard <st...@raleigh.ibm.com>.
>
> This brings to mind several points;
>
> 1) We need to BASE= all the dll's, to prevent load time fixup
> (I can never comprehend how many production .dll's wander
> around with 0x10000000 base!?!) and help identify addresses.
>
> 2) We need to create .map files from the linker to assist in
> debugging the release build for others.
There was a patch posted on the list several months ago to do this. I'll dig
it up.
>
> New projects for Wednesday, I guess. First I'm fixing up the
> 98/NT explict linkage to GetFileAttributesEx, which won't bind
> to the 95 kernel32 (causing Apache.exe to fail, of course).
> I wonder if the bug you found might not be something similar.
There are a ton of other problems with Apache 2.0 on 95/98. All the pieces
to support 95/98 in the winnt MPM are in place but broken, APR uses
TransmitFile which is not supported and I'm sure there are many other
problems as well.
Bill
RE: [Patch 2.0] Win32 Build Structure
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
Looks like it might be faulting upon return from _ap_clear_pool.
I don't like the look of EBP in your dump either. You are trying
a release build, correct? What's your warning message?
This brings to mind several points;
1) We need to BASE= all the dll's, to prevent load time fixup
(I can never comprehend how many production .dll's wander
around with 0x10000000 base!?!) and help identify addresses.
2) We need to create .map files from the linker to assist in
debugging the release build for others.
New projects for Wednesday, I guess. First I'm fixing up the
98/NT explict linkage to GetFileAttributesEx, which won't bind
to the 95 kernel32 (causing Apache.exe to fail, of course).
I wonder if the bug you found might not be something similar.
I won't find out myself until it loads on 95.
The only key I'm sure we look at is:
HKEY_LOCAL_MACHINE\SOFTWARE\Apache Group\Apache\2.0
ServerRoot="C:\Apache" [or what have you.]
> -----Original Message-----
> From: Brian Moon [mailto:brianm@dealnews.com]
> Sent: Monday, March 20, 2000 5:32 PM
> To: new-httpd@apache.org
> Subject: Re: [Patch 2.0] Win32 Build Structure
>
>
> The dll built. I really am interested in seeing Apache run
> though. I did
> not (duh) look for the conf files in the dist. Only thing now is that
> Apache complains about the registry. What key needs to be added?
>
> Right now Apache starts and spits out a warning about the registry and
> GPF's:
>
> APACHE caused an invalid page fault in
> module APRLIB.DLL at 015f:10002b41.
> Registers:
> EAX=009c0ee0 CS=015f EIP=10002b41 EFLGS=00010202
> EBX=00000008 SS=0167 ESP=0068bd44 EBP=00000001
> ECX=00000000 DS=0167 ESI=009c0ee0 FS=4ac7
> EDX=00000008 ES=0167 EDI=00000000 GS=4abe
> Bytes at CS:EIP:
> 8b 4f 04 8b 41 08 7f 06 5f 5e 33 c0 5b c3 55 8b
> Stack dump:
> 00000008 00403030 007b0e3a 10002bf8 009c0ee0 00000008
> 00403038 009c0ee0
> 004338cd 009c0ee0 00403030 008b42e8 00000001 007b0e3a
> 008b4298 72617774
>
> I am not sure if this is because of the registry or not. I
> would think that
> Apache could recover from not finding the data in the
> registry. Maybe not.
>
> Brian Moon
> ----------------------------------------------------------------------
> dealnews LLC
> Makers of dealnews, dealmac
> http://dealnews.com/ | http://dealmac.com/
>
>
> ----- Original Message -----
> From: "William A. Rowe, Jr." <wr...@lnd.com>
> To: <ne...@apache.org>
> Sent: Monday, March 20, 2000 4:44 PM
> Subject: RE: [Patch 2.0] Win32 Build Structure
>
>
> > Depends on what q. you are asking....
> >
> > If you are asking how to create your vanilla http.conf, save
> > httpd.conf-dist-win as httpd.conf and replace @@ServerRoot@@
> > with the server root path.
> >
> > If you are asking how do we start building the install binaries,
> > I'd suggest we hack it one of the three ways I mentioned, just
> > pick your poison. But... if we are asking to bundle the alpha
> > to end user-testers as binaries, I'd ask if we are even ready
> > for that yet. It won't run on 95 (kernel32 GetFileAttributesExA
> > is missing, of course) without a rewrite using FindFirstFile,
> > and until the final touches are put on the apr, I'd suggest we
> > are way ahead of the curve.
> >
> > I know my personal list of things I want to see working needs
> > no help yet from the bugdb. Since you are keenly interested,
> > though, I've attached the files for os/win32/installer/installdll
> > and will post up the diffs in the next go around. Before anyone
> > thinks of committing these though - Brian, give them a whack.
> >
> > Bill
> >
> > > -----Original Message-----
> > > From: Brian Moon [mailto:brianm@dealnews.com]
> > > Sent: Monday, March 20, 2000 3:57 PM
> > > To: new-httpd@apache.org
> > > Subject: Re: [Patch 2.0] Win32 Build Structure
> > >
> > >
> > > > 1) Don't try aprlib.dll on installdll unless we want
> > > > the headache - either strip ap_snprintf requirements,
> > > > plan on linking in aprlib.dll to installdll (yuck),
> > > > or tightly bind to the c code (not pleasent either).
> > >
> > > So basically the installer is broke for now. Is that right?
> > > How else can I
> > > get the conf files built?
> > >
> > > Brian Moon
> > >
> ----------------------------------------------------------------------
> > > dealnews LLC
> > > Makers of dealnews, dealmac
> > > http://dealnews.com/ | http://dealmac.com/
> > >
> > >
>
Re: [Patch 2.0] Win32 Build Structure
Posted by Brian Moon <br...@dealnews.com>.
The dll built. I really am interested in seeing Apache run though. I did
not (duh) look for the conf files in the dist. Only thing now is that
Apache complains about the registry. What key needs to be added?
Right now Apache starts and spits out a warning about the registry and
GPF's:
APACHE caused an invalid page fault in
module APRLIB.DLL at 015f:10002b41.
Registers:
EAX=009c0ee0 CS=015f EIP=10002b41 EFLGS=00010202
EBX=00000008 SS=0167 ESP=0068bd44 EBP=00000001
ECX=00000000 DS=0167 ESI=009c0ee0 FS=4ac7
EDX=00000008 ES=0167 EDI=00000000 GS=4abe
Bytes at CS:EIP:
8b 4f 04 8b 41 08 7f 06 5f 5e 33 c0 5b c3 55 8b
Stack dump:
00000008 00403030 007b0e3a 10002bf8 009c0ee0 00000008 00403038 009c0ee0
004338cd 009c0ee0 00403030 008b42e8 00000001 007b0e3a 008b4298 72617774
I am not sure if this is because of the registry or not. I would think that
Apache could recover from not finding the data in the registry. Maybe not.
Brian Moon
----------------------------------------------------------------------
dealnews LLC
Makers of dealnews, dealmac
http://dealnews.com/ | http://dealmac.com/
----- Original Message -----
From: "William A. Rowe, Jr." <wr...@lnd.com>
To: <ne...@apache.org>
Sent: Monday, March 20, 2000 4:44 PM
Subject: RE: [Patch 2.0] Win32 Build Structure
> Depends on what q. you are asking....
>
> If you are asking how to create your vanilla http.conf, save
> httpd.conf-dist-win as httpd.conf and replace @@ServerRoot@@
> with the server root path.
>
> If you are asking how do we start building the install binaries,
> I'd suggest we hack it one of the three ways I mentioned, just
> pick your poison. But... if we are asking to bundle the alpha
> to end user-testers as binaries, I'd ask if we are even ready
> for that yet. It won't run on 95 (kernel32 GetFileAttributesExA
> is missing, of course) without a rewrite using FindFirstFile,
> and until the final touches are put on the apr, I'd suggest we
> are way ahead of the curve.
>
> I know my personal list of things I want to see working needs
> no help yet from the bugdb. Since you are keenly interested,
> though, I've attached the files for os/win32/installer/installdll
> and will post up the diffs in the next go around. Before anyone
> thinks of committing these though - Brian, give them a whack.
>
> Bill
>
> > -----Original Message-----
> > From: Brian Moon [mailto:brianm@dealnews.com]
> > Sent: Monday, March 20, 2000 3:57 PM
> > To: new-httpd@apache.org
> > Subject: Re: [Patch 2.0] Win32 Build Structure
> >
> >
> > > 1) Don't try aprlib.dll on installdll unless we want
> > > the headache - either strip ap_snprintf requirements,
> > > plan on linking in aprlib.dll to installdll (yuck),
> > > or tightly bind to the c code (not pleasent either).
> >
> > So basically the installer is broke for now. Is that right?
> > How else can I
> > get the conf files built?
> >
> > Brian Moon
> > ----------------------------------------------------------------------
> > dealnews LLC
> > Makers of dealnews, dealmac
> > http://dealnews.com/ | http://dealmac.com/
> >
> >
RE: [Patch 2.0] Win32 Build Structure
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
Depends on what q. you are asking....
If you are asking how to create your vanilla http.conf, save
httpd.conf-dist-win as httpd.conf and replace @@ServerRoot@@
with the server root path.
If you are asking how do we start building the install binaries,
I'd suggest we hack it one of the three ways I mentioned, just
pick your poison. But... if we are asking to bundle the alpha
to end user-testers as binaries, I'd ask if we are even ready
for that yet. It won't run on 95 (kernel32 GetFileAttributesExA
is missing, of course) without a rewrite using FindFirstFile,
and until the final touches are put on the apr, I'd suggest we
are way ahead of the curve.
I know my personal list of things I want to see working needs
no help yet from the bugdb. Since you are keenly interested,
though, I've attached the files for os/win32/installer/installdll
and will post up the diffs in the next go around. Before anyone
thinks of committing these though - Brian, give them a whack.
Bill
> -----Original Message-----
> From: Brian Moon [mailto:brianm@dealnews.com]
> Sent: Monday, March 20, 2000 3:57 PM
> To: new-httpd@apache.org
> Subject: Re: [Patch 2.0] Win32 Build Structure
>
>
> > 1) Don't try aprlib.dll on installdll unless we want
> > the headache - either strip ap_snprintf requirements,
> > plan on linking in aprlib.dll to installdll (yuck),
> > or tightly bind to the c code (not pleasent either).
>
> So basically the installer is broke for now. Is that right?
> How else can I
> get the conf files built?
>
> Brian Moon
> ----------------------------------------------------------------------
> dealnews LLC
> Makers of dealnews, dealmac
> http://dealnews.com/ | http://dealmac.com/
>
>
Re: [Patch 2.0] Win32 Build Structure
Posted by Brian Moon <br...@dealnews.com>.
> 1) Don't try aprlib.dll on installdll unless we want
> the headache - either strip ap_snprintf requirements,
> plan on linking in aprlib.dll to installdll (yuck),
> or tightly bind to the c code (not pleasent either).
So basically the installer is broke for now. Is that right? How else can I
get the conf files built?
Brian Moon
----------------------------------------------------------------------
dealnews LLC
Makers of dealnews, dealmac
http://dealnews.com/ | http://dealmac.com/
RE: Win32 Workspace (was Build Structure)
Posted by Greg Marr <gr...@alum.wpi.edu>.
At 11:46 AM 03/21/2000, William Rowe wrote:
>Cool idea - in fact that's what I run here. My file's attached.
>It's home is apache-2.0/src, although I keep my own out of the
>project tree entirely.
>
>However... you end up with simply a .dsw workspace. The .dsw wraps
>our existing .dsp files. Using the export makefile(s) generates the
>individual make files, en masse, not a single global (under VC5).
>I know i'm just getting up to speed on all the depends, includes and
>links myself. So please double check the dependencies; I would have
>really appreciated a .dsw right off the bat to get up to speed!
I've gotten some preliminary stuff done, but ran into a
wall. DevStudio won't export a .mak for a makefile project, and I
was using a makefile project with dependencies for getting everything
built and copied. I've had some other thoughts on how this might
work that I'm planning to check out tonight.
--
Greg Marr
gregm@alum.wpi.edu
"We thought you were dead."
"I was, but I'm better now." - Sheridan, "The Summoning"
Re: Win32 Build Structure
Posted by Greg Marr <gr...@alum.wpi.edu>.
At 11:09 AM 03/21/2000, you wrote:
> > I finally got a chance to download and build Apache 2.0 on my NT
> box
> > last night. I was wondering about the makeup of the build
> > system. The top-level Makefile.nt is just an NMAKE makefile, and
> > there is no workspace, while all of the subprojects it calls are
> mak
> > files generated from .DSP files, each with their own workspace
> (or at
> > least some with their own workspace.)
> >
> > Is there any reason that the top-level makefile is not also a DSP,
> > with an exported .mak?
>
>Replacing Makefile.win with a DSP seems overkill.
>I removed Makefile.nt from the 2.0 tree last night and replaced it
>with Makefile.win, which should work for all the Windows distributions.
Well, it depends on how the DSP/DSW are written. I haven't seen the
Makefile.win yet, but I'll take a shot at the DSP/DSW tonight and
send them to the list so people can take a look at them and see what
they think. It'll probably mostly be a wrapper around a reduced
version of Makefile.win for the installation part, and dependencies
on the other already-existing DSPs. It will also have the advantage
for people who work in the IDE that they'll have all the projects
available in the workspace for easy access.
>Makefile.win is really simple and it's easy to quickly edit it to
>adjust which modules you build, etc. I am more of a Unix person than
>a Windows person (I use cygwin32, vim, emacs, et. al.), so maybe I'm
>biased :-)
I've been a Unix person a lot longer (9 years) than I've been a
Windows developer (3 years). I have Emacs installed on multiple
machines, but don't use it as much for Windows development. I am a
Windows software developer, so I use VC++ constantly at work, and
prefer it when developing on Windows, so I have easy access to the
help and the integration with the compiler is very good. I do use
Emacs and gcc/g++ when working on Unix boxes.
--
Greg Marr
gregm@alum.wpi.edu
"We thought you were dead."
"I was, but I'm better now." - Sheridan, "The Summoning"
Re: Win32 Build Structure
Posted by Bill Stoddard <st...@raleigh.ibm.com>.
I removed Makefile.nt from the 2.0 tree last night and replaced it with
Makefile.win, which should work for all the Windows distributions.
> I finally got a chance to download and build Apache 2.0 on my NT box
> last night. I was wondering about the makeup of the build
> system. The top-level Makefile.nt is just an NMAKE makefile, and
> there is no workspace, while all of the subprojects it calls are mak
> files generated from .DSP files, each with their own workspace (or at
> least some with their own workspace.)
>
> Is there any reason that the top-level makefile is not also a DSP,
> with an exported .mak?
Replacing Makefile.win with a DSP seems overkill. Makefile.win is really
simple and it's easy to quickly edit it to adjust which modules you build,
etc. I am more of a Unix person than a Windows person (I use cygwin32, vim,
emacs, et. al.), so maybe I'm biased :-)
Bill
RE: Win32 Workspace (was Build Structure)
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
> -----Original Message-----
> From: William A. Rowe, Jr. [mailto:wrowe@lnd.com]
> Sent: Tuesday, March 21, 2000 10:47 AM
> To: new-httpd@apache.org
> Subject: RE: Win32 Workspace (was Build Structure)
>
>
> Cool idea - in fact that's what I run here. My file's attached.
> It's home is apache-2.0/src, although I keep my own out of the
> project tree entirely.
yet more fun, attached are Apache.dsw (with the reference to a
third party module removed) and InstallExe.dsp, which invokes
makefile.win to actually install the project. If anyone figures
out an effective way to specify the installation target (pass
a INSTDIR= without having to modify the makefile command line)
I'd love to see it.
Again, my dependencies could be all whacked, so please look
closely.
Bill
RE: Win32 Workspace (was Build Structure)
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
Cool idea - in fact that's what I run here. My file's attached.
It's home is apache-2.0/src, although I keep my own out of the
project tree entirely.
However... you end up with simply a .dsw workspace. The .dsw wraps
our existing .dsp files. Using the export makefile(s) generates the
individual make files, en masse, not a single global (under VC5).
I know i'm just getting up to speed on all the depends, includes and
links myself. So please double check the dependencies; I would have
really appreciated a .dsw right off the bat to get up to speed!
I don't know if VC6 behaves differently in these respects than VC5.
Whatever we do, we should not abandon maintaining makefile.win, though.
It's the sure fire way to make sure the thing builds, regardless of
how the user bashed their DevStudio environment. (Just pray that the
vcvars32.bat file isn't trashed as well.)
Bill
> -----Original Message-----
> From: Greg Marr [mailto:gregm@alum.wpi.edu]
> Sent: Tuesday, March 21, 2000 9:23 AM
> To: new-httpd@apache.org
> Subject: RE: Win32 Build Structure
>
>
> I finally got a chance to download and build Apache 2.0 on my NT box
> last night. I was wondering about the makeup of the build
> system. The top-level Makefile.nt is just an NMAKE makefile, and
> there is no workspace, while all of the subprojects it calls are mak
> files generated from .DSP files, each with their own workspace (or at
> least some with their own workspace.)
>
> Is there any reason that the top-level makefile is not also a DSP,
> with an exported .mak? If done properly, using project dependencies,
> this would get rid of all that %SHORT% %LONG% garbage that has been
> giving people problems over the last couple days. I'd be willing to
> generate the DSP and DSW for this if there is interest, and if there
> aren't any technical reasons not to. I much prefer building from the
> IDE than building from the command line, so I built a makefile
> project that wraps Makefile.nt, and the DSW for that project. If
> nothing else, I can contribute those.
>
> --
> Greg Marr
> gregm@alum.wpi.edu
> "We thought you were dead."
> "I was, but I'm better now." - Sheridan, "The Summoning"
>
RE: Win32 Build Structure
Posted by Greg Marr <gr...@alum.wpi.edu>.
I finally got a chance to download and build Apache 2.0 on my NT box
last night. I was wondering about the makeup of the build
system. The top-level Makefile.nt is just an NMAKE makefile, and
there is no workspace, while all of the subprojects it calls are mak
files generated from .DSP files, each with their own workspace (or at
least some with their own workspace.)
Is there any reason that the top-level makefile is not also a DSP,
with an exported .mak? If done properly, using project dependencies,
this would get rid of all that %SHORT% %LONG% garbage that has been
giving people problems over the last couple days. I'd be willing to
generate the DSP and DSW for this if there is interest, and if there
aren't any technical reasons not to. I much prefer building from the
IDE than building from the command line, so I built a makefile
project that wraps Makefile.nt, and the DSW for that project. If
nothing else, I can contribute those.
--
Greg Marr
gregm@alum.wpi.edu
"We thought you were dead."
"I was, but I'm better now." - Sheridan, "The Summoning"
RE: [Patch 2.0] Win32 Build Structure
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
> From: Bill Stoddard [mailto:stoddard@raleigh.ibm.com]
> Reviewing the now.
Thanks for cleaning out the cestpool of win32 mak files,
cleaning out pch's from apache/apachecore. That's -6MB
wasted. Attached is the only other brainless issue, forcing
installdll to build and cleaning out the rest of the mak/pch
files (excluding the /src/support I mentioned above).
I've no problems with the #SUBTRACT CCP approach instead. So
attached is a clean patch of nothing but these /YX updates
(apache-2.0-yh.diffs) to most of the build tree, excluding
most of support and installdll. This will free up many,
many more MB of .pch wastebaskets.
And while it is premature to actually distribute as binary,
I've attached the fix to assure installdll builds at the
attachment apache-2.0-install.diffs
This should have been a few seperate pieces, obviously.
I need to go back to logresolve/htpasswd/htdigest, since
now they won't so much as build for me (overwrote my own
work from cvs last night). A support patch will follow
later (in time for alpha candidate II, I hope).
Please consider the attached apache-2.0-yh.diffs, and the
apache-2.0-install.diffs.
Again, thanks for the updates
Bill
> From: William A. Rowe, Jr. <wr...@lnd.com>
> > apache-2.0.diffs address all of the following from the weekend:
> >
> > 1) makefile.nt builds within 95/98/NT
done
> > 2) removes all precompiled header flags
apache/apachecore committed, seperate /YH patch attached
> > 3) builds logresolve, htpasswd, htdigest
seperate support patch to follow
> > 4) fixed dirty build of htpasswd to deposit it's results
> > into Debug - Release directories.
seperate support patch to follow
> > 5) deposits copy of aprlib.dll to @@ServerRoot@@/bin for
> > htpasswd and htdigest.
good question, maybe not
> > 6) CHANGES for this and the COMSPEC resolution
done
> >
> > Post cvs update steps...
> >
> > 1) Add attached logresolve dsp/mak files
> > into apache-2.0/src/support
seperate support patch to follow
> > 2) Rename makefile.nt to makefile.win
done
> > 3) Kill makefile_win32.txt and makefile_win32_debug.txt
done (hooray!)
> >
> > Todo:
> >
> > 1) Don't try aprlib.dll on installdll unless we want
> > the headache - either strip ap_snprintf requirements,
> > plan on linking in aprlib.dll to installdll (yuck),
> > or tightly bind to the c code (not pleasent either).
the answer is... tightly bound (recompiled/linked in)
seperate install patch attached
> >
> > 2) Test logresolve.exe (builds - echos - not sure it
> > actually resolves anything. But it doesn't hurt
> > anything either).
nothing to test, support patch to follow
> >
> > 3) Review aprlib.dll location for 'best practices'.
that depends on step 5 above
RE: [Patch 1.3] Win32 Build Structure
Posted by "William A. Rowe, Jr." <wr...@lnd.com>.
Please, before appling the 1.3 patch, take a close look at the header
changes I propose to resolvelogs.c - I simplified the includes vis a vie 2.0
and might have broken it. Will cgethost(), getline() and stats()
declarations break BEOS or MPE?
And... would BEOS prefer #define NO_ADDRESS NO_DATA per 2.0???
... does the BEOS #include <netinet/in.h> conflict?
Bill
> -----Original Message-----
> From: Bill Stoddard [mailto:stoddard@raleigh.ibm.com]
> Sent: Monday, March 20, 2000 12:53 PM
> To: new-httpd@apache.org
> Subject: Re: [Patch 2.0] Win32 Build Structure
>
>
> Reviewing the now.
>
If there's a better way to cvs diff -u apache-1.3, please tell.
Re: [Patch 2.0] Win32 Build Structure
Posted by Bill Stoddard <st...@raleigh.ibm.com>.
Reviewing the now.
Bill
----- Original Message -----
From: William A. Rowe, Jr. <wr...@lnd.com>
To: <ne...@apache.org>
Sent: Monday, March 20, 2000 1:44 PM
Subject: [Patch 2.0] Win32 Build Structure
> apache-2.0.diffs address all of the following from the weekend:
>
> 1) makefile.nt builds within 95/98/NT
> 2) removes all precompiled header flags
> 3) builds logresolve, htpasswd, htdigest
> 4) fixed dirty build of htpasswd to deposit it's results
> into Debug - Release directories.
> 5) deposits copy of aprlib.dll to @@ServerRoot@@/bin for
> htpasswd and htdigest.
> 6) CHANGES for this and the COMSPEC resolution
>
> Post cvs update steps...
>
> 1) Add attached logresolve dsp/mak files
> into apache-2.0/src/support
> 2) Rename makefile.nt to makefile.win
> 3) Kill makefile_win32.txt and makefile_win32_debug.txt
>
> Todo:
>
> 1) Don't try aprlib.dll on installdll unless we want
> the headache - either strip ap_snprintf requirements,
> plan on linking in aprlib.dll to installdll (yuck),
> or tightly bind to the c code (not pleasent either).
>
> 2) Test logresolve.exe (builds - echos - not sure it
> actually resolves anything. But it doesn't hurt
> anything either).
>
> 3) Review aprlib.dll location for 'best practices'.