[poppler] Poppler glibmm bindings

Glenn Rice glennricster at gmail.com
Wed Oct 17 11:05:02 PDT 2012


Actually, I just checked and I was mistaken.  gtkmm only keeps the *.cc and *.h files that 
are not generated in the repo.  Those that are generated from the ccg and hg files are not.

Also, I looked into what needs to be done to get a new project on freedesktop.org and I am 
working on it.  I don't know if they will accept the project, but I will try.  If that 
doesn't work I will probably try sourceforge.  I have other projects already on there.
Glenn

On 10/17/2012 12:56 PM, Albert Astals Cid wrote:
> El Dimarts, 16 d'octubre de 2012, a les 18:03:59, Glenn Rice va escriure:
>> I think the rational is that those files are generated by gmmproc, and
>> gmmproc is not invoked in every build cycle.  It is only called when the
>> ccg and hg files are modified. I think the reason it is not called every
>> time is because it is rather slow.
> Right, but compiling is also slow, that's why make only generates the .o files
> when the .cpp file changes, but that doesn't mean we put the .o files in the
> repo, no?
>
>> It generates the c++ code as well as
>> all of the documentation.  It seems that it should be possible to set
>> things up so that it is called when needed c++ files are missing though.  I
>> have a local repository for the library and initially attempted to omit
>> those files, but had problems with it.  I didn't investigate what it would
>> take to change the build system though.
>>
>> If you would rather have the glibmm bindings in a separate repository, I am
>> fine with that.  What would I need to do if I wanted to host it on
>> freedesktop.org?
> To be honest i don't know, never did any project creation in freedesktop.org.
>
> Cheers,
>    Albert
>
>> Glenn
>>
>> On 10/16/2012 05:55 PM, Albert Astals Cid wrote:
>>> El Dimarts, 16 d'octubre de 2012, a les 17:40:30, Glenn Rice va escriure:
>>>> The standard practice for glib based libraries wrapped in this manner is
>>>> to
>>>> include those files in the repo.
>>> Interesting, does anyone what's the rationale behind that?
>>>
>>>> However, it may be possible to modify the build system to generate them
>>> every time.
>>>
>>> To be honest, at the moment i'm leaning towards a separate repo might be a
>>> better idea for poppler-glibmm, i was thinking it'd be something like 2
>>> files not something like 40.
>>>
>>> Anyone has any opinion? Carlos?
>>>
>>> Cheers,
>>>
>>>     Albert
>>>> Glenn
>>>>
>>>> On 10/16/2012 05:35 PM, Albert Astals Cid wrote:
>>>>> El Dimarts, 16 d'octubre de 2012, a les 17:18:55, Glenn Rice va
> escriure:
>>>>>> There is some stuff included in that tarball that would not need to be
>>>>>> in
>>>>>> the repo.  The entire doc/reference/html directory should be removed.
>>>>>> Also
>>>>>> all of the files in the build directory should be removed.  Of course
>>>>>> there
>>>>>> are some obvious things that would not be needed in the repository like
>>>>>> any
>>>>>> Makefile.in file, the configure script, and the aclocal.m4 file.  The
>>>>>> tarball I sent was generated by "make distcheck."  It would be possible
>>>>>> to
>>>>>> not include most of the *.cc and *.h files in
>>>>>> poppler-glib/poppler-glibmm
>>>>>> (those generated from the *.ccg and *.hg files in poppler-glib/src),
>>>>>> but
>>>>>> it
>>>>>> would be best to include those as they are only generated when the
>>>>>> corresponding *.ccg and *.hg files are changed.
>>>>> Hmmm, in my opinion including autogenerated stuff in the repo is asking
>>>>> for
>>>>> problems, couldn't we just tell the make process to generate them as the
>>>>> rest of autogenerated files are (e.g. moc files in the qt4 frontend)?
>>>>>
>>>>> Cheers,
>>>>>
>>>>>      Albert
>>>>>> Glenn
>>>>>>
>>>>>> On 10/16/2012 03:35 PM, Albert Astals Cid wrote:
>>>>>>> El Dimarts, 16 d'octubre de 2012, a les 15:11:34, Glenn Rice va
>>> escriure:
>>>>>>>> Although it is not generated from the gir files, for the most part
>>>>>>>> all
>>>>>>>> you have to do is tell gmmproc what to name the c++ classes and
>>>>>>>> methods,
>>>>>>>> and which c objects and methods they are derived from.  Then the
>>>>>>>> actual
>>>>>>>> c++ code is generated.  There were not many cases that needed hand
>>>>>>>> coding. The hardest part was converting your poppler-glib demo to use
>>>>>>>> gtkmm and my poppler-glibmm library.  Of course there is no automatic
>>>>>>>> way to do that.
>>>>>>>>
>>>>>>>> As I understand it there is some work by the gtkmm devs to do some of
>>>>>>>> the conversion work from the gir files, but I think that is to
>>>>>>>> replace
>>>>>>>> the clumsy defs file generation that is currently used. Not to
>>>>>>>> replace
>>>>>>>> the hg and ccg file creation, from which files the actual code is
>>>>>>>> generated.
>>>>>>>>
>>>>>>>> In any case, I have attached a tarball of the code.
>>>>>>> Wow there's lots of stuff in there, what parts are autogenerated? I.e.
>>>>>>> would we need all those files in the repo? or just parts?
>>>>>>>
>>>>>>> Cheers,
>>>>>>>
>>>>>>>       Albert
>>>>>>>> Glenn
>>>>>>>>
>>>>>>>> On 10/16/2012 01:58 PM, Albert Astals Cid wrote:
>>>>>>>>> El Dimarts, 16 d'octubre de 2012, a les 13:50:07, Glenn Rice va
>>>>> escriure:
>>>>>>>>>> The library is not automatically generated from the gir files.
>>>>>>>>> Sad :-/
>>>>>>>>>
>>>>>>>>>> It uses
>>>>>>>>>> the standard method that glib libraries are wrapped via gmmproc.
>>>>>>>>>> There
>>>>>>>>>> is some maintenance involved as with any library, but generally not
>>>>>>>>>> that
>>>>>>>>>> much. gmmproc uses macros that automate the wrapping of most
>>>>>>>>>> things.
>>>>>>>>>> There are some things that the macros don't properly handle and so
>>>>>>>>>> they
>>>>>>>>>> have to be hand coded.
>>>>>>>>> Oh :-(
>>>>>>>>>
>>>>>>>>>> I am willing to maintain it, and will make it
>>>>>>>>>> available somewhere else if you are not interested.  I could attach
>>>>>>>>>> a
>>>>>>>>>> tarball of the source if you want to take a look.
>>>>>>>>> Well, let's see how much code and let's see if someone mentions they
>>>>>>>>> are
>>>>>>>>> interested in the feature. I am not pro nor against it at the
>>>>>>>>> moment.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>>
>>>>>>>>>        Albert
>>>>>>>>>> Glenn
>>>>>>>>>>
>>>>>>>>>> On 10/16/2012 12:43 PM, Albert Astals Cid wrote:
>>>>>>>>>>> El Dimarts, 16 d'octubre de 2012, a les 08:17:44, Glenn Rice va
>>>>>>> escriure:
>>>>>>>>>>>> I have created a library that wraps the poppler-glib library
>>>>>>>>>>>> using
>>>>>>>>>>>> glibmm/gtkmm's gmmproc.  I don't know if you are interested in
>>>>>>>>>>>> this.
>>>>>>>>>>>> I
>>>>>>>>>>>> am
>>>>>>>>>>>> not sure where to make this available to the public.  It would be
>>>>>>>>>>>> somewhat
>>>>>>>>>>>> nice to have it at freedesktop.org so that it is together with
>>>>>>>>>>>> poppler.
>>>>>>>>>>>> If
>>>>>>>>>>>> you are interested it could even be integrated in with the rest
>>>>>>>>>>>> of
>>>>>>>>>>>> poppler.
>>>>>>>>>>>>
>>>>>>>>>>>>        I would even be willing to pass the code off to you.  I did
>>>>>>>>>>>>        this
>>>>>>>>>>>>        for
>>>>>>>>>>>>
>>>>>>>>>>>> purely educational purposes of my own.  Although it would be nice
>>>>>>>>>>>> to
>>>>>>>>>>>> share
>>>>>>>>>>>> the result.
>>>>>>>>>>>>
>>>>>>>>>>>> If you are not interested I will probably make it available via
>>>>>>>>>>>> SourceForge.>>
>>>>>>>>>>>>
>>>>>>>>>>>>        If you would like to take a look at what I have that would
>>>>>>>>>>>>        be
>>>>>>>>>>>>        great
>>>>>>>>>>>>        too.
>>>>>>>>>>> How much code is it? And more importantly, how much maintaince it
>>>>>>>>>>> needs?
>>>>>>>>>>> Is it automagically generated from the gir thing?
>>>>>>>>>>>
>>>>>>>>>>> Cheers,
>>>>>>>>>>>
>>>>>>>>>>>         Albert
>>>>>>>>>>>> Glenn Rice
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> poppler mailing list
>>>>>>>>>>>> poppler at lists.freedesktop.org
>>>>>>>>>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> poppler mailing list
>>>>>>>>>>> poppler at lists.freedesktop.org
>>>>>>>>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>>>>>>>> _______________________________________________
>>>>>>>>> poppler mailing list
>>>>>>>>> poppler at lists.freedesktop.org
>>>>>>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>>>>>> _______________________________________________
>>>>>>> poppler mailing list
>>>>>>> poppler at lists.freedesktop.org
>>>>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>>>>> _______________________________________________
>>>>>> poppler mailing list
>>>>>> poppler at lists.freedesktop.org
>>>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>>>> _______________________________________________
>>>>> poppler mailing list
>>>>> poppler at lists.freedesktop.org
>>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>>> _______________________________________________
>>>> poppler mailing list
>>>> poppler at lists.freedesktop.org
>>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>>> _______________________________________________
>>> poppler mailing list
>>> poppler at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/poppler
>> _______________________________________________
>> poppler mailing list
>> poppler at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/poppler
> _______________________________________________
> poppler mailing list
> poppler at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/poppler



More information about the poppler mailing list