From 9b0433943c8541d02343a01a37aa7a96acfc81d7 Mon Sep 17 00:00:00 2001 From: braam Date: Thu, 14 Mar 2002 05:26:35 +0000 Subject: [PATCH] - many small makefile changes to build package conveniently. - to be done: retain CVS with anonymous root - fix up the PORTALS path - build a portals RPM - include a better tags target that includes vim tags and portals. --- lustre/doc/VERSIONING | 27 +++- lustre/lib/Makefile.am | 2 + lustre/llite/Makefile.am | 4 + lustre/llite/namei.c | 2 +- lustre/mdc/Makefile.am | 7 +- lustre/mds/Makefile.am | 6 +- lustre/osc/Makefile.am | 5 +- lustre/ost/Makefile.am | 5 +- lustre/scripts/Makefile.am | 2 +- lustre/scripts/{obd.spec => lustre-lite.spec.in} | 43 +++--- lustre/utils/Makefile.am | 1 + lustre/utils/Pack.pm | 172 ----------------------- 12 files changed, 79 insertions(+), 197 deletions(-) create mode 100644 lustre/lib/Makefile.am rename lustre/scripts/{obd.spec => lustre-lite.spec.in} (55%) delete mode 100644 lustre/utils/Pack.pm diff --git a/lustre/doc/VERSIONING b/lustre/doc/VERSIONING index 30f5f61..56a525b 100644 --- a/lustre/doc/VERSIONING +++ b/lustre/doc/VERSIONING @@ -2,6 +2,7 @@ Lustre versioning ================= 0.0.1 2/19/2002 +0.0.2 3/14/2002 describe branches / stable tag This document describes versioning of source and binaries for Lustre. @@ -34,9 +35,33 @@ New numbers are used as follows: 4. test: - when developers feel it is time to exchange a named version -What will run, what won't: +What will run, what won't ? +--------------------------- 1. If the test level is non-zero no guarantees of any kind are made. + 2. For three digit releases/tags the code should perform according to the announcement. +Moving tags +----------- + +The last stable release will be tagged: CVS tag "stable" +The last operational development snapshot will be CVS tag "dstable" + +Branches +-------- + +For even minor releases a branch tag will be created. The branch tag +will be of the form: + +bmajor_minor + +Note that the CVS head is where development is going. If developers +use a branch they must eventually merge that back into the head. +Typically this is done by importing changes into the branch and +removing the sticky tags: + +cvs update -A + +fixing any conflicts and then committing. \ No newline at end of file diff --git a/lustre/lib/Makefile.am b/lustre/lib/Makefile.am new file mode 100644 index 0000000..b0bb868 --- /dev/null +++ b/lustre/lib/Makefile.am @@ -0,0 +1,2 @@ +EXTRA_DIST = mds_pack.c mds_updates.c obd_pack.c page.c + diff --git a/lustre/llite/Makefile.am b/lustre/llite/Makefile.am index bf574b9..2d095b4 100644 --- a/lustre/llite/Makefile.am +++ b/lustre/llite/Makefile.am @@ -13,6 +13,10 @@ page.c: -ln -s ../lib/page.c +LINX=page.c llight_SOURCES = page.c super.c rw.c file.c dir.c sysctl.c namei.c symlink.c +dist-hook: + list='$(LINX)'; for f in $$list; do rm -f $(distdir)/$$f; done + include $(top_srcdir)/Rules diff --git a/lustre/llite/namei.c b/lustre/llite/namei.c index 0b9ba68..2905e75 100644 --- a/lustre/llite/namei.c +++ b/lustre/llite/namei.c @@ -100,7 +100,7 @@ static struct dentry *ll_lookup(struct inode * dir, struct dentry *dentry) err = mdc_getattr(&sbi->ll_mds_client, ino, type, OBD_MD_FLNOTOBD|OBD_MD_FLBLOCKS, &request); if ( err ) { - CERROR("obdo_fromid failed\n"); + CERROR("failure %d inode %ld\n", err, ino); ptlrpc_free_req(request); EXIT; return ERR_PTR(-abs(err)); diff --git a/lustre/mdc/Makefile.am b/lustre/mdc/Makefile.am index 6fffd8a..c2d0321 100644 --- a/lustre/mdc/Makefile.am +++ b/lustre/mdc/Makefile.am @@ -10,11 +10,16 @@ modulefs_DATA = mdc.o EXTRA_PROGRAMS = mdc -mdc_SOURCES = mds_pack.c mdc_request.c mdc_reint.c mds_updates.c +LINX=mds_pack.c mds_updates.c +mdc_SOURCES = mdc_request.c mdc_reint.c $(LINX) mds_pack.c: ln -s ../lib/mds_pack.c . mds_updates.c: ln -s ../lib/mds_updates.c . +dist-hook: + list='$(LINX)'; for f in $$list; do rm -f $(distdir)/$$f; done + + include $(top_srcdir)/Rules diff --git a/lustre/mds/Makefile.am b/lustre/mds/Makefile.am index a78e8b8..91c3c5f 100644 --- a/lustre/mds/Makefile.am +++ b/lustre/mds/Makefile.am @@ -9,12 +9,16 @@ MODULE = mds modulefs_DATA = mds.o EXTRA_PROGRAMS = mds +LINX=mds_pack.c mds_updates.c mds_pack.c: ln -s ../lib/mds_pack.c . mds_updates.c: ln -s ../lib/mds_updates.c . -mds_SOURCES = mds_pack.c handler.c mds_reint.c mds_updates.c +mds_SOURCES = handler.c mds_reint.c $(LINX) + +dist-hook: + list='$(LINX)'; for f in $$list; do rm -f $(distdir)/$$f; done include $(top_srcdir)/Rules diff --git a/lustre/osc/Makefile.am b/lustre/osc/Makefile.am index 602a073..30d518b 100644 --- a/lustre/osc/Makefile.am +++ b/lustre/osc/Makefile.am @@ -9,10 +9,13 @@ MODULE = osc modulefs_DATA = osc.o EXTRA_PROGRAMS = osc - +LINX= obd_pack.c osc_SOURCES = obd_pack.c osc_request.c # super.c rw.c file.c dir.c sysctl.c super.c namei.c symlink.c obd_pack.c: ln -s ../lib/obd_pack.c . +dist-hook: + list='$(LINX)'; for f in $$list; do rm -f $(distdir)/$$f; done + include $(top_srcdir)/Rules diff --git a/lustre/ost/Makefile.am b/lustre/ost/Makefile.am index 9ed0b33..5a355b9 100644 --- a/lustre/ost/Makefile.am +++ b/lustre/ost/Makefile.am @@ -8,12 +8,15 @@ MODULE = ost modulefs_DATA = ost.o EXTRA_PROGRAMS = ost +LINX=page.c obd_pack.c obd_pack.c: ln -s ../lib/obd_pack.c . page.c: ln -s ../lib/page.c -ost_SOURCES = page.c obd_pack.c ost_handler.c +ost_SOURCES = $(LINX) ost_handler.c +dist-hook: + list='$(LINX)'; for f in $$list; do rm -f $(distdir)/$$f; done include $(top_srcdir)/Rules diff --git a/lustre/scripts/Makefile.am b/lustre/scripts/Makefile.am index 31fcb8e..8b450f1 100644 --- a/lustre/scripts/Makefile.am +++ b/lustre/scripts/Makefile.am @@ -3,4 +3,4 @@ # This code is issued under the GNU General Public License. # See the file COPYING in this distribution -EXTRA_DIST = license-status maketags.sh mkobddevs obd.spec obdtrace_demo.scr +EXTRA_DIST = license-status maketags.sh mkobddevs obdtrace_demo.scr lustre.spec diff --git a/lustre/scripts/obd.spec b/lustre/scripts/lustre-lite.spec.in similarity index 55% rename from lustre/scripts/obd.spec rename to lustre/scripts/lustre-lite.spec.in index af79292..5a92fad 100644 --- a/lustre/scripts/obd.spec +++ b/lustre/scripts/lustre-lite.spec.in @@ -1,16 +1,17 @@ # obd.spec -%define version 0.007 -%define kversion 2.4.9 -%define aclevel ac10 -%define izolevel 2 +%define linuxdir @LINUX@ +%define version 0.3.2.0 +%define kversion @KVERSION@ +%define extra_version @EXTRAVERSION@ +%define module_dir @moduledir@ Release: 0 -%define extraversion -%{aclevel} +%define extraversion -%{extra_version} %define kuname %{kversion}%{extraversion} %define knamever %{kversion}_%{aclevel} -%define bdir $RPM_BUILD_DIR/obd-%{version}-%{knamever} +%define bdir $RPM_BUILD_DIR/%{module_dir}/fs -Summary: Object-Based Disk utility programs -Name: lustre +Summary: Lustre Lite File System +Name: lustre-lite Version: %{version} Copyright: GPL Group: Utilities/System @@ -19,22 +20,22 @@ BuildRoot: /var/tmp/obd-%{version}-root Source: ftp://ftp.lustre.com/pub/lustre/obd-%{version}.tar.gz %description -Object-Based Disk utilities and demonstration scripts. +The Lustre Lite Cluster File System: kernel drivers for file system, +servers and utilities. %package -n lustre-modules -Summary: Object-Based Disk storage drivers for Linux %{kuname} +Summary: Kernel Lustre drivers for Linux %{kuname} Group: Development/Kernel -#Requires: kernel-intermezzo = %{knamever}_%{izolevel} %description -n lustre-modules -Object-Based Disk storage drivers for Linux %{kuname}. +Lustre file System, server and network drivers for Linux %{kuname}. %package -n lustre-source Summary: Object-Based Disk storage driver source Group: Development/Kernel %description -n lustre-source -Object-Based Disk storage driver source. +Lustre Lite Source for further development %prep %setup -n obd-%{version} @@ -47,10 +48,7 @@ mkdir -p $RPM_BUILD_ROOT/usr/src/obd-%{version} tar -cf - . | (cd $RPM_BUILD_ROOT/usr/src/obd-%{version} && tar -xvBpf -) # Set an explicit path to our Linux tree, if we can. -enable= -linuxdir=/usr/src/linux-%{kuname} -test -d $linuxdir && enable=--enable-linuxdir=$linuxdir -./configure $enable +./configure --enable-linuxdir=$linuxdir make %install @@ -65,7 +63,16 @@ make install prefix=$RPM_BUILD_ROOT %files -n lustre-modules %attr(-, root, root) %doc COPYING -%attr(-, root, root) /lib/modules/%{kuname}/fs/obd*.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/llight.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/ptlrpc.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/mds.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/mdc.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/ost.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/osc.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/obdclass.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/obdfilter.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/obdecho.o +%attr(-, root, root) /lib/modules/%{kuname}/fs/obdext2.o %files -n lustre-source %attr(-, root, root) /usr/src/obd-%{version} diff --git a/lustre/utils/Makefile.am b/lustre/utils/Makefile.am index 2eb2a81..ae40c02 100644 --- a/lustre/utils/Makefile.am +++ b/lustre/utils/Makefile.am @@ -1,5 +1,6 @@ DEFS:= +EXTRA_DIST = parser.h CFLAGS:=-g -I. -I/usr/include/glib-1.2 -I$(PORTALS)/include \ -I/usr/lib/glib/include -I$(srcdir)/../include -Wall KFLAGS:= diff --git a/lustre/utils/Pack.pm b/lustre/utils/Pack.pm deleted file mode 100644 index ad9f688..0000000 --- a/lustre/utils/Pack.pm +++ /dev/null @@ -1,172 +0,0 @@ -package Pack; -use Carp; -use Exporter; -@EXPORT = qw(LOGL, UNLOGL, LOGU32, UNLOGU32, LLOGU32, LUNLOGU32, LOGU64, UNLOGU64, LLOGU64, LUNLOGU64); - -sub round_len { - return ($_[0] + 3) & ~0x3; -} - -sub roundq_len { - return ($_[0] + 3) & ~0x7; -} - -# pack a string $_[2] -# at $offset ($_[1]) -# in $buf ($_[0]) -# padd to 32bit alignment move $_[1] forward - -sub LOGL{ - my $len = length($_[2]); - my $rlen = round_len($len); - my $padd = $rlen + $off - length($_[0]); - - if ($padd > 0) { - $_[0] .= pack "x$padd"; - } - substr $_[0], $_[1], $len, $_[2]; - $_[1] += $rlen; -} - -# pack $_[2], a u32, into $_[0] at offset $_[1] -sub LOGU32 { - if ($_[1] != round_len($_[1])) { - confess "packing I on non-word boundary"; - } - my $padd = 4 + $off - length($_[0]); - - if ($padd > 0) { - $_[0] .= pack "L", $_[2]; - } else { - substr $_[0], $_[1], $len, pack "L", $_[2]; - } - $_[1] += 4; -} - -# pack $_[2], a u32, into $_[0] at offset $_[1] -# use little endian -sub LLOGU32 { - if ($_[1] != round_len($_[1])) { - confess "packing V on non-word boundary"; - } - my $padd = 4 + $off - length($_[0]); - - if ($padd > 0) { - $_[0] .= pack "V", $_[2]; - } else { - substr $_[0], $_[1], $len, pack "V", $_[2]; - } - $_[1] += 4; -} - -sub LLOGU64 { - if ($_[1] != roundq_len($_[1])) { - confess "packing Q on non-word boundary"; - } - my $padd = 8 + $off - length($_[0]); - - if ($padd > 0) { - $_[0] .= pack "VV", $_[3], $_[2]; - } else { - substr $_[0], $_[1], $len, pack "VV", $_[3], $_[2]; - } - $_[1] += 8; -} - -sub LLOGU64 { - if ($_[1] != roundq_len($_[1])) { - confess "packing Q on non-word boundary"; - } - my $padd = 8 + $off - length($_[0]); - - if ($padd > 0) { - $_[0] .= pack "LL", $_[3], $_[2]; - } else { - substr $_[0], $_[1], $len, pack "LL", $_[3], $_[2]; - } - $_[1] += 8; -} - -sub UNLOGL { - if (length($_[0]) < $_[1] + round_len($_[2]) ) { - confess "unpacking buf beyond string length"; - } - - $_[3] = unpack "x$_[1]a$_[2]", $_[0]; - $_[1] += round_len($_[2]); - return $_[3]; -} - -sub UNLOGU32 { - if (length($_[0]) < $_[1] + 4) { - confess "unpacking u32 beyond string length"; - } - - $_[2] = unpack "x$_[1]L", $_[0]; - $_[1] += 4; - return $_[2]; -} - -sub LUNLOGU32 { - if (length($_[0]) < $_[1] + 4) { - confess "lunpacking u32 beyond string length"; - } - $_[2] = unpack "x$_[1]V", $_[0]; - $_[1] += 4; - return $_[2]; -} - -sub UNLOGU64 { - if (length($_[0]) < $_[1] + 8) { - confess "unpacking u64 beyond string length"; - } - - ($_[3], $_[2]) = unpack "x$_[1]LL", $_[0]; - $_[1] += 8; - return ($_[2], $_[3]); -} - -sub LUNLOGU64 { - if (length($_[0]) < $_[1] + 8) { - confess "lunpacking u64 beyond string length"; - } - - ($_[3], $_[2]) = unpack "x$_[1]VV", $_[0]; - $_[1] += 8; - return ($_[2], $_[3]); -} - -sub test { - $buf = ""; - $off = 0; - - LOGL($buf, $off, "moose"); - print "off $off\n"; - printf "len %d\n", length($buf); - LLOGU64($buf, $off, 0x01020304, 0x05060708); - print "off $off\n"; - printf "len %d\n", length($buf); - LLOGU32($buf, $off, 0x01020304); - print "off $off\n"; - printf "len %d\n", length($buf); - $off = 0; - UNLOGL($buf, $off, length("moose"), $str); - print "off $off $str\n"; - LUNLOGU64($buf, $off, $high, $low); - printf "off $off high %x low %x\n", $high, $low; - LUNLOGU32($buf, $off, $low); - printf "off $off long %x\n", $low; - - $off = 0; - $str = UNLOGL($buf, $off, length("moose")); - print "assigned off $off $str\n"; - ($high, $low) = LUNLOGU64($buf, $off); - printf "assigned off $off high %x low %x\n", $high, $low; - $low = LUNLOGU32($buf, $off, $low); - printf "assigned off $off long %x\n", $low; - - sysopen F, "/tmp/out", 2; - syswrite F, $buf, length($buf); -} - -# test(); -- 1.8.3.1