[openib-general] Please give 1.0 RC1 a whirl
Bryan O'Sullivan
bos at pathscale.com
Wed Mar 15 15:59:47 PST 2006
On Wed, 2006-03-15 at 17:15 +0200, Moni Shoua wrote:
Thanks for doing this. I have a few comments.
In general, your .spec.in files should follow the pattern of
the .spec.in files in the 1.0 branch. Here are some problems I can see:
> +%define prefix /usr
This should not be present.
> +%description
> +udat is
Please provide a proper description.
> +make -C udapl clean
There's no need to make clean.
> +%files
> +%{prefix}/lib64/libdapl.a
> +%{prefix}/lib64/libdapl.so
These are wrong. There ought to be two packages here, a regular package
and a -devel package. The .so file should be a symlink to a .so.N file.
Only the .so.N file belongs in the main package - the .a and the .so
should be in -devel, along with headers. Headers should be packaged,
too.
Also, libraries go in %{_libdir}, not %{prefix}.
> +%defattr(-,root,root)
It's normal to have this immediately after the %files directive.
> -CFLAGS += -I/usr/local/include/infiniband
> +CFLAGS += -I/usr/include/infiniband -I/usr/local/include/infiniband
Please remove /usr/local from all paths in all build-related files.
> ifeq ($(VERBS),openib)
> LDFLAGS += -libverbs -libcm -libat
> -LDFLAGS += -rpath /usr/local/lib -L /usr/local/lib
> +LDFLAGS += -rpath /usr/local/lib64 -L /usr/local/lib64
Please remove -rpath from all build-related files.
> +%ifarch x86_64
> +%define dual_arch 1
> +%endif
This should not be here at all.
> +%files
> +%{prefix}/include/dat/dat.h
Please use %{_includedir}.
> +/etc/dat.conf
Please use %{_sysconfdir}.
> +%if %{dual_arch}
> +%{prefix}/lib64/libdat.a
> +%{prefix}/lib64/libdat.so
> +%endif
Same comments apply as to previous spec file, and the conditional should
go.
> +++ openib.org/src/userspace/dapl/dat/udat/Makefile 2006-03-14 16:07:50.000000000 +0200
> @@ -59,6 +59,7 @@
> DYNAMIC = $(TARGET_PATH)/libdat.so
> STATIC32 = $(TARGET_PATH32)/libdat.a
> DYNAMIC32 = $(TARGET_PATH32)/libdat.so
> +CONF=$(UDAT_ROOT)/dat.conf
>
> ifeq "$(ARCH)" "x86_64"
> DUAL_ARCH = true
These Makefiles must be fixed so that they do not try dual-arch builds.
> install: all
> + mkdir -p $(PREFIX)/usr/lib
> + mkdir -p $(PREFIX)/usr/lib64
> + mkdir -p $(PREFIX)/etc
This will break if someone redefines _prefix on the rpmbuild command
line. This Makefile should be rewritten to use autotools.
> %defattr(-,root,root)
> -%{_libdir}/librdmacm*.so.*
> +%{_libdir}/librdmacm*.so
I already have a correct .spec.in file for librdmacm in the 1.0 branch.
Please drop the changes to this file, as they are wrong and conflict
with my changes.
Thank you,
<b
More information about the general
mailing list