[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Improving gambas 3.19.90 recipe for debian


Hi all,

Last Sunday and Monday I spend most, if not all of my time working on improving the debian recipe for Gambas3.
Improving here meaning:
  1. Getting dependencies conform (then still old) package list
  2. Comparing the Gambas team ubuntu ppa  recipe dependencies with wiki package list
  3. If above in conflict prefer the ubuntu ppa  recipe dependencies (as they are signed by Benoit himself, so probably more accurate?)
  4. Get rid of warnings during building of binaries

These are the kind of warnings I adapted:
dpkg-gencontrol: warning: Depends field of package gambas3-gb-mysql: substitution variable ${shlibs:Depends} used, but is not defined
dpkg-gencontrol: warning: Depends field of package gambas3-gb-desktop: substitution variable ${shlibs:Depends} used, but is not defined
dpkg-gencontrol: warning: package gambas3-gb-form-htmlview: substitution variable ${shlibs:Depends} unused, but is defined
dpkg-gencontrol: warning: package gambas3-gb-term: substitution variable ${shlibs:Depends} unused, but is defined

Once above was done and recipe was adapted, test it by building in debain 12 VM
Next make a signed repository setup with the made binaries and after that login to another vm to setup the signed repository as file repository for testing
Then 'le moment suprême'  to see if it works: apt-get update && apt-get install gambas3
Guess what, it didn't start

Back to recipe, guessing I removed to to get rid of some warnings so add the removed once back in
Then, you get it, vm -> package -> out of vm -> make repostory -> into another vm -> setup file repostory -> apt-get update && apt-get install
Guess what, it didn't start.

So, I opened a terminal and typed gambas3 and there it was, missing dependency on gb.db2. To the wiki and yes gambas-ide now depends on gb.db2 and gb.db2.form.

Back to recipe, removing what I added back in, adding 2 components for db2
Then, you get it, vm -> package -> out of vm -> make repostory -> into another vm -> setup file repostory -> apt-get update && apt-get install
Guess what, it DID start.

I had to do this one more time because of a new warning I wanted eliminated, but in short gambas 3.19.90 (version on master of last Sunday) was up and running.

Gambas3.19.90.png

In above image you can see all I changed to make the recipe better.

Now there are some conflicts on the package list compared to ppa recipes that I would like to address and get some clarity on:

  1. In the ppa recipes gambas3-gb-desktop depends on gambas3-gb-desktop-x11 (>= ${binary:Version}) -> seems off to me and not how package list states.
  2. In the ppa recipes gambas3-gb-form-htmlview depends on gambas3-gui (>= ${binary:Version}) -> according to package list only gambas3-gb-formgambas3-gb-media-form and gambas3-gb-form-terminal require gambas3-gui

In above, what is correct, the ppa recipe or package list?

Then there are missing items in package list:
  1. gambas3-db2 is not mentioned as package, nor the dependencies
  2. gambas3-db2-form is not mentioned as package, nor the dependencies
  3. gambas3-db2-mysql and others are not menioted as packages in package list

I packages with only db2 and db2-form as that is what ide needs, but does it need the other db2 packages as well?
If so, I will update and test my recipe a few times more ;-)

As, soon as I have clear what is needed and updated recipe accordingly I will add the changes to template folder and do a merge request.
For now you can have a look at https://gitlab.com/gbWilly/gambas3-debian-repository/-/tree/main/recipes-dev/debian-3.19.90~debian12-native for current recipe.

Another thing is that I get a lot of warnings that I can't change in my recipe.
Warning are no errors, so packages build, but the pollute my screen during building.
Most are is deprecated references to stuff in libraries.

Example of such warning:
In file included from /usr/include/gtk-2.0/gtk/gtktoolitem.h:31,
                 from /usr/include/gtk-2.0/gtk/gtktoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtkmenutoolbutton.h:30,
                 from /usr/include/gtk-2.0/gtk/gtk.h:126:
/usr/include/gtk-2.0/gtk/gtktooltips.h:73:3: warning: 'GTimeVal' is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]

I selectively copy/pasted the output to a file and added it, maybe some of it can be eliminated as I guess you do not want to refer to deprecated stuff.
Off to prepare some food now, I'll check in later to answer some mails directed at me.

Attachment: OutPutMakingBinaries
Description: Binary data


Follow-Ups:
Re: Improving gambas 3.19.90 recipe for debiangbWilly <gbWilly@xxxxxxxxxxxxxx>