Re: [Cucumber-linux-development] New Buildscript Format
A general purpose desktop and server Linux distribution.
Brought to you by:
z5t1
From: LM <lm...@gm...> - 2018-05-08 17:39:47
|
Using pkgapi_strip, pkgapi_make, etc. is a good idea. You may need to build on a system that can't handle parallel make calls or that uses a different name for make (such as gmake on BSD). You just need to change the buildscript file and it should work. If it I were writing this, I'd use routines for tar and some of the other utilities as well. I use a preprocessor and templates instead of functions in case I'm dealing with a system that may not have a shell that handles functions (like msh). I also mentioned I wanted the ability to concatenate using the preprocessor. In my own scripts, I do things like give the command to extract files, but also give it an extension, so it knows whether to extract a zip file or a .tar.xz file based on using decompress concatenated with the file extension and it generates the appropriate code. It works similar to passing parameters to a function. I can change between configure, autogen.sh, qmake, cmake, cdetect or other configure utilities by specifying the type of configure code I want generated. I have global locations where tools are listed so I can change them out. I may want to use tar on a system, but I also may prefer to use bsdtar or 7za. I also switch between options like sed or minised or perl for search and replace based on a global setting. One needs to regenerate the build scripts when the default tools are changed. It does give you the freedom to use the tools you prefer or the ones you have available on a system though. As to having to regenerate the build script before building a package, I have a script that goes through a simple list of packages and runs a series of steps on them, such as regenerate the build script using the template system, build the program or library, install the program or library. If I need to build a lot of packages from source, I'd rather have the whole process automated and not have to run each script by hand. I also have a script that goes through a list of packages and runs the checks for each to see if the version is updated. I've mentioned the build system I'm working on to Scott, but if anyone else on the list is interested, you can see some packages I'm working on and some sample inputs (lm bld files) and outputs (bash build scripts) for my build system here: http://www.distasis.com/cpp/lmports.htm I'm still making patches to packages and uploading them, so it's a work in progress. I definitely like the changes to the new Cucumber buildinfo format. I'd personally take it a step further and use functions or templates for common tools (like tar). MXE does that with their calls to wget and sed. Sincerely, Laura |