qmake-based buildsystem

Lubomir I. Ivanov neolit123 at gmail.com
Wed Oct 9 02:39:30 UTC 2013


On 9 October 2013 04:40, Thiago Macieira <thiago at macieira.org> wrote:
> On domingo, 6 de outubro de 2013 19:46:18, Thiago Macieira wrote:
>> I've begun experimenting with a qmake-based buildsystem
>>
>> You can find it at http://github.com/thiagomacieira/subsurface.git
>>
>> This is highly experimental! The branch rebases and force pushes! You've
>> been warned!
>>
>> The new BS does build Subsurface on Linux. I have no reason to doubt that it
>> will build on Mac too. As for Windows, it remains to be seen, it probably
>> just works with a proper cross-compiler and a cross-pkg-config. Native
>> Windows building should work if you have pkg-config.exe, which I doubt
>> anyone does.
>>
>> I've also implemented installation rules for Linux. Install rules for Mac
>> and Windows are pending.
>>
>> I haven't implemented the install rules for translations yet. This is
>> pending a decision on whether we're switching from Gettext .mo to Linguist
>> .qm files, which also changes the buildsystem.
>
> Ok, this is looking almost complete now.
>
> I've even sat down and written a Perl script to get DLL dependencies on
> Windows, because it was close to impossible to test. Every time I clicked the
> .exe, Windows would tell me a new DLL was missing.
>
> Everyone, please give it a round of testing. I've done tests for Linux and Mac
> builds and for cross-compilation to Windows. I have not been able to test on
> Windows directly, but I see no reason it wouldn't work -- *provided* you
> manage to get the dependencies installed!
>

thanks for the work on this.
i will test native building on windows today once i sort my pkg-config
situation.

> The INSTALL file now contains instructions on how to build Subsurface. The
> README file contains only information about what Subsurface is.
>
>
> Full DLL listing of a debug build:
> QtCored4.dll
> QtDeclaratived4.dll
> QtGuid4.dll
> QtNetworkd4.dll
> QtScriptd4.dll
> QtSqld4.dll
> QtSvgd4.dll
> QtWebKitd4.dll
> QtXmlPatternsd4.dll
> QtXmld4.dll
> iconv.dll
> libdivecomputer-0.dll
> libgcc_s_sjlj-1.dll
> libmarblewidgetd.dll
> libpng15-15.dll
> libsqlite3-0.dll
> libstdc++-6.dll
> libusb-1.0.dll
> libxml2-2.dll
> libxslt-1.dll
> libzip-1.dll
> zlib1.dll
>

i've been using objdump -pt with grep, e.g:
objdump -pt libmarblewidget.dll | grep DLL

but Dirk once said that objdump is not part of the cross-tool chain.

> It might be a good idea to investigate how to turn off QML support in Marble,
> which would also drop the QtScript, QtXmlPatterns, and QtSql libraries.

just read somewhere that QML is used for touch interfaces in marble,
so not sure if possible.
will look for such an option from their cmake/make...

lubomir
--


More information about the subsurface mailing list