On Sun, May 28, 2023 at 9:03 PM Cottrell, Allin <cottrell@wfu.edu> wrote:
On Sun, May 28, 2023 at 3:15 PM Hélio Guilherme <helioxentric@gmail.com> wrote:
>
> Hello Gretl masters :)

Hello, Hélio! Good to hear from you.

> I am trying to make a build pipeline in GitHub Actions, with the goal to have Linux snapshots (.rpm, .deb). I am experimenting first on my copy of sourceforge, but to make it in the official github clone setup by Artur Tarassow.
>
> I am finding this blocking error:
>
>   CC    xml_get.lo
>   LD    xml_get.la
>   CC    svm.lo
>   CXX   svmlib.lo
> libtool:   error: specify a tag with '--tag'
> make[1]: *** [Makefile:271: svmlib.lo] Error 1

I'm not familiar with this approach to building software, but at a
guess you might have to define "CXX" to a suitable and available C++
compiler at the stage of running gretl's configure script. For example
"CXX=g++" or "CXX=clang++".

Allin

That was it!
It was missing the installation of gcc-c++ I was assuming that installing gcc included it.

Next I will prepare the RPM creation block.

This process of building software is these days the standard, for automated systems. In DevOps is called CI/CD, Continuous Integration/Continuous Deployment.
The most known CI/CD system is Jenkins, but others are: Azure DevOps, GitHub Actions, GitLab, Travis, AppVeyor, Bamboo.
They can be programmed to run jobs/tasks, on demand, by schedule and when filesystem changes. Also, they use containers (Docker), where the minimal part of an operating system and software is prepared to compile, test and run the target software. This was the case with my setup, where I used a container of Fedora 38, but missed the instalation of g++. This way the confiruation is done as a standard and everyone will use the same. On this GitHub Actions, the default is Ubuntu, but we can also use Windows and macOS.

We are interested in running the build of gretl, always when a change is done (or we can decide to do it for a certain branch or even a commit message).

I have also created a SonarCube, code analysis, build, that (you already did some fixes detected with it) will do the analysis of quality, security of Gretl's code.

Another build script I want to have, is the running of tests (the ones you have prepared long time ago, and can be seen here: https://github.com/HelioGuilherme66/gretl/tree/gretl-tests/gretl-tests/test-gretl).