[mapguide-internals] [fdo-internals] build script confusion RFC62???

Greg Boone greg.boone at autodesk.com
Fri Apr 17 08:41:18 EDT 2009


Hi All,

I have to follow-up on Jason's statement that any significant change in the FDO build/install needs an RFC so that we can asses impact and plan accordingly. I also re-iterate Trevor's statement that there is a clear separation between build and install directory structures. It seems that MapGuide is using a variant of the current FDO install structure. I think we could come to some agreement on the install structure, but changes to the build structure would require much more consideration.

Greg

From: fdo-internals-bounces at lists.osgeo.org [mailto:fdo-internals-bounces at lists.osgeo.org] On Behalf Of UV
Sent: Friday, April 17, 2009 1:03 AM
To: FDO Internals Mail List
Subject: Re: [mapguide-internals] [fdo-internals] build script confusion RFC62???

Trevor,

Oops, I just read your mail again and realise that I did read it properly.
I kind of like the idea of spreading things out like this.

But I think we should agree on one important goal:
To support a devel,build,debug cycle efficiently its imperative to have the server functional from the place the debug build puts it.

Furthermore this deploy location should depend on a single variable/macro with a meaningful default.
Which could be coming from the environment but it ALWAYS should have a default which is functional without any environment variables.
Such an approach would simplify the build process and running the test suites a lot.

So AFAIK the only libs whose loading location is configurable are the FDO libs
This means that the platform libs need to be deployed into the same directory as the server executable since depending on path variables for this introduces further configuration problems.
Instead we could introduce another configuration value for the Platform libraries and modify the DLL Loader for them.
Worth a consideration though.



Trevor Wekel wrote:

Hi UV,



There is a key difference between a build tree and an install tree that needs to be taken into consideration.  For a build tree, you may have to build four different configurations - 32 bit debug, 32 bit release, 64 bit debug, and 64 bit release.  For the install tree, you will likely only been installing either 32 bit release or 64 bit release.



The server and web extensions also need to be built into separate trees because IIS and Apache need virtual directories to work with and the ajax/fusion viewers need a specific directory layout to find everything they need.



I like the idea of having a common directory structure:



1.  Copying a bunch of web files to some directory IIS or Apache likes is a hassle.  I know Walt always used to give me trouble about the way the web extensions was laid out.  It would be better if we could just point IIS or Apache at an appropriately laid out directory.



2. Co-developing MapGuide and Fdo functionality is freaking annoying.  Build Fdo, build -c install Fdo, copy Fdo dlls and headers to where MapGuide wants them, then build MapGuide.  Yuck.



Can anyone think of other requirements on a common build/install directory structure for MapGuide (server/web) and Fdo?



The following structure isn't right yet but it does introduce some symmetry between components and separates out the different build flavours.  The Web bit is definitely not right from a symmetry argument. All the separate Bin directories make this structure a no-go without setting path variables.  And the question what about Linux? comes to mind.



Release

  CSMap

    11g

    Bin

    Lib

    Inc

    Obj

  Fdo

    com

    Bin

    Inc

    Obj

      [subprojects]

    Lib

  Platform (shared dlls for Server/Web)

    Bin

    Inc

    Lib

    Obj

      [subprojects]

  Server

    Bin

    Lib

    Obj

      [subprojects]

    Logs

    Packages

    Repositories

    Resources

    Schema

    Wfs

    Wms

  Web

    Apache2 (if built)

    Php

    www

  WebStudio

    ???

Debug

  Fdo

  Platform

  Server

  Web

  WebStudio

Release64

Debug64





-----Original Message-----

From: mapguide-internals-bounces at lists.osgeo.org<mailto:mapguide-internals-bounces at lists.osgeo.org> [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of UV

Sent: Thursday, April 16, 2009 4:41 PM

To: MapGuide Internals Mail List

Subject: Re: [mapguide-internals] build script confusion RFC62???



thanks, thats the way the decision can be made.



But first people have to agree what needs to be done. In the current

situation there are little inconsistencies which make our life hard.

I am sure the core team has their systems set up long enough that they

dont know about these things anymore.

I do because I struggled hard to get the build running in the first place.

Trying to get the build server to do this now is pointing out the exact

details of where the problems are.





Tom Fukushima wrote:



Hi UV,



The process for RFCs is described on this page: http://mapguide.osgeo.org/psc.html.



Is this what you're looking for?



Cheers

Tom





-----Original Message-----

From: mapguide-internals-bounces at lists.osgeo.org<mailto:mapguide-internals-bounces at lists.osgeo.org> [mailto:mapguide-internals-bounces at lists.osgeo.org] On Behalf Of UV

Sent: Wednesday, April 15, 2009 7:38 PM

To: MapGuide Internals Mail List

Subject: Re: [mapguide-internals] build script confusion RFC62???



Is there a way to initiate as decision process?

or do we have to give up on the automated build because no decision can

be made regarding the result of the build?

This is needed before any changes can be made.



Its not so much todo except to agree on a useful structure for the build

/ deploy process.

In the moment we have a windows installer, a postbuild.mak and a

build.bat plus Linux makefiles all doing similar but slightly different

things.



I think this is a unique opportunity to align some of the

inconsistencies in the build process of mapguide and

improve the experience for future contributions.



Thats exactly whats CI is for..... making sure such inconcistencies will

never happen again.



_______________________________________________

mapguide-internals mailing list

mapguide-internals at lists.osgeo.org<mailto:mapguide-internals at lists.osgeo.org>

http://lists.osgeo.org/mailman/listinfo/mapguide-internals

_______________________________________________

mapguide-internals mailing list

mapguide-internals at lists.osgeo.org<mailto:mapguide-internals at lists.osgeo.org>

http://lists.osgeo.org/mailman/listinfo/mapguide-internals









_______________________________________________

mapguide-internals mailing list

mapguide-internals at lists.osgeo.org<mailto:mapguide-internals at lists.osgeo.org>

http://lists.osgeo.org/mailman/listinfo/mapguide-internals

_______________________________________________

fdo-internals mailing list

fdo-internals at lists.osgeo.org<mailto:fdo-internals at lists.osgeo.org>

http://lists.osgeo.org/mailman/listinfo/fdo-internals





-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/fdo-internals/attachments/20090417/81c790ba/attachment-0001.html


More information about the fdo-internals mailing list