WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Automated extension build script  (Read 2346 times)

Offline danielibarnes

  • Hero Member
  • *****
  • Posts: 548
Automated extension build script
« on: November 23, 2014, 09:55:51 PM »
The wiki page for creating extensions indicates that several steps of the creation process can be automated. In the past, I wrote scripts for myself to automate the entire process for extensions I submit, and I recently started rewriting them for public release. I am releasing my scripts with the intention of easing the burden of creating extensions. It is currently in a feature-incomplete (alpha) state. Any suggestions or comments are welcome. This initial release is for inspection only. It does not create submission-quality extensions. Further releases will add functionality until I consider it to be a feature-complete beta state.

The "make extension" script is called "me." It relies on a specific directory structure. This is an example of the file structure for compiling bzip2 on TC 6.0:

me
bin/prebuild.sh
bin/6/core.gz
project/bzip2/build.sh
project/bzip2/bzip2-1.0.6.tar.gz
project/bzip2/desc

WHERE

me and bin/prebuild.sh are attached to this post.
bin/6/core.gz is from the TC 6.0 iso image
project/bzip2/bzip2-1.0.6.tar.gz is the source code from http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz
project/bzip2/desc is a blank file (for now)
project/bzip2/build.sh contains the following:
Code: [Select]
make CFLAGS="$CFLAGS"
make -f Makefile-libbz2_so CFLAGS="$CFLAGS"
make install
mkdir -p /usr/local/lib/
mv libbz2.so* /usr/local/lib/
ln -s libbz2.so.1.0.6 /usr/local/lib/libbz2.so
ln -s libbz2.so.1.0.6 /usr/local/lib/libbz2.so.1