Hi

I add cmake support for dbus-c++ in these days. It can now use
original git source
and build binary/library without autotools.

Would you like to review the patches or give me some advice/suggestion?

sincerely, Mat.


On Thu, May 20, 2010 at 12:53 AM, Mat <[email protected]> wrote:
> On Tue, May 18, 2010 at 4:00 PM, Ralf Habacker <[email protected]> 
> wrote:
>> Mat schrieb:
>>> Hi All,
>>>   I use dbus-c++ library in my programs and found that it's great for
>>> c++ based projects.
>>>
>>>   I tried to port dbus-c++ to win32, and have some progress these days.
>>>   The libdbusc++ can now work on my winxp :-)
>>>   ( for some simple examples, not yet try some real program, like
>>> inkboard,...etc )
>>>
>>>   Patches are as attachment:
>>>     dbus-c++-src-commit.patch is for import into emerge dir.
>>>
>> +++ portage/win32libs-sources/dbus-cpp-src/dbus-cpp-src-0.5.0.py
>> +        self.targets[ver]       =
>> 'http://people.debian.org.tw/~mat/kde-windows/libdbus-c++-%s.tar.gz' % ver
>>
>> Is this source the same as from
>> https://sourceforge.net/projects/dbus-cplusplus/ ?
>
> Yes. I just updated it from dbus-cplusplus git. It's the same source
> to dbus-cpluscplus
>
>>
>> Because this package is mingw only it should print a related hint and
>> break on msvc
>
> Good, I just added it.
>
>>
>> +++ portage/testing/pthreads-win32/pthreads-win32-2.7.0.py
>> added to emerge
>>
>> +++ portage/testing/pkg-config/pkg-config-0.23-3.py
>> added fixes to emerge
>>
>> +++ portage/testing/glib/glib-2.24.0-2.py
>> added fixes to emerge
>>
>>>     dbus-1.pc is for c:\kderoot\lib\pkgconfig\
>>>
>> this should also be in the patch
> Where do you suggestion to attach the patch? ( dbus-src/ pkg-config/
> dbus-cpp-src )
>
>>>     works_for_win32.patch is a patch for dbus-c++-src[1] source code
>>>
>> is this patch included in the above mentioned link ? It should not
>>
>> If patches are not in the archive file it should be added to def
>> setTargets( self ): by
>>
>>            self.patchToApply[v] = ( 'xxxx.patch', <number of stripped
>> leading components from file names> )
>>
>> where v is the build target.
>
> Good, I have updated to use this method in new file. Thanks for your guidance
>
>>
>>
>>
>> ++ bin/utils.py    (working copy)
>> @@ -913,7 +913,7 @@
>>
>>  def applyPatch(sourceDir, file, patchLevel='0'):
>>     """apply single patch"""
>> -    cmd = "patch -d %s -p%s < %s" % ( sourceDir, patchLevel, file )
>> +    cmd = "patch -d %s -p%s --binary < %s" % ( sourceDir, patchLevel,
>> file )
>>
>> for what is this good ?
>
> Ah, sorry for forget to drop the dirty hack. Please ignore it.
>
>>
>>>   Could you help to review these works and give me some advice to push
>>> the works go furthur?
>>>
>> I suggest to push the patches to the dbus-c++ project directly and to
>> use a git source from the original because otherwise there is ongoing
>> maintenance of the portage package required.
>
> Great.
> I found that kde-windows's emerge provide git source packing methods,
> it's quite convenient. Thank you!
>
>
> Now, I encountered some problem.
> For dbus-c++ is autotools based source, so it need automake,
> autoconf,... programs to gerenerate/update the Makefiles and
> "configure" scripts, which blockes the packaging process.
>
> I tried to add autotools into emerge ( in one of attachments ), and
> try  to compile it. However it does not work.
>
> Do you have any suggestion about this situation, or would you like to
> give some advice or direction how to solve this problem?
>
> Finally, thank you again for your review and advice :-)
>
> sincerely, Mat.
>
>>
>> Regards
>>  Ralf
>>
>>
>>
>> _______________________________________________
>> Kde-windows mailing list
>> [email protected]
>> https://mail.kde.org/mailman/listinfo/kde-windows
>>
>
import info
import os

class subinfo(info.infoclass):
    def setTargets( self ):
        self.svnTargets['gitHEAD'] = 'git://gitorious.org/dbus-cplusplus/mainline.git'
        self.patchToApply['gitHEAD'] = ( 'works_for_win32.patch', 1 )
        self.targetConfigurePath['gitHEAD'] = 'cmake'

        self.svnTargets['gitFOLLOW'] = 'git://gitorious.org/~matlinuxer2/dbus-cplusplus/matlinuxer2s-mainline.git'
        self.targetConfigurePath['gitFOLLOW'] = 'cmake'

        self.defaultTarget = 'gitHEAD'
        #self.defaultTarget = 'gitFOLLOW'

    def setDependencies( self ):
        self.hardDependencies['virtual/base'] = 'default'
        self.hardDependencies['dev-util/msys'] = 'default'
        self.hardDependencies['testing/pthreads-win32'] = 'default'
        self.hardDependencies['win32libs-bin/dbus'] = 'default'
        self.hardDependencies['win32libs-bin/expat'] = 'default'


from Package.CMakePackageBase import *
                
class Package(CMakePackageBase):
    def __init__( self, **args ):
        self.subinfo = subinfo()
        CMakePackageBase.__init__( self )
        self.subinfo.options.package.packageName = 'dbus-c++'
        self.subinfo.options.make.slnBaseName = 'dbus-c++'
        
    def unpack(self):
        if not CMakePackageBase.unpack(self):
            return False      
        # Check whether compiler is mingw or not...
        if self.compiler() != "mingw" and self.compiler() != "mingw4":
            utils.die("This package is currently only compiled with mingw.")

        return True


if __name__ == '__main__':
    Package().execute()

Attachment: works_for_win32.patch
Description: Binary data

_______________________________________________
Kde-windows mailing list
[email protected]
https://mail.kde.org/mailman/listinfo/kde-windows

Reply via email to