On 23/03/13 04:34, Florian Pritz wrote: > On 03.02.2013 00:07, Allan McRae wrote: >> On 02/02/13 23:48, Florian Pritz wrote: >>> Any progress on this? >> >> No... I expected to see a wiki page started with the details of how >> this would work and some examples. > > I don't speak awk so I coded a basic POC in perl. If someone wants to > turn this into awk please be my guest (assuming everyone is happy with > the behaviour and input + output). > > It updates an input containing either "# template start; .." and "# > template end; ..." markers or "%% template input; .." with the current > templates. The "%% template input" syntax is just for initial PKGBUILD > creation so the user doesn't have to write a start and end tag with no > code inbetween. > > Perl script: http://paste.xinu.at/SMlb/ > input file: http://paste.xinu.at/Fue8s/ > template files: http://paste.xinu.at/tVhDo/ http://paste.xinu.at/y7x4S/ > > Example output: > ###### > pkgname=foo > pkgver=1 > > build() { > # template start; name=perl-module; sha1=TODO; version=TODO; > this is before the blabla template > # template start; name=perl-bla; sha1=TODO; version=TODO; > bla bla > # template end; name=perl-bla > and this is after > perl Makefile.pl > make > make install > # template end; name=perl-module > } > ###### > > If you run the script again it will remove the inlined templates and > recreate them from the template files.
Looks fine. But we either need to get makepkg completely split up, or this needs to be bash based. > Another note: > Lukas suggested on IRC that we could also just use an existing macro > tool such as m4. I didn't think about it before, but I feel like an > inline solution that just updates a simple file is better suited for > PKGBUILDS since they tend to be rather small and can be viewed more > easily if everything is inlined. Any other opinions here? > Can m4 update? It is also a pain with escaping from memory.
