%define ace_version 5.6.7 %define tao_version 1.6.7 %define ciao_version 0.6.7 Summary: The ADAPTIVE Communication Environment (ACE) ant The ACE ORB (TAO) Name: ace+tao Version: %{ace_version} Release: 1.centos5 License: DOC License Group: Development/Libraries URL: http://www.cs.wustl.edu/~schmidt/TAO.html Packager: Toru Takahashi Source0: ACE+TAO+CIAO-%{version}.tar.bz2 Patch0: tao-config.patch Patch1: tao-platform-macros.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: openssl-devel redhat-lsb %description The ADAPTIVE Communication Environment (ACE) is a freely available, open-source object-oriented (OO) framework that implements many core patterns for concurrent communication software. ACE provides a rich set of reusable C++ wrapper facades and framework components that perform common communication software tasks across a range of OS platforms. The communication software tasks provided by ACE include event demultiplexing and event handler dispatching, signal handling, service initialization, interprocess communication, shared memory management, message routing, dynamic (re)configuration of distributed services, concurrent execution and synchronization. TAO is a real-time implementation of CORBA built using the framework components and patterns provided by ACE. TAO contains the network interface, OS, communication protocol, and CORBA middleware components and features. TAO is based on the standard OMG CORBA reference model, with the enhancements designed to overcome the shortcomings of conventional ORBs for high-performance and real-time applications. # ----------------- tao ------------------- %package -n tao Summary: The ADAPTIVE Communication Environment (ACE) ant The ACE ORB (TAO) Version: %{tao_version} Group: Development/Libraries Requires: openssl %description -n tao The ADAPTIVE Communication Environment (ACE) is a freely available, open-source object-oriented (OO) framework that implements many core patterns for concurrent communication software. ACE provides a rich set of reusable C++ wrapper facades and framework components that perform common communication software tasks across a range of OS platforms. The communication software tasks provided by ACE include event demultiplexing and event handler dispatching, signal handling, service initialization, interprocess communication, shared memory management, message routing, dynamic (re)configuration of distributed services, concurrent execution and synchronization. TAO is a real-time implementation of CORBA built using the framework components and patterns provided by ACE. TAO contains the network interface, OS, communication protocol, and CORBA middleware components and features. TAO is based on the standard OMG CORBA reference model, with the enhancements designed to overcome the shortcomings of conventional ORBs for high-performance and real-time applications. # ----------------- tao-devel ------------------- %package -n tao-devel Summary: Header files and development components for TAO Version: %{tao_version} Group: Development/Libraries Requires: tao = %{tao_version} %description -n tao-devel This package contains the components needed for developing programs using TAO. # ================== prep ======================= %prep %setup -q -n ACE_wrappers export ACE_ROOT=`pwd` export TAO_ROOT=$ACE_ROOT/TAO export CIAO_ROOT=$TAO_ROOT/CIAO export MPC_ROOT=$ACE_ROOT/MPC (cd $ACE_ROOT/ace; rm -f config.h) %patch0 -p 0 %patch1 -p 0 # optimization enabled cat >> $ACE_ROOT/include/makeinclude/platform_macros.GNU <> rawheaders.log echo '#include <'$h'>' | g++ -I. -Iprotocols -ITAO -ITAO/orbsvcs -ITAO/orbsvcs/orbsvcs -x c++ - -MM -MF mmout 2>> rawhdrs.log && cat mmout || true; done > mmraw.list cat mmraw.list | sed -e 's/^-://g' -e 's/\\//g' | tr -s [:space:] "\n" | \ sed -e 's#^./##g' | sed -e 's#/[^/]\+/\.\./#/#g' -e 's#/[^/]\+/\.\./#/#g' | \ sort -u > allheaders.list # install header file list #cat allheaders.list | cpio -pmd $RPM_BUILD_ROOT%{_includedir} for f in `cat allheaders.list`; do case "$f" in protocols/ace/*) echo "installing $f" mkdir -p `dirname $RPM_BUILD_ROOT%{_includedir}/${f/protocols\/}` install $f $RPM_BUILD_ROOT%{_includedir}/${f/protocols/} ;; ace/*) mkdir -p `dirname $RPM_BUILD_ROOT%{_includedir}/$f` install $f $RPM_BUILD_ROOT%{_includedir}/$f ;; ACEXML/*) mkdir -p `dirname $RPM_BUILD_ROOT%{_includedir}/$f` install $f $RPM_BUILD_ROOT%{_includedir}/$f ;; Kokyu/*) mkdir -p `dirname $RPM_BUILD_ROOT%{_includedir}/$f` install $f $RPM_BUILD_ROOT%{_includedir}/$f ;; TAO/tao/*) mkdir -p `dirname $RPM_BUILD_ROOT%{_includedir}/${f/TAO\/}` install $f $RPM_BUILD_ROOT%{_includedir}/${f/TAO/} ;; TAO/orbsvcs/orbsvcs/*) mkdir -p `dirname $RPM_BUILD_ROOT%{_includedir}/${f/TAO\/orbsvcs\/}` install $f $RPM_BUILD_ROOT%{_includedir}/${f/TAO\/orbsvcs\/} ;; *) echo $f ;; esac done # install TAO_IDL compiler install ${ACE_ROOT}/lib/libTAO_IDL_BE.so.%{ace_version} \ ${ACE_ROOT}/lib/libTAO_IDL_FE.so.%{ace_version} \ $RPM_BUILD_ROOT%{_libdir} (cd $RPM_BUILD_ROOT%{_libdir} && ln -sf libTAO_IDL_BE.so.%{ace_version} libTAO_IDL_BE.so) (cd $RPM_BUILD_ROOT%{_libdir} && ln -sf libTAO_IDL_FE.so.%{ace_version} libTAO_IDL_FE.so) install -d $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/ace_gperf $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_idl $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_imr $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_ifr $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_catior $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_nsadd $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_nsdel $RPM_BUILD_ROOT%{_bindir} install ${ACE_ROOT}/bin/tao_nslist $RPM_BUILD_ROOT%{_bindir} # manual install -d $RPM_BUILD_ROOT%{_mandir} install -d $RPM_BUILD_ROOT%{_mandir}/man1 install ${TAO_ROOT}/TAO_IDL/tao_idl.1 $RPM_BUILD_ROOT%{_mandir}/man1 install ${ACE_ROOT}/apps/gperf/ace_gperf.1 $RPM_BUILD_ROOT%{_mandir}/man1/ace_gperf.1 %clean rm -rf $RPM_BUILD_ROOT # =================== files ===================== # ------------------- tao -------------------- %files -n tao %defattr(0755,root,root,-) %{_libdir}/libACE* %{_libdir}/libKokyu* %{_libdir}/libTAO* %{_sbindir}/tao-* %doc ACE-INSTALL.html %doc AUTHORS %doc COPYING %doc FAQ %doc PROBLEM-REPORT-FORM %doc README %doc THANKS %doc VERSION %doc TAO/COPYING %doc TAO/PROBLEM-REPORT-FORM %doc TAO/TAO-INSTALL.html %doc TAO/VERSION %doc TAO/README # ------------------- tao-devel -------------------- %files -n tao-devel %defattr(0755,root,root,-) %{_bindir}/ace_gperf %{_bindir}/tao_idl %{_bindir}/tao_imr %{_bindir}/tao_ifr %{_bindir}/tao_catior %{_bindir}/tao_nsadd %{_bindir}/tao_nsdel %{_bindir}/tao_nslist %attr(0644,root,root) %{_mandir}/man1/ace_gperf.1.gz %attr(0644,root,root) %{_mandir}/man1/tao_idl.1.gz %defattr(-,root,root,-) %{_includedir}/ace %{_includedir}/ACEXML %{_includedir}/Kokyu %{_includedir}/tao %{_includedir}/orbsvcs %changelog * Sun Nov 30 2008 Toru Takahashi - - ACE 5.5.7, and move executables in _sbindir from tao-devel to tao package. - add redhat-lsb to BuildRequire * Fri Sep 19 2008 Toru Takahashi - - ACE 5.5.6, add LD_LIBRARY_PATH in build. - ace_gperf instead of gperf and gperf_ace * Sat Jul 5 2008 Toru Takahashi - - Initial build.