[Buildroot] Newbie: My first buildroot package: szip

Williams Jr., Ernest L. ernesto at slac.stanford.edu
Wed Dec 31 03:58:06 UTC 2014


Hi everyone,

Short Intro:
================================================================================
I am new to buildroot and appreciate all of the nice packages already included. :)
I will need to have szip for an application on my target which uses hdf5
We have image processing applications that use hdf5 and szip which currently run on big servers.
I am porting the application to a real-time embedded linux platform crafted with the buildroot system.
================================================================================

Following the buildroot manual and examples that I found in the package directory; here we go:

(1) mkdir  "<>/package/szip"

(2) create  "<>/package/szip/Config.in"
======= Begin Config.in ==============================================
config BR2_PACKAGE_SZIP
        bool "szip"
        help
         Szip is an implementation of the extended-Rice lossless compression algorithm. 
         The Consultative Committee on Space Data Systems (CCSDS) has adopted the 
         extended-Rice algorithm for international standards for space applications[1,6,7]. 
         Szip is reported to provide fast and effective compression, specifically for 
         the EOS data generated by the NASA Earth Observatory System (EOS)[1]. 
         It was originally developed at University of New Mexico (UNM) and 
         integrated with HDF4 by UNM researchers and developers.  

          http://www.hdfgroup.org/doc_resource/SZIP
============ End Config.in ============================================

(3) "<>/package/szip/szip.mk"
======= Begin szip.mk ========================================================

################################################################################
#
# szip
#
################################################################################

SZIP_VERSION = 2.1
SZIP_SOURCE = szip-$(SZIP_VERSION).tar.gz
SZIP_SITE = http://www.hdfgroup.org/ftp/lib-external/szip/2.1/src
SZIP_LICENSE = szip license
SZIP_LICENSE_FILES = COPYING
SZIP_INSTALL_STAGING = YES

$(eval $(autotools-package))
============= End szip.mk =====================================================


(4) Modify  "<>/package/Config.in" and add to the menu "Compression and decompression" section:
===================== Begin diff ====================================================

[ernesto at localhost package]$ diff -c Config.in Config.in.orig
*** Config.in   2014-12-30 17:36:57.044105994 -0800
--- Config.in.orig      2014-12-30 19:42:29.344642576 -0800
***************
*** 575,581 ****
        source "package/lzo/Config.in"
        source "package/snappy/Config.in"
        source "package/zlib/Config.in"
-       source "package/szip/Config.in"
  endmenu
  
  menu "Crypto"
--- 575,580 ----
================== End diff ===================================================

(5) Select new szip package in buildroot configuration:
make xconfig
save
Now type make.

After a few minutes, all is well. :)

All applications on my embedded target will be built statically by choice.
Also, the application source will need access to the API of szip as well as other packages
that I may install.

So, the following is very important:
=========================================
<PACKAGE_NAME>_INSTALL_STAGING = YES
=========================================

Now, I find my shared and static libraries as well as the header files in here:
<>/staging/usr/lib   and  <>/staging/usr/include


Finally, my root file system was also updated. !! :)
I am starting to like this buildroot system.

Please tell me how to submit this new package as a patch set.
Also, please let me know if I did the above procedure properly.

Thanks in advance.

PS: Next, I will need to tackle hdf5  :)

Cheers,
Ernesto






More information about the buildroot mailing list