Jump to content

[423] - glshim (GLES to OpenGL wrapper) packaging


Recommended Posts

Discussion thread for github issue 423 - glshim packaging. Related discussion is here. Glshim development happens here.

 

Current status: build script is mostly working, I'm fixing minor issues before making a github commit:

- avoid hardcoded dependencies

- make sure OpenGL apps can be built on target system

 

Once these are resolved, I'll post a link to my commit for an eventual review and will be ready to create a pull request.

 

----------

Unrelated topic: armbian build script fixes for Debian Jessie

Although only Ubuntu distribution is supported by armbian build scripts, Debian sid and above have all the necessary packages and should work fine. For Debian Jessie, emdebian repository should be added to apt sources, as described in cross toolchains wiki. Some of the cross toolchain packages have different names on Jessie as well. I have modified lib/general.sh file to account for those differences and be able to run armbian build scripts on my Debian Jessie machine. If there is interest, I could create an additional issue / pull request for this.

Link to comment
Share on other sites

- avoid hardcoded dependencies

- make sure OpenGL apps can be built on target system

If this library is integrated into our packaging process, then package dependencies will be calculated automatically, you only need to provide list of build time dependencies.

 

For building OpenGL apps - looks like this package will be replacing libgl1-mesa-glx, so you will need to provide matching package to replace libgl1-mesa-dev and/or mesa-common-dev. Looking at project include directory, these header files will conflict with Mali EGL/GLES development package, so only GL subgirectory needs to be packaged?

 

 

Unrelated topic: armbian build script fixes for Debian Jessie

Although only Ubuntu distribution is supported by armbian build scripts, Debian sid and above have all the necessary packages and should work fine. For Debian Jessie, emdebian repository should be added to apt sources, as described in cross toolchains wiki. Some of the cross toolchain packages have different names on Jessie as well. I have modified lib/general.sh file to account for those differences and be able to run armbian build scripts on my Debian Jessie machine. If there is interest, I could create an additional issue / pull request for this.

There was support for Jessie build hosts, but since there were some issues with compiler versions, it was removed. It's easier to provide support for build host distributions that we actually use.

 

Edit: Can you provide details about replacing gl2.h and gl2ext.h in Mali installation step here? I mean - is it required and why, also what is the origin of these files.

Link to comment
Share on other sites

A few follow-up questions:

 

If this library is integrated into our packaging process, then package dependencies will be calculated automatically, you only need to provide list of build time dependencies.

Are you referring to 'extras-buildpkgs' directory? I'm having trouble using that. I have created a conf file and a package directory with a control file, but the package is not getting built. Now, I have noticed a line in 'main.sh' saying:

main.sh:[[ $EXTERNAL_NEW == yes && $(lsb_release -sc) == xenial ]] && chroot_build_packages

Does that mean I need to be on Ubuntu Xenial to get this working?

Right now I'm building my package via a custom sh script in 'extras' folder.

 

There was support for Jessie build hosts, but since there were some issues with compiler versions, it was removed. It's easier to provide support for build host distributions that we actually use.

I didn't run into any compiler problems yet. I remember (from some time ago) that GCC 4.7 or 4.8 had troubles building a working ARM kernel, so one had to use either 4.3 or 4.9. I'm pretty sure the bug is now fixed.

 

Can you provide details about replacing gl2.h and gl2ext.h in Mali installation step here? I mean - is it required and why, also what is the origin of these files.

Honestly, I don't know. These lines were carried over from some tutorial, and I'm not sure they are needed. I'm building without this step and I will only do the file replacement if the problems arise.

 

Edit: I've made a commit with the build script, based on similar scripts I've found in extras. I also had to modify 'desktop.sh' so it doesn't fail when my scripts leaves an unconfigured package over (it has to, since glshim depends on Mali driver and fbturbo). The scripts is to be used with BUILD_DESKTOP and works fine on both boards I have (bananapipro/sun7i and orangepi/sun8i).I will continue working towards a solution using 'extras-buildpkgs' folder.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines