Open Source IBM i Build Tool Now Supports VS Code
July 24, 2024 Alex Woodie
A new release of the open source iBuild tool now supports VS Code, the developer of the tool recently announced. The new release also now fully supports ILE, which is critical to the future of the IBM i platform, the iBuild creator says.
iBuild is a free build tool that automates the task of running all of a developer’s RPG source code through the IBM compilers. It’s been in active development for about eight years and can be downloaded from sourceforge.net/projects/ibuild.
What makes iBuild unique is that it puts instructions on how to build objects into the header of a source member, according to its creator, Alan Campin. The software extracts the commands from the header, formats variables, and executes the commands, thereby eliminating the need to put build instructions in another file or program.
“There are other build tools out there but they all require storing building instructions in separate files,” Campin tells IT Jungle via email. “I wanted a solution that does not require that.”
iBuild is the follow-on to an earlier tool that Campin developed called COMPILE. The impetus for COMPILE was the coming of ILE, modules, and service programs, he says.
“COMPILE was written because someone else had written a tool that had you create a CL program for each compile and call that,” he says. “I looked at that and said there had to be a better way. I wanted a solution where you did not have to have build instructions in another file or program.”
COMPILE was written in RPG III and used State Transition Diagrams to parse the commands in the header, Campin says.
“It was beautiful code but several people at the time did not like the State Transition Diagrams so I resolved if I ever re-wrote it I would just use regular RPG logic to parse the headers,” he says.
In 2017, Campin rewrote COMPILE and released iBuild. It was originally written in free format C with fixed format D specs, he says. But with the latest release, he finally completed the conversion of iBuild to 100 percent free-form RPG. As part of the move to free-form RPG, iBuild also now supports VS Code, he says.
Like the COMPILE tool that came before it, the big impetus to use iBuild remains the (unfulfilled) promise of ILE, according to Campin.
“Having modules that have to be bound to form programs and including service programs and activation groups is very difficult without a build tool,” he says. “The problem is that very few people are using ILE. Almost the entire community is still doing monolith programming. Using CRTBNDRPG and CRTBNDCL instead of using modules. Doing program calls instead of service programs. Running in default activation group, etc, etc.
“It means we are still writing unmaintainable code and it is killing the machine,” he says.
iBuild and COMPILE aren’t the only utilities developed by Campin. He also created and continues to maintain utilities like Trigger Mediator, User Queue API, and Simple Socket Client Program, among many others. You can see and download many of Campin’s tools at www.think400.dk/downloads.htm. iBuild is maintained at SourceForge, where it’s distributed under a GPL license
Campin tells IT Jungle he has been out of work for a bit and probably won’t work as a programmer again, so he’s been concentrating on his open source software. There’s just one caveat to that work:
“Everything I do is about teaching ILE,” he says.
RELATED STORIES
What’s Up with Open Source on IBM i?
Hmmm, I use modules (compiling and building) so I don’t run in the default act group. Not sure what others do, but that’s for \C as well as RPG. ILE? I think that’s part of the problem, most people have moved on from ILE and/or the failed promises. However, building software is a great experience, I hope you’re enjoying it either way.