[poppler] Poppler glibmm bindings

Albert Astals Cid aacid at kde.org
Wed Oct 17 11:11:37 PDT 2012


El Dimecres, 17 d'octubre de 2012, a les 13:05:02, Glenn Rice va escriure:
> 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

Good luck :-)

Cheers,
  Albert

> 
> 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
> 
> _______________________________________________
> poppler mailing list
> poppler at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/poppler


More information about the poppler mailing list