Build directory structure for WinMerge 3.0

Build directory structure for WinMerge 3.0

The windows installer must know where he finds the files for the setup file.

So we should maybe define the build directory structure from WinMerge 3.0?

WinMerge 2.x use the following structure:

Build

expat

X64

Manual

MergeDebug

MergeRelease

MergeUnicodeDebug

MergeUnicodeRelease

pcre

X64

scew

X64

ShellExtension

release mindependency

unicode release mindependency

x64 release

X64

MergeDebug

MergeRelease

MergeUnicodeDebug

MergeUnicodeRelease

BuildTmp

For 3.0 it should maybe not so mixed:

build

release

x86

gui

win-installer

x64

gui

debug

x86

gui

x64

gui

build-tmp

What do you think?

Re: Build directory structure for WinMerge 3.0

Posted: Sat Aug 28, 2010 11:12 am

by gerundt

We should maybe put somewhere the platform (win, mac and linux) in the build structure?

Re: Build directory structure for WinMerge 3.0

Posted: Sun Aug 29, 2010 6:06 am

by kimmov

Yes, WinMerge 2.0 is mess to build (from most aspects of it). There is too much legacy that is hard to break and nobody has had time or interest to really fix those things.

Your structure seems more like Windows build structure. I have doubt we can define or specify the general structure. It depends on environment, compiler, OS etc. And we can't force Linux builds to same structure than Windows / Visual Studio builds. It won't work (well).

So I think the most important think is we build each platform according to platform's standards. And I think QMake does good job with that by default. Only for Windows we have more space for our own structuring. And in Window we could use something like your suggestion. I hope we can later build the middle-layer as library so it may need own folder for Windows. But we'll see when it happens.

gerundt wrote:We should maybe put somewhere the platform (win, mac and linux) in the build structure?

Why? Are you considering cross-compiling for other platforms or? Purpose of the different folders have been to separate different targets with similar files produced. Not to tell exactly in which kind of environment the binary will run. If we start adding folders per compiler and architecture etc it gets quite messy again. Remember QtCreator builds with GCC with different structure than Visual Studio and Visual Studio structure probably won't event work with QtCreator / GCC.

Re: Build directory structure for WinMerge 3.0

Posted: Sun Aug 29, 2010 12:49 pm

by gerundt

I have no problem with different build directory structures for different platforms. At the moment I need only for the windows installer a defined structure. Because of that, I thought we could talk about the structure.