#! /bin/sh #---------------------------------------------------------------------------- # _do_dev_package - joblist to do befor mktarball.sh work # # Creation : 2010-02-06 hbfl # Last Update: $Id$ # # Copyright (c) 2007-2017 Holger Bruenje, holgerbruenjes(at)gmx(dot)net # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. #---------------------------------------------------------------------------- #exec 2> dev-package-trace$$.log #set -x case ${package_name} in *-dev) # libpcre-dev d_suffix='-dev' # eis_dev d_path='dev' # The HEADER-Files d_info='HEADER' # libpcre d_lib='' ;; *-static) # libpcre-dev-static d_suffix='-dev-static' # eis_dev_static d_path='dev_static' # The Sstatic-Files d_info='Static' # libpcre-dev d_lib='-dev' ;; esac # set parameter bin_name="${bin_prefix}bin_${d_path}_$(echo ${package_name%${d_suffix}} | tr '-' '_')" install_path="../${eis_folder:-eis_${d_path}}/tmp/install.sh" install_strg="lib_names" package_path="../${eis_folder:-eis_${d_path}}/var/install/packages/${package_name}" package_strg="Internal Program Version:" package_strip_suffix=${package_name%${d_suffix}} # set require if ${package_lib} then pg=lib else pg=package fi _lib=true case x${lib_folder} in xno) _lib=false ;; x) folder_lib=usr/lib ;; *) folder_lib=${lib_folder} ;; esac if [ -n "${bin_prefix}" ] then p_bin_prefix="${bin_prefix%_}+" fi # get version from _ADMIN/$package_name bin_lib_version=$(grep "^${bin_name}" ${p_bin_prefix}${package_name} | sed "s/^${bin_name}[_:]//; s/_/./g" | head -n 1) if [ -z "${bin_lib_version}" ] then bin_lib_version=$(grep "^#${bin_name}" ${p_bin_prefix}${package_name} | sed "s/^#${bin_name}[_:]//; s/_/./g" | head -n 1) fi # bin name changed if [ -z "${bin_lib_version}" ] then bin_name="${bin_prefix}bin_$(echo ${package_name} | tr '-' '_')" # get version from _ADMIN/$package_name bin_lib_version=$(grep "^${bin_name}" ${p_bin_prefix}${package_name} | sed "s/^${bin_name}[_:]//; s/_/./g" | head -n 1) if [ -z "${bin_lib_version}" ] then bin_lib_version=$(grep "^#${bin_name}" ${p_bin_prefix}${package_name} | sed "s/^#${bin_name}[_:]//; s/_/./g" | head -n 1) fi if [ -z "${bin_lib_version}" ] then # special handling for eis64 32bit to set version also bin_name2=$(echo ${bin_name} | sed 's/_32bit//') bin_lib_version=$(grep "^${bin_name2#${bin_prefix}}" ${p_bin_prefix}${package_name} | sed "s/^${bin_name2#${bin_prefix}}[_:]//; s/_/./g" | head -n 1) fi fi #bin_lib_name=`ls ../${bin_lib_folder}/usr/lib | grep "${packages_name%[0-9]-dev}" | sed 's#\.so.*$##'` # do that only -> lib is given if ${_lib} then # get folder to extract lib name bin_lib_folder=$(grep "^${bin_prefix}bin_$(echo ${package_name%${d_suffix}} | tr '-' '_')" ${p_bin_prefix}${package_name%${d_suffix}}) # lib_name_version=`ls -F ../${bin_lib_folder}/${folder_lib} | # grep -v "/$" | # sed 's#*##'` lib_name_version=$(find ../${bin_lib_folder}/${folder_lib} \ -maxdepth 1 -type f -name '*' -printf '%f\n') # list libs in one line with delimeter space for install.sh t_line='' for bin_lib in ${lib_name_version} do if [ -z "${t_line}" ] then t_line="${bin_lib}" else t_line="${t_line}\n${bin_lib}" fi done lib_name_version="${t_line}" #fi # get version from $package #pg_lib_version=`grep "^${install_strg}" ${install_path} | # sed "s/^${install_strg}=//"` #case ${pg_lib_version} in # ${bin_lib_version}) # : # when equal, nothing to do # ;; # *) # if ${_lib} # then # write libs in install.sh for linking sed -i "s#^\(${install_strg}\)=.*#\1=\"${lib_name_version}\"#" \ ${install_path} fi # write package info version in description sed -i "s|\(${package_strg}\).*$|\1 ${package_internal_name} ${bin_lib_version} (The ${d_info}-Files)|" \ ${package_path} if ${main:-true} then # set $package path main_package_path="../${main_eis_folder:-eis}/var/install/packages/${package_strip_suffix}" # get version from $package main_package_version=$(sed -n '// s# ##g; s###gp' \ ${main_package_path}) # non equal, change require to version from $package sed -i "s|\(require-${pg}>${package_strip_suffix}${d_lib}\) .*\$|\1 ${main_package_version}|" \ ${package_path} fi # get package version from package info file if [ -z "${PKG_BUILD_VERSION}" ] then # set $package path main_package_path="../${main_eis_folder:-eis}/var/install/packages/${main_package}" # get version from $package main_package_version=$(sed -n '// s# ##g; s###gp' ${package_path} | sed -e 's|[svn|cvs].*$||') fi # set linked-package version if [ -n "${linked}" ] then for p_linked in ${linked} do sed -i "/linked-package>${p_linked} / s#[1-9]*\.[0-9]*\.[0-9]*#${PKG_BUILD_VERSION:-${main_package_version}}#" \ ${package_path} done fi # set required-package version if [ -n "${required}" ] then for p_required in ${required} do sed -i "/require-package>${p_required} / s#[1-9]*\.[0-9]*\.[0-9]*#${PKG_BUILD_VERSION:-${main_package_version}}#" \ ${package_path} done fi