#!/bin/bash

# Script to make the xraylib libraries.
# Exit Codes found in /usr/include/sysexits.h

#set -x


# Function to configure, make and then install the Package - contains Package Specific build configuration

func_configure_make_install () {

    case "${ACC_ENABLE_SHARED}" in
        "Y" | "y" | "1" )
            BUILD_SHARED=1
            ;;
    esac

    cd ${WORK_DIR}

    [ ${BUILD_SHARED} ] && CONFIGURE_FLAGS="--enable-shared" || CONFIGURE_FLAGS="--disable-shared"

    if [ ! -e ALREADY_BUILT ] ; then
	autoreconf --install

	./configure --prefix=${OUTPUT_DIR} \
	    --enable-static \
	    --disable-idl \
	    --disable-java \
	    --disable-lua \
	    --disable-perl \
	    --disable-python \
	    --disable-python-numpy \
	    --disable-libtool-lock \
	    --disable-ruby \
	    --disable-php \
	    ${CONFIGURE_FLAGS}

	func_print_compiler_linker_flags

	${GMAKE} -j ${ACC_SET_GMAKE_JOBS}
	${GMAKE} install

	export RETVAL=$?
	
    fi

    if [ "${ARGUMENTS[1]}" == "-test" ] ; then 
	echo -e "\nBuilding tests for `echo ${PACKAGE_VERSION}`...\n" 

	${GMAKE} check

	export RETVAL=$?

    fi

    if ( [ `uname` == "Darwin" ] && [ "${FC}" == "ifort" ] && [ "${RETVAL}" -eq 0 ] ) ; then 
	ln -s /opt/intel/lib/* ${OUTPUT_DIR}/lib/ &> /dev/null 2>&1
    fi

    if [ ! -L ${OUTPUT_DIR}/modules/xraylib.mod ] ; then 
	cd ${OUTPUT_DIR}/modules/ ; ln -s ../include/xraylib/xraylib.mod .
    fi

}


# Function that contains Package Specific files and directories to be removed

func_remove_package () {

    rm -f ${OUTPUT_DIR}/lib/libxrl*
    rm -f ${OUTPUT_DIR}/lib/pkgconfig/libxrl*
    rm -f ${OUTPUT_DIR}/modules/xraylib.mod
    rm -rf ${OUTPUT_DIR}/include/xraylib
    rm -rf ${OUTPUT_DIR}/share/xraylib
    rm -rf ${BUILD_TYPE}

}


