diff --git a/.cvsignore b/.cvsignore index d195495..0d2669e 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -frysk-0.0.1.2007.10.17.tar.bz2 +frysk-0.0.1.2008.01.18.rh1.tar.bz2 diff --git a/frysk-0.0.1.2008.01.18.rh1-line-npe.patch b/frysk-0.0.1.2008.01.18.rh1-line-npe.patch new file mode 100644 index 0000000..cc70b3b --- /dev/null +++ b/frysk-0.0.1.2008.01.18.rh1-line-npe.patch @@ -0,0 +1,139 @@ +--- frysk-0.0.1.2008.01.18.rh1/frysk-gui/frysk/gui/srcwin/SourceWindow.java.line-npe 2008-01-18 11:44:37.000000000 -0500 ++++ frysk-0.0.1.2008.01.18.rh1/frysk-gui/frysk/gui/srcwin/SourceWindow.java 2008-01-18 11:56:55.000000000 -0500 +@@ -2254,7 +2254,7 @@ + DOMSource source = null; + LineXXX line = sf.getLineXXX(); + +- if (line != SourceLocation.UNKNOWN) { ++ if (sf.getLine() != SourceLocation.UNKNOWN) { + if (line.getDOMFunction() == null) + noDOMFunction = true; + source = line.getDOMSource(); +@@ -2267,9 +2267,9 @@ + } + } + +- if (line == SourceLocation.UNKNOWN) ++ if (sf.getLine() == SourceLocation.UNKNOWN) + setSourceLabel("Unknown File for: ", task_name, proc_id, task_id, noDOMFunction, source); +- else if (source == null && line != SourceLocation.UNKNOWN) ++ else if (source == null && sf.getLine() != SourceLocation.UNKNOWN) + setSourceLabel(sf.getLine().getFile().getPath() + " for: ", + task_name, proc_id, task_id, noDOMFunction, source); + else +@@ -2306,7 +2306,7 @@ + + updateSourceLabel(selected); + +- if (line != SourceLocation.UNKNOWN) { ++ if (selected.getLine() != SourceLocation.UNKNOWN) { + source = line.getDOMSource(); + if (source == null) + try { +@@ -2318,7 +2318,7 @@ + } + } + +- if (line == SourceLocation.UNKNOWN) { ++ if (selected.getLine() == SourceLocation.UNKNOWN) { + SourceBuffer b = null; + + if (mode == 2) +--- frysk-0.0.1.2008.01.18.rh1/frysk-core/frysk/rt/LineXXX.java.line-npe 2008-01-18 11:47:02.000000000 -0500 ++++ frysk-0.0.1.2008.01.18.rh1/frysk-core/frysk/rt/LineXXX.java 2008-01-18 11:53:01.000000000 -0500 +@@ -1,6 +1,6 @@ + // This file is part of the program FRYSK. + // +-// Copyright 2007, Red Hat Inc. ++// Copyright 2007, 2008, Red Hat Inc. + // + // FRYSK is free software; you can redistribute it and/or modify it + // under the terms of the GNU General Public License as published by +@@ -40,7 +40,7 @@ + package frysk.rt; + + import java.io.IOException; +- ++import java.io.File; + import frysk.dom.DOMFactory; + import frysk.dom.DOMFrysk; + import frysk.dom.DOMFunction; +@@ -49,17 +49,36 @@ + import frysk.proc.Proc; + import frysk.scopes.SourceLocation; + +-public class LineXXX extends SourceLocation{ +- +- ++public class LineXXX { ++ private final SourceLocation sourceLocation; + private final Proc proc; +- + private DOMSource source; +- + private DOMFunction function; ++ private final File file; ++ private final int line; ++ private final int column; ++ ++ public File getFile () { ++ return file; ++ } ++ ++ public int getLine () { ++ return line; ++ } ++ ++ public int getColumn () { ++ return column; ++ } ++ ++ public SourceLocation getSourceLocation() { ++ return sourceLocation; ++ } + + public LineXXX(SourceLocation sourceLocation, Proc proc) { +- super(sourceLocation.getFile(), sourceLocation.getLine(), sourceLocation.getColumn()); ++ this.sourceLocation = sourceLocation; ++ this.file = sourceLocation.getFile(); ++ this.line = sourceLocation.getLine(); ++ this.column = sourceLocation.getColumn(); + this.proc = proc; + } + +@@ -88,7 +107,7 @@ + // source has not been parsed, go put it in the DOM and + // parse it + try { +- this.source = image.addSource(this.proc, this, ++ this.source = image.addSource(this.proc, this.sourceLocation, + DOMFactory.getDOM(this.proc)); + } catch (IOException ioe) { + System.err.println(ioe.getMessage()); +--- frysk-0.0.1.2008.01.18.rh1/frysk-core/frysk/debuginfo/DebugInfoFrame.java.line-npe 2008-01-18 11:42:06.000000000 -0500 ++++ frysk-0.0.1.2008.01.18.rh1/frysk-core/frysk/debuginfo/DebugInfoFrame.java 2008-01-18 11:43:16.000000000 -0500 +@@ -1,6 +1,6 @@ + // This file is part of the program FRYSK. + // +-// Copyright 2007, Red Hat Inc. ++// Copyright 2007, 2008, Red Hat Inc. + // + // FRYSK is free software; you can redistribute it and/or modify it + // under the terms of the GNU General Public License as published by +@@ -208,12 +208,13 @@ + * @return + */ + public LineXXX getLineXXX(){ +- if(this.lineXXX == null){ ++ if (this.getLine() == SourceLocation.UNKNOWN) ++ return null; ++ if (this.lineXXX == null) + this.lineXXX = new LineXXX(this.getLine(), this.getTask().getProc()); +- } + return lineXXX; + } +- LineXXX lineXXX; ++ private LineXXX lineXXX; + + public void toPrint(PrintWriter writer, boolean printParameters, + boolean fullpath){ diff --git a/frysk-0.0.1.2008.01.18.rh1-no-sysroot.patch b/frysk-0.0.1.2008.01.18.rh1-no-sysroot.patch new file mode 100644 index 0000000..3d29856 --- /dev/null +++ b/frysk-0.0.1.2008.01.18.rh1-no-sysroot.patch @@ -0,0 +1,53 @@ +--- frysk-0.0.1.2008.01.18.rh1/frysk-core/Makefile.am.no-sysroot 2008-01-18 06:41:07.000000000 -0500 ++++ frysk-0.0.1.2008.01.18.rh1/frysk-core/Makefile.am 2008-01-18 06:42:04.000000000 -0500 +@@ -110,28 +110,28 @@ + frysk/pkglibdir/funit-symbols-stripped: frysk/pkglibdir/funit-symbols + strip -o $@ frysk/pkglibdir/funit-symbols + +-nobase_pkgdata_DATA = frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses) +-frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses): frysk/pkglibdir/funit-addresses +- mkdir -p $(abspath frysk/pkgdatadir/test-sysroot)/$(abspath frysk/pkglibdir) +- cp -r $< $@ +- +-nobase_pkgdata_DATA += frysk/pkgdatadir/test-sysroot/$(abspath $(srcdir)/frysk/pkglibdir/funit-addresses.c) +-frysk/pkgdatadir/test-sysroot/$(abspath $(srcdir)/frysk/pkglibdir/funit-addresses.c): \ +-frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses) +- mkdir -p $(abspath frysk/pkgdatadir/test-sysroot)/$(abspath $(srcdir)/frysk/pkglibdir) +- cp $(abspath $(srcdir)/frysk/pkglibdir/funit-addresses.c) $@ +- +-nobase_pkgdata_DATA += frysk/pkgdatadir/test-sysroot/usr/lib/debug/$(abspath frysk/pkglibdir/funit-addresses.debug) +-frysk/pkgdatadir/test-sysroot/usr/lib/debug/$(abspath frysk/pkglibdir/funit-addresses.debug): frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses) +- mkdir -p $(abspath frysk/pkgdatadir/test-sysroot/usr/lib/debug/)/$(abspath frysk/pkglibdir) +- eu-strip --remove-comment -f $@ $< +- +-install-data-hook: +- mv $(datarootdir)/frysk/frysk/pkgdatadir/test-sysroot $(datarootdir)/frysk +- rmdir $(datarootdir)/frysk/frysk/pkgdatadir +- rmdir $(datarootdir)/frysk/frysk +-# we don't want this installed, but noinst_SCRIPTS has no effect +- rm $(libdir)/frysk/gen-type-funit-tests ++# nobase_pkgdata_DATA = frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses) ++# frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses): frysk/pkglibdir/funit-addresses ++# mkdir -p $(abspath frysk/pkgdatadir/test-sysroot)/$(abspath frysk/pkglibdir) ++# cp -r $< $@ ++ ++# nobase_pkgdata_DATA += frysk/pkgdatadir/test-sysroot/$(abspath $(srcdir)/frysk/pkglibdir/funit-addresses.c) ++# frysk/pkgdatadir/test-sysroot/$(abspath $(srcdir)/frysk/pkglibdir/funit-addresses.c): \ ++# frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses) ++# mkdir -p $(abspath frysk/pkgdatadir/test-sysroot)/$(abspath $(srcdir)/frysk/pkglibdir) ++# cp $(abspath $(srcdir)/frysk/pkglibdir/funit-addresses.c) $@ ++ ++# nobase_pkgdata_DATA += frysk/pkgdatadir/test-sysroot/usr/lib/debug/$(abspath frysk/pkglibdir/funit-addresses.debug) ++# frysk/pkgdatadir/test-sysroot/usr/lib/debug/$(abspath frysk/pkglibdir/funit-addresses.debug): frysk/pkgdatadir/test-sysroot/$(abspath frysk/pkglibdir/funit-addresses) ++# mkdir -p $(abspath frysk/pkgdatadir/test-sysroot/usr/lib/debug/)/$(abspath frysk/pkglibdir) ++# eu-strip --remove-comment -f $@ $< ++ ++# install-data-hook: ++# mv $(datarootdir)/frysk/frysk/pkgdatadir/test-sysroot $(datarootdir)/frysk ++# rmdir $(datarootdir)/frysk/frysk/pkgdatadir ++# rmdir $(datarootdir)/frysk/frysk ++# # we don't want this installed, but noinst_SCRIPTS has no effect ++# rm $(libdir)/frysk/gen-type-funit-tests + + if DO_ARCH32_TEST + pkglib32_PROGRAMS += frysk/pkglibdir/arch32/funit-symbols-nodebug diff --git a/frysk.spec b/frysk.spec index 5250476..6e4c347 100644 --- a/frysk.spec +++ b/frysk.spec @@ -1,6 +1,6 @@ Summary: Frysk execution analysis and debugging tools Name: frysk -Version: 0.0.1.2007.10.17 +Version: 0.0.1.2008.01.18.rh1 Release: 1%{?dist} # antlrv2 is Public Domain; antlrv3 is BSD. # cdtparser is EPL @@ -21,16 +21,16 @@ URL: http://sourceware.org/frysk # tar cf - frysk-`cat frysk/common/version.in` | bzip2 -9 > frysk-`cat frysk/common/version.in`.tar.bz2 Source: %{name}-%{version}.tar.bz2 -%define run_make_check 0 +Patch4: frysk-0.0.1.2008.01.18.rh1-no-sysroot.patch +Patch5: frysk-0.0.1.2008.01.18.rh1-line-npe.patch BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) -Requires: glib-java >= 0.2.6 - -BuildRequires: gcc-java >= 4.1.1 +BuildRequires: gcc-java >= 4.1.2 BuildRequires: junit >= 3.8.1 BuildRequires: antlr >= 2.7.4 BuildRequires: jdom >= 1.0 +BuildRequires: glib-java >= 0.2.6 BuildRequires: libgtk-java-devel >= 2.8.4 BuildRequires: libglade-java-devel >= 2.12.3 BuildRequires: cairo-java-devel >= 1.0.3 @@ -46,21 +46,12 @@ BuildRequires: transfig >= 3.2.0 BuildRequires: gnome-python2-gconf BuildRequires: audit-libs-devel BuildRequires: autoconf automake libtool +# Some generation scripts are being written in python +BuildRequires: python -%ifarch x86_64 ppc64 -# Ensure glibc{,-devel} is installed for both multilib arches -BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so -%endif - -# Fedora Core >= 6 and RHEL: -%if "%{?fedora}" != "5" -BuildRequires: dogtail >= 0.5.2 -# Needed by "dogtail-run-headless -n": -Buildrequires: metacity -%endif - -# Build problems with libunwind; bug 305611. -ExcludeArch: ppc ppc64 +# Bug #305611: PPC Build problems with libunwind +# Bug #416961: ALPHA not supported by frysk and libunwind. +ExcludeArch: ppc alpha # We do not want to build a ``cross-debugging version'' i686->i386; # libunwind build would get confused by this. Override the cmd-line @@ -82,10 +73,21 @@ system. Summary: The development part of Frysk Group: Development/System Requires: %{name} = %{version}-%{release} +Requires: dogtail >= 0.5.2 +# Needed by "dogtail-run-headless -n": +Requires: metacity +Requires: python %description devel Frysk is an execution-analysis technology implemented using native -Java and C++. This package contains the development part of Frysk. +Java and C++. It is aimed at providing developers and sysadmins with +the ability to both examine and analyze running multi-host, +multi-process, multi-threaded systems. Frysk allows the monitoring of +running processes and threads, of locking primitives and will also +expose deadlocks, gather data and debug any given process in the +system. + +This package contains the development components of Frysk. %package gnome Summary: The GNOME front-end of Frysk @@ -104,26 +106,18 @@ running processes and threads, of locking primitives and will also expose deadlocks, gather data and debug any given process in the system. -This package contains the GUI front end for Frysk. +This package contains the GNOME front end for Frysk. %prep + %setup -q -n %{name}-%{version} +pwd +%patch4 -p1 -b .no-sysroot +%patch5 -p1 -b .line-npe ./bootstrap.sh %build -# Why, oh why, are we overridingthe configure checks overridden? -export JAVAC=${JAVAC:-/usr/bin/gcj -C} -export GCJ=${GCJ:-/usr/bin/gcj} -export GIJ=${GIJ:-/usr/bin/gij} -export JAR=${JAR:-/usr/bin/fastjar} -export GCJH=${GCJH:-/usr/bin/gcjh} -export GCJ_DBTOOL=${GCJ_DBTOOL:-/usr/bin/gcj-dbtool} -export GCC=${GCC:-/usr/bin/gcc} -export CC=${CC:-/usr/bin/gcc} -export CXX=${CXX:-/usr/bin/g++} -export JAVA=${JAVA:-/usr/bin/gij} - uname -a gcc --version pwd @@ -140,16 +134,10 @@ chmod a+x configure RPM_OPT_FLAGS=${RPM_OPT_FLAGS/-Wp,-D_FORTIFY_SOURCE=2 /} %configure CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" \ --disable-arch32-tests - # in frysk-sys; make is building .o files before all BUILT_FILES are # created. make # %{?_smp_mflags} -%if %{run_make_check} -%check -make %{?_smp_mflags} -k check || : -%endif - %install rm -rf %{buildroot} @@ -163,7 +151,7 @@ make DESTDIR=$RPM_BUILD_ROOT install %{?_smp_mflags} # Fix timestamp of a generated script: touch -r \ - ../frysk-gui/frysk/gui/FryskGui.javain \ + ../frysk-gui/frysk/gui/FryskGui.java-in \ $RPM_BUILD_ROOT%{_datadir}/%{name}/dogtail_scripts/frysk_suite.py # ...and a few other ones: for f in test2866.py test2985.py test3380.py; do @@ -175,6 +163,11 @@ done # Workaround for #211824: rm $RPM_BUILD_ROOT%{_datadir}/java/*.jar +# some stray files. +rm $RPM_BUILD_ROOT%{_libdir}/%{name}/gen-type-funit-tests +rm $RPM_BUILD_ROOT%{_datadir}/%{name}/ChangeLog +rm $RPM_BUILD_ROOT%{_datadir}/%{name}/test-exe-x86.c.source + # We are not yet ready to be in the menu: echo "Hidden=true" >> $RPM_BUILD_ROOT%{_datadir}/applications/frysk.desktop @@ -188,31 +181,35 @@ rm -rf %{buildroot} %defattr(-,root,root) -%doc COPYING frysk-imports/common/EXCEPTION +%doc frysk-common/COPYING frysk-common/EXCEPTION +%{_bindir}/fauxv %{_bindir}/fcatch %{_bindir}/fcore %{_bindir}/fdebuginfo %{_bindir}/fdebugrpm %{_bindir}/fexe %{_bindir}/fhpd -%{_bindir}/fltrace -%{_bindir}/fparser +%{_bindir}/fmaps %{_bindir}/fstack %{_bindir}/fstep %{_bindir}/ftrace +%{_bindir}/fparser %{_libdir}/libfrysk-antlr.so %{_libdir}/libfrysk-cdtparser.so %{_libdir}/libfrysk-core.so %{_libdir}/libfrysk-getopt.so +%{_libdir}/libfrysk-sys.so %{_libdir}/libfrysk-jdom.so %{_libdir}/libfrysk-jline.so -%{_libdir}/libfrysk-sys.so %dir %{_datadir}/%{name} %{_datadir}/%{name}/messages.properties - +%{_datadir}/%{name}/test-core-x86 +%{_datadir}/%{name}/test-core-x8664 +%{_datadir}/%{name}/test-exe-x86 +%{_datadir}/%{name}/libtest.so %{_mandir}/man1/* %files devel @@ -222,22 +219,16 @@ rm -rf %{buildroot} %{_libdir}/libfrysk-junit.so %dir %{_libdir}/%{name} -%{_libdir}/%{name}/fsystest -%{_libdir}/%{name}/ftail -%{_libdir}/%{name}/funit* %{_libdir}/%{name}/hpd-c -%{_libdir}/%{name}/sys-tests %{_libdir}/%{name}/test1 %{_libdir}/%{name}/test_main_looper - -%{_datadir}/%{name}/ChangeLog -%{_datadir}/%{name}/dogtail_scripts +%{_libdir}/%{name}/funit* +%{_libdir}/%{name}/ftail +%{_libdir}/%{name}/fsystest +%{_libdir}/%{name}/sys-tests %{_datadir}/%{name}/helloworld.o -%{_datadir}/%{name}/libtest.so -%{_datadir}/%{name}/test-core-* -%{_datadir}/%{name}/test-exe-* %{_datadir}/%{name}/test_looper.xml - +%{_datadir}/%{name}/dogtail_scripts %{_mandir}/man8/* %files gnome @@ -256,12 +247,24 @@ rm -rf %{buildroot} %{_datadir}/%{name}/images %{_datadir}/applications/frysk.desktop +%{_datadir}/pixmaps/fryskTrayIcon48.png %dir %{_datadir}/gnome/help/%{name} %{_datadir}/gnome/help/%{name}/* -%{_datadir}/pixmaps/fryskTrayIcon48.png %changelog +* Mon Jan 20 2008 Andrew Cagney - 0.0.1.2008.01.18.rh1-1 +- Import frysk-0.0.1.2008.01.18.rh1 (4cff0daa2996b28274985fa4674160f15e5fd9e2) +- Delete run_make_check code. +- Add patch4, frysk-0.0.1.2008.01.18.rh1-no-sysroot.patch to not build + sysroot tests. +- Add patch5, frysk-0.0.1.2008.01.18.rh1-line-npe.patch to prevent NPE + in source window. +- Enable ppc64 build; disable alpha build (bug 416961). +- Move dogtail testing requirements to devel package. +- Delete stray ChangeLog, gen-type-funit-tests, and + test-exe-x86.c.source files. + * Wed Oct 17 2007 Andrew Cagney - 0.0.1.2007.10.17-1 - Import frysk-0.0.1.2007.10.17. - Remove hack disabling glade check. diff --git a/sources b/sources index e0a6601..0356fe5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3bd567c6a8abc3533f8ac41b30d79e71 frysk-0.0.1.2007.10.17.tar.bz2 +b6612276b45f1b291901dce0dc65dbf2 frysk-0.0.1.2008.01.18.rh1.tar.bz2