Magellan Linux

Diff of /smage/branches/alx07x-stable/include/cmake.sminc

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 5866 by niro, Fri Oct 17 07:59:57 2014 UTC revision 11527 by niro, Thu Dec 21 09:38:04 2017 UTC
# Line 2  Line 2 
2  # cmake config tools  # cmake config tools
3    
4  SDEPEND="${SDEPEND}  SDEPEND="${SDEPEND}
5   >= dev-util/cmake-2.4.7"   >= dev-util/cmake-2.4.7
6     >= virtual/sed"
7    
8  # enables features like --enable-blah with make  # enables features like --enable-blah with make
9  cmake_enable()  cmake_enable()
# Line 112  cmake_opt() Line 113  cmake_opt()
113   echo "-D${feature}=${option}"   echo "-D${feature}=${option}"
114  }  }
115    
116    cmake_libsuffix()
117    {
118     local libsuffix
119    
120     libsuffix="$(mlibdir)"
121     libsuffix="${libsuffix/lib}"
122     echo "${libsuffix}"
123    }
124    
125  cmake_src_prepare()  cmake_src_prepare()
126  {  {
127   munpack ${SRCFILE} || die   munpack ${SRCFILE} || die
# Line 120  cmake_src_prepare() Line 130  cmake_src_prepare()
130  cmake_configure()  cmake_configure()
131  {  {
132   local configure_opts="$@"   local configure_opts="$@"
133   local libsuffix="$(mlibdir)"   local default_opts
  local libsuffix="${libsuffix/lib}"  
134    
135   # disable colors if requested   # disable colors if requested
136   if [[ ${NOCOLORS} = true ]]   if [[ ${NOCOLORS} = true ]]
137   then   then
138   configure_opts="${configure_opts} -DCMAKE_COLOR_MAKEFILE=OFF"   default_opts+=" -DCMAKE_COLOR_MAKEFILE=OFF"
139   fi   fi
140    
141   cmake \   default_opts+=" -DCMAKE_VERBOSE_MAKEFILE=ON"
142   -DCMAKE_VERBOSE_MAKEFILE=ON \   default_opts+=" -DCMAKE_BUILD_TYPE=Release"
143   -DCMAKE_BUILD_TYPE=Release \   default_opts+=" -DCMAKE_INSTALL_PREFIX=${PREFIX:-/usr}"
144   -DCMAKE_INSTALL_PREFIX=${PREFIX:-/usr} \   if [[ ${MULTILIB_BUILD} = true ]]
145   -DLIB_SUFFIX=${libsuffix} \   then
146   -DLIB_INSTALL_DIR=${PREFIX:-/usr}/$(mlibdir) \   # eval these variables later with the abi-${ABI} caller
147   ${configure_opts} \   default_opts+=' -DLIB_SUFFIX=$(cmake_libsuffix)'
148   ${SRCDIR}/${SRCSUBDIR} \   default_opts+=' -DLIB_INSTALL_DIR=${PREFIX:-/usr}/$(mlibdir)'
149   || die   default_opts+=' -DLIB_SUFFIX=$(cmake_libsuffix)'
150     else
151     # eval these variables now
152     default_opts+=" -DLIB_SUFFIX=$(cmake_libsuffix)"
153     default_opts+=" -DLIB_INSTALL_DIR=${PREFIX:-/usr}/$(mlibdir)"
154     default_opts+=" -DLIB_SUFFIX=$(cmake_libsuffix)"
155     fi
156    
157     if [[ ${MULTILIB_BUILD} = true ]]
158     then
159     local abi
160     local abis_to_run="${MULTILIB_ABIS}"
161    
162     # respect MULTILIB_ONLY_ABI variable
163     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
164     for abi in ${abis_to_run}
165     do
166     cd ${BUILDDIR}/build-${abi}
167     abi-${abi} cmake ${default_opts} ${configure_opts} ${SRCDIR}-${abi}/${SRCSUBDIR} || die
168     done
169     else
170     cd ${BUILDDIR}/build
171     cmake ${default_opts} ${configure_opts} ${SRCDIR}/${SRCSUBDIR} || die
172     fi
173  }  }
174    
175  cmake_src_compile()  cmake_setup_builddir()
176  {  {
177   cd ${SRCDIR}   if [[ ${MULTILIB_BUILD} = true ]]
178     then
179     all-abis install -d ${BUILDDIR}/build-$(mabi) || die
180     else
181     install -d ${BUILDDIR}/build || die
182     fi
183    }
184    
185   # remove build dir if exist  cmake_mmake()
186   [[ -d ${BUILDDIR}/build ]] && rm -rf ${BUILDDIR}/build  {
187     if [[ ${MULTILIB_BUILD} = true ]]
188     then
189     mmake -C ${BUILDDIR}/build-$(mabi) "$@" || die
190     else
191     mmake -C ${BUILDDIR}/build "$@" || die
192     fi
193    }
194    
195   # build outside of the source dir  cmake_src_compile()
196   install -d ${BUILDDIR}/build || die  {
197   cd ${BUILDDIR}/build   cd ${SRCDIR}
198    
199   cmake_configure || die   cmake_setup_builddir || die
200   mmake || die   cmake_configure "$@" || die
201     cmake_mmake || die
202  }  }
203    
204  cmake_src_check()  cmake_src_check()
# Line 162  cmake_src_check() Line 208  cmake_src_check()
208   return 0   return 0
209  }  }
210    
211    cmake_multilib_src_check()
212    {
213     #local abi
214     #local abis_to_run="${MULTILIB_ABIS}"
215     #
216     ## respect MULTILIB_ONLY_ABI variable
217     #[[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
218     #for abi in ${abis_to_run}
219     #do
220     # cd ${BUILDDIR}/build-${abi}
221     # mmake -j1 -k check || die
222     #done
223     return 0
224    }
225    
226  cmake_src_install()  cmake_src_install()
227  {  {
228   cd ${BUILDDIR}/build   cmake_mmake DESTDIR=${BINDIR} install || die
  make DESTDIR=${BINDIR} install || die  
229    
230   cd ${SRCDIR}   cd ${SRCDIR}
231   local i   local i
# Line 179  cmake_src_install() Line 239  cmake_src_install()
239   done   done
240  }  }
241    
242  export_inherits cmake src_prepare src_compile src_check src_install  cmake_multilib_src_install()
243    {
244     local abi
245     local abis_to_run="${MULTILIB_ABIS}"
246    
247     cmake_mmake DESTDIR=${BINDIR} install || die
248    
249     # respect MULTILIB_ONLY_ABI variable
250     [[ ! -z ${MULTILIB_ONLY_ABI} ]] && abis_to_run="${MULTILIB_ONLY_ABI}"
251     for abi in ${abis_to_run}
252     do
253     cd ${SRCDIR}-${abi}
254     local i
255     for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \
256     FAQ LICENSE NEWS README TODO
257     do
258     if [ -f ${SRCDIR}-${abi}/${i} ]
259     then
260     minstalldocs ${i} || die
261     fi
262     done
263     done
264    }
265    
266    export_inherits cmake src_prepare src_compile
267    if [[ ${MULTILIB_BUILD} = true ]]
268    then
269     export_inherits cmake_multilib src_check src_install
270    else
271     export_inherits cmake src_check src_install
272    fi

Legend:
Removed from v.5866  
changed lines
  Added in v.11527