[omniORB] omniORB 4.0.3 and omniORBpy 2.3 available

Johan Cronje jcronje at dsp.sun.ac.za
Thu Nov 27 00:05:38 GMT 2003


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wednesday 26 November 2003 21:07, Thomas Lockhart wrote:
> > It defaults to i386. Maybe that can cause the problems?
>
> You probably want to just use what the vendor suggests. Or override it
> on the command line when you build the rpms. That way we can integrate
> the spec file for more distros.

I've left out the BuildArch entry and now everything builds OK. 

> > You also need (for some reason) to do the following:
> > chmod a+x $RPM_BUILD_ROOT/etc/init.d/omniNames
>
> OK. Will adjust the spec file.

See attached.

> >>># install SuSE rc start script
> >>>mkdir -p $RPM_BUILD_ROOT/usr/sbin
> >>>ln -sf ../../etc/init.d/omniNames $RPM_BUILD_ROOT/usr/sbin/rcomniNames
> >>
> >>I *think* this one should go into the post-installation section for boot
> >>scripts. I've had trouble getting soft links to stay "soft" when
> >>packaging if I just use the %files section to solve it.
> >
> > I found that the link stays symbolic after I installed my bootscripts
> > rpm. I checked through suse's hotplug src rpm spec file for clues as to
> > how to insert the rcomniNames link.
>
> Hmm. Some other distros put the files into the init.d directory (like
> SuSE) but do not bother with a soft link into /usr/sbin. Does SuSE also
> have the rcX.d directories and chkconfig to adjust what runs when?

I assume you mean /etc/rc.d/rcX.d; Yes, SuSE do have these directories.
chkconfig is also present, and I suspect that YaST uses chkconfig (I've never
had to use chkconfig directly, I use YaST to make runlevel changes).

> Mandrake and RH use /sbin/service to access the boot scripts, as in
>
>    service omniNames start|stop|restart

In SuSE you simply would say rcomniNames start|stop|restart or 
rc<service_in_/etc/init.d> start|stop|restart. Some have symlinks and others 
are proper scripts that call the init.d scripts.

> >>If things are failing here, please send the text of the RPM output. Not
> >>sure what the problem with the spec file might be, except perhaps SuSE
> >>looks for something a bit different.
> >
> > Will do. I am busy with a run that reincludes them and does not specify
> > the architecture (like the first time I did a successful run).
>
> Great. Send the spec file and we can do a couple more iterations of
> merging to get everything happy.

See the attached spec file. Everything now works fine, except the following:

What is /etc/init.d/functions responsible for? SuSE doesn't have it, and it is
the first entry in the omniNames start script, so my /etc/init.d/omniNames
script is failing at the moment.

I have placed the built RPMs at the following address:
http://www.dsp.sun.ac.za/~jcronje/omniORB/

As soon as I have the bootscripts RPM figured out I will post that too.

Thanks for all the help, Thomas!

Greetings,

Johan

- -- 
"There is beauty in simplicity"		-- Johan Cronje
- ---------------------------------------------------------------
Johan Cronje
Digital Signal Processing / Telecommunications Group
Electrical and Electronic Engineering Department
University of Stellenbosch
http://www.dsp.sun.ac.za/~jcronje
- ---------------------------------------------------------------
GNUPG Key: http://www.dsp.sun.ac.za/~jcronje/jcronje.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2-rc1-SuSE (GNU/Linux)

iQEVAwUBP8UjuOEeclgONaRbAQKd4Af9HWaNK7TyhN0gejDnbVO3FRc9oJ9a1Yr8
DPwVEEML5VVmrJdqKf2fBN9XRYpIUaOdfh0Q277qkfp4YWQLg5nwrQMPf57OqL5s
5C3M+zaOFoM6Ao0xMoepjqc+dHwnp+Wu30QPDgvE00g5YUuwyzIln1kIst+osMs3
Ko73gdhczk7qbuBLwLwxpEnXmEGwThmpwgB0Ymk2HKQmKT9g94UgqAaWcExOTeGe
SZsKmozPsISCCyZEazW+VneDRgYPqBQ7Yx8kj+rakunDKjBgEkWRSGSj387/0Y9k
sAYh409/dE5VFQsv2tg65B8VnoMmATKoC9OZNmoQmBg47MvmI4rsLw==
=g22i
-----END PGP SIGNATURE-----
-------------- next part --------------
Summary: Object Request Broker (ORB)
Name:    omniORB
Version: 4.0.3
Release: 1
License: GPL / LGPL
Group:   System/Libraries
Source0: %{name}-%{version}.tar.gz
# omniORB.cfg is a (possibly modified) version of sample.cfg in the omniORB distro.
Prefix: /usr
Prereq: /sbin/chkconfig /sbin/ldconfig
URL:            http://omniorb.sourceforge.net/
#Provides:       corba
BuildRequires:  python glibc-devel openssl
Buildroot:      %{_tmppath}/%{name}-%{version}-root
Packager:	Johan Cronje
Distribution:	SuSE Linux

%description
%{name} is an Object Request Broker (ORB) which implements
specification 2.6 of the Common Object Request Broker Architecture
(CORBA). Contains the libraries needed to run programs dynamically
linked with %{name}.

# servers

%package -n %{name}-servers
Summary: Utility programs
Group:          Development/C++
Requires:       %{name} = %{version}-%{release}
Provides:       libomniorb-servers = %{version}-%{release} %{name}-servers = %{version}-%{release}

%description -n %{name}-servers
%{name} CORBA services including a Naming Service.

%package -n %{name}-bootscripts
Summary: Utility programs
Group: Development/C++
Requires: %{name}-servers = %{version}-%{release} %{name}-utils = %{version}-%{release}
Provides: %{name}-bootscripts = %{version}-%{release}

%description -n %{name}-bootscripts
Automatic starting of the %{name} CORBA Naming Service.

# utilities

%package -n %{name}-utils
Summary: Utility programs
Group:          Development/C++
Requires:       %{name} = %{version}-%{release}
Provides:       libomniorb-utils = %{version}-%{release} %{name}-utils = %{version}-%{release}

%description -n %{name}-utils
%{name} utility programs which may be useful at runtime.

# devel part of the bundle

%package -n %{name}-devel
Summary: Header files and libraries needed for %{name} development
Group:          Development/C++
Requires:       %{name} = %{version}-%{release}
Provides:       libomniorb-devel = %{version}-%{release} %{name}-devel = %{version}-%{release}

%description -n %{name}-devel
The header files and libraries needed for developing programs using
%{name}.

# docs and examples are in a separate package

%package -n %{name}-doc
Summary: Documentation and examples for %{name}
Group:          Development/C++
#Requires:       %{name} = %{version}

%description -n %{name}-doc
Developer documentation and examples.


%define py_ver        %(python -c 'import sys;print(sys.version[0:3])')

%prep 

%setup -n %{name}-%{version}
#%patch0 -p1

./configure --prefix=%{prefix} --with-openssl=/usr


%build
# We abuse the CPPFLAGS to pass optimisation options through.
make IMPORT_CPPFLAGS+="$RPM_OPT_FLAGS" all


%install
make DESTDIR=$RPM_BUILD_ROOT install

# on SuSE, /etc/rc.d -> /etc/init.d/
mkdir -p $RPM_BUILD_ROOT/etc/init.d
cp sample.cfg $RPM_BUILD_ROOT/etc/omniORB.cfg
cp etc/init.d/omniNames $RPM_BUILD_ROOT/etc/init.d/
chmod a+x $RPM_BUILD_ROOT/etc/init.d/omniNames
# install SuSE rc start script
mkdir -p $RPM_BUILD_ROOT/usr/sbin
ln -sf ../../etc/init.d/omniNames $RPM_BUILD_ROOT/usr/sbin/rcomniNames

# man pages under /usr/share/man
mkdir -p $RPM_BUILD_ROOT/%{prefix}/share/man/man{1,5}
cp -r man/* $RPM_BUILD_ROOT/%{prefix}/share/man

mkdir -p $RPM_BUILD_ROOT/var/log/omniNames
mkdir -p $RPM_BUILD_ROOT/var/lib/omniMapper

# Rename catior to avoid naming conflict with TAO
mv $RPM_BUILD_ROOT/%{prefix}/bin/catior $RPM_BUILD_ROOT/%{prefix}/bin/catior.omni
mv $RPM_BUILD_ROOT/%prefix/share/man/man1/catior.1 $RPM_BUILD_ROOT/%prefix/share/man/man1/catior.omni.1


%clean
[ -z $RPM_BUILD_ROOT ] || rm -rf $RPM_BUILD_ROOT

%pre
%post -n %{name} -p /sbin/ldconfig
%postun -n %{name} -p /sbin/ldconfig

%post bootscripts
/sbin/chkconfig --add omniNames

%preun bootscripts
/sbin/chkconfig --del omniNames
rm -rf /var/log/omniNames/*
rm -rf /var/lib/omniMapper/*


# main package includes libraries and copyright info
%files
%defattr (-,root,root)
%doc CREDITS COPYING COPYING.LIB
%config(noreplace) %_sysconfdir/*.cfg
%prefix/lib/*.so.*
%prefix/share/idl


%files -n %{name}-servers
%defattr (-,root,root)
%attr(644,root,man) %prefix/share/man/man1/omniNames*
#%attr(644,root,man) %prefix/man/man1/omniMapper*
%prefix/bin/omniMapper
%prefix/bin/omniNames
# Thin substitute for standard Linux init script

%files -n %{name}-bootscripts
%defattr (-,root,root)
%config(noreplace) %_sysconfdir/init.d/*
%dir %attr(754,root,root) /var/log/omniNames
%dir %attr(754,root,root) /var/lib/omniMapper
%attr(744,root,root) /usr/sbin/*

%files -n %{name}-utils
%defattr (-,root,root)
%attr(644,root,man) %prefix/share/man/man1/catior*
%attr(644,root,man) %prefix/share/man/man1/genior*
%attr(644,root,man) %prefix/share/man/man1/nameclt*
%prefix/bin/catior.omni
%prefix/bin/convertior
%prefix/bin/genior
%prefix/bin/nameclt


%files -n %{name}-devel
%defattr(-,root,root)
%doc ReleaseNotes* readmes/*
%attr(644,root,man) %prefix/share/man/man1/omniidl*
%prefix/bin/omnicpp
%prefix/bin/omniidl
%prefix/bin/omniidlrun.py
%prefix/bin/omkdepend
%prefix/lib/*.a
%prefix/lib/*.so
%prefix/include/*
%prefix/lib/python%{py_ver}/site-packages/omniidl/*
%prefix/lib/python%{py_ver}/site-packages/omniidl_be/*.py*
%prefix/lib/python%{py_ver}/site-packages/omniidl_be/cxx/*.py*
%prefix/lib/python%{py_ver}/site-packages/omniidl_be/cxx/header/*
%prefix/lib/python%{py_ver}/site-packages/omniidl_be/cxx/skel/*
%prefix/lib/python%{py_ver}/site-packages/omniidl_be/cxx/dynskel/*
%prefix/lib/python%{py_ver}/site-packages/omniidl_be/cxx/impl/*
%prefix/lib/python%{py_ver}/site-packages/_omniidlmodule.so*
%prefix/lib/pkgconfig/*.pc

%files -n %{name}-doc
%defattr(-,root,root)
%doc doc/* 


%changelog
* Wed Nov 19 2003 Duncan Grisby <duncan at grisby.org> 4.0.3
- Merge contributed updates, bump version number.

* Fri Aug 08 2003 Thomas Lockhart <lockhart at fourpalms.org> 4.0.2
- Rename catior man page to match catior.omni binary name

* Wed Aug  6 2003 Duncan Grisby <dgrisby at apasphere.com> 4.0.2
- Bump version number.

* Tue Jun 10 2003 Duncan Grisby <dgrisby at apasphere.com> 4.0.2pre1
- Fix some text, bump version number, add init script, minor tweaks.

* Wed Feb 12 2003 Thomas Lockhart <lockhart at fourpalms.org> 4.0.0
- Rename catior to catior.omni to avoid name conflict with TAO

* Tue Oct 01 2002 Thomas Lockhart <lockhart at fourpalms.org> 4.0.0
- Track down changes in documentation for 4.0.0
- Omit patches required to build the previous beta

* Mon Jul 29 2002 Thomas Lockhart <lockhart at fourpalms.org> 4.0.0beta
- Separate out utility programs to manage name conflict for catior with TAO

* Wed Jul 03 2002 Thomas Lockhart <lockhart at fourpalms.org> 4.0.0beta
- Start from 3.04 spec files
- Strip workarounds from the spec file since 4.0 builds more cleanly


More information about the omniORB-list mailing list