[2024-feb-29] Sad news: Eric Layton aka Nocturnal Slacker aka vtel57 passed away on Feb 26th, shortly after hospitalization. He was one of our Wiki's most prominent admins. He will be missed.

Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
howtos:misc:anatomy_of_a_slackbuild [2020/01/04 15:43 (UTC)] – [Anatomy Of a Slackbuild] captain_sensiblehowtos:misc:anatomy_of_a_slackbuild [2020/01/05 16:26 (UTC)] – [Anatomy Of a Slackbuild] captain_sensible
Line 322: Line 322:
 </code> </code>
  
 +The first two lines of this block are a bit of a mouth-full:
 +<code>
 +find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
 +  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
 +</code>
 +
 +We can however pick out key words that help to make sense of it. "find" is a powerful command that has around 50 options. It basically does what it says on the can but with the -print0 option separates what it finds with "\000"  - in a word NULL. The "|" or pipe is used to pass the results of a command to another, in this case xargs with a flag -0. Which is for xargs to accept input that has /000 between them. ELF is is Executable & Linkable Format.
 +
 +To give a succinct answer the two lines are removing debugging symbols and other unnecessary stuff to make the binaries smaller, faster and take up less memory.
 +
 +<code>
 +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
 +</code>
 +
 +Here we are preparing a directory which will be called "latex2html-2019.2" into  /usr/doc. This is so we an put relevant documentation into a directory relevantly called so that a user can access documentation on the package.
 +The next lines put files such as  README.md into the /usr/doc/latex2html-2019.2 directory.
 +
 +<code>
 +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
 +</code>
 +
 +That line goes back to the original directory that Latex2html.SlackBuild was run from ( i previosly quoted Desktop) opens up the SlackBuild with cat command and copies it to the documentation directory. 
 +Now before I submitted latex2html to slackbuilds obviously I did some trsting and found that when the package is installed a fairly comprensive output could be seen just using 
 +<code>
 +$ latex2html --help
 +</code> 
 +
 +Also I had access to a comprehensive manual in pdf format; so in my case I did not write code for man pages. Instead I simply put a copy of "manual.pdf" into the /usr/doc/latex2html-2019.2 directory.
  
  
  --- //[[wiki:user:captain_sensible|andy brookes]] 2019/12/28 19:28 (UTC)//  --- //[[wiki:user:captain_sensible|andy brookes]] 2019/12/28 19:28 (UTC)//
-// 
  
 //If you teach maths it doesn't stop you  embedding a little English.   //If you teach maths it doesn't stop you  embedding a little English.  
 howtos:misc:anatomy_of_a_slackbuild ()