[csw-devel] SF.net SVN: gar:[4994] csw/mgar/pkg/iperf/trunk
skayser at users.sourceforge.net
skayser at users.sourceforge.net
Thu May 21 17:14:27 CEST 2009
Revision: 4994
http://gar.svn.sourceforge.net/gar/?rev=4994&view=rev
Author: skayser
Date: 2009-05-21 15:14:27 +0000 (Thu, 21 May 2009)
Log Message:
-----------
iperf: created GAR build description
Added Paths:
-----------
csw/mgar/pkg/iperf/trunk/Makefile
csw/mgar/pkg/iperf/trunk/checksums
csw/mgar/pkg/iperf/trunk/files/
csw/mgar/pkg/iperf/trunk/files/gar-base.diff
Removed Paths:
-------------
csw/mgar/pkg/iperf/trunk/legacy/
Property Changed:
----------------
csw/mgar/pkg/iperf/trunk/
Property changes on: csw/mgar/pkg/iperf/trunk
___________________________________________________________________
Added: svn:ignore
+ cookies
download
work
Added: svn:externals
+ gar https://gar.svn.sourceforge.net/svnroot/gar/csw/mgar/gar/v2
Added: csw/mgar/pkg/iperf/trunk/Makefile
===================================================================
--- csw/mgar/pkg/iperf/trunk/Makefile (rev 0)
+++ csw/mgar/pkg/iperf/trunk/Makefile 2009-05-21 15:14:27 UTC (rev 4994)
@@ -0,0 +1,71 @@
+# Todo:
+#
+# * Check sf project page for patches and threads related to CPU saturation
+# * Run some real world performance tests
+# * Submit feedback upstream:
+# - Add AC_CHECK_FUNC or AC_SEARCH_LIBS for sched_yield() so that we get -lrt
+# - Use PTHREAD_{LIBS,CFLAGS} to amend CFLAGS so that we get -lpthreads
+# - Submit language linkage declarations patch for review
+# * Add changelog.CSW
+#
+GARNAME = iperf
+GARVERSION = 2.0.4
+CATEGORIES = net
+
+DESCRIPTION = Internet Protocol bandwidth measuring tool
+define BLURB
+ Iperf was developed by NLANR/DAST as a modern alternative for measuring
+ maximum TCP and UDP bandwidth performance. Iperf allows the tuning of
+ various parameters and UDP characteristics. Iperf reports bandwidth,
+ delay jitter, datagram loss.
+endef
+
+MASTER_SITES = $(SF_MIRRORS)
+DISTFILES = $(GARNAME)-$(GARVERSION).tar.gz
+
+# Add some explicit language linkage declarations.
+#
+# See C++ Migration Guide, 3.11.1 "Language Linkage"
+# http://dlc.sun.com/pdf/819-3689-10/819-3689-10.pdf
+#
+# "In compatibility mode, the compiler implements the ARM rule that the
+# language linkage is not part of the function type. In particular, you can
+# declare a pointer to a function without regard to the linkage of the pointer
+# or a function assigned to it.
+# In standard mode, the compiler implements the new rule that the language
+# linkage is part of its type, and is part of the type of a pointer to
+# function. The linkages must therefore match."
+PATCHFILES = gar-base.diff
+
+# We define upstream file regex so we can be notifed of new upstream software release
+UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=128336
+UPSTREAM_USE_SF = 1
+UFILES_REGEX = $(GARNAME)-(\d+(?:\.\d+)*).tar.gz
+
+TEST_SCRIPTS =
+
+CONFIGURE_ARGS = $(DIRPATHS)
+
+# Tell CC not to include additional directories in R*PATH, otherwise we end
+# up with something like
+# [11] RUNPATH /opt/csw/lib/$ISALIST:/opt/csw/lib:/opt/studio/SOS11/SUNWspro/lib/rw7:/opt/studio/SOS11/SUNWspro/lib:/opt/SUNWspro/lib:/usr/ccs/lib:/lib:/usr/lib
+# [12] RPATH /opt/csw/lib/$ISALIST:/opt/csw/lib:/opt/studio/SOS11/SUNWspro/lib/rw7:/opt/studio/SOS11/SUNWspro/lib:/opt/SUNWspro/lib:/usr/ccs/lib:/lib:/usr/lib
+EXTRA_CXX_FLAGS = -norunpath
+
+include gar/category.mk
+
+# * Get rid of gcc -Walls
+# * LIBS: Append -lrt for sched_yield()
+# * LIBS: Append -lpthread (upstream should use $PTHREAD_{LIBS,CFLAGS} instead
+pre-configure-modulated:
+ @perl -pi -e 's|-Wall||; s|\@LIBS\@|\@LIBS\@ -lrt -lpthread|' \
+ $(WORKSRC)/Makefile.in \
+ $(WORKSRC)/compat/Makefile.in \
+ $(WORKSRC)/src/Makefile.in
+ @$(MAKECOOKIE)
+
+post-install-modulated: DOCDEST = $(DESTDIR)$(docdir)/$(GARNAME)
+post-install-modulated:
+ @ginstall -d $(DOCDEST)
+ @(cd $(WORKSRC) && cp Changelog AUTHORS $(DOCDEST))
+ @$(MAKECOOKIE)
Added: csw/mgar/pkg/iperf/trunk/checksums
===================================================================
--- csw/mgar/pkg/iperf/trunk/checksums (rev 0)
+++ csw/mgar/pkg/iperf/trunk/checksums 2009-05-21 15:14:27 UTC (rev 4994)
@@ -0,0 +1,2 @@
+3bb101038d372642f1fa7e83c7c93e46 download/gar-base.diff
+8c5bc14cc2ea55f18f22afe3c23e3dcb download/iperf-2.0.4.tar.gz
Added: csw/mgar/pkg/iperf/trunk/files/gar-base.diff
===================================================================
--- csw/mgar/pkg/iperf/trunk/files/gar-base.diff (rev 0)
+++ csw/mgar/pkg/iperf/trunk/files/gar-base.diff 2009-05-21 15:14:27 UTC (rev 4994)
@@ -0,0 +1,48 @@
+diff --speed-large-files --minimal -Nru iperf-2.0.4.orig/include/PerfSocket.hpp iperf-2.0.4/include/PerfSocket.hpp
+--- iperf-2.0.4.orig/include/PerfSocket.hpp 2007-08-30 00:06:19.000000000 +0200
++++ iperf-2.0.4/include/PerfSocket.hpp 2009-05-21 16:04:35.263120435 +0200
+@@ -61,12 +61,11 @@
+
+ void SetSocketOptions( thread_Settings *inSettings );
+
+- // handle interupts
+- void Sig_Interupt( int inSigno );
+-
+ #ifdef __cplusplus
+ extern "C" {
+ #endif
++ // handle interupts
++ void Sig_Interupt( int inSigno );
+ extern int sInterupted;
+ extern int groupID;
+ extern Mutex groupCond;
+diff --speed-large-files --minimal -Nru iperf-2.0.4.orig/src/main.cpp iperf-2.0.4/src/main.cpp
+--- iperf-2.0.4.orig/src/main.cpp 2008-04-08 04:37:54.000000000 +0200
++++ iperf-2.0.4/src/main.cpp 2009-05-21 16:04:03.840031595 +0200
+@@ -79,7 +79,7 @@
+ * prototypes
+ * ------------------------------------------------------------------- */
+ // Function called at exit to clean up as much as possible
+-void cleanup( void );
++extern "C" void cleanup( void );
+
+ /* -------------------------------------------------------------------
+ * global variables
+@@ -247,7 +247,7 @@
+ * respond appropriately.. [static]
+ * ------------------------------------------------------------------- */
+
+-void Sig_Interupt( int inSigno ) {
++extern "C" void Sig_Interupt( int inSigno ) {
+ #ifdef HAVE_THREAD
+ // We try to not allow a single interrupt handled by multiple threads
+ // to completely kill the app so we save off the first thread ID
+@@ -276,7 +276,7 @@
+ * either by exit() or terminating main().
+ * ------------------------------------------------------------------- */
+
+-void cleanup( void ) {
++extern "C" void cleanup( void ) {
+ #ifdef WIN32
+ // Shutdown Winsock
+ WSACleanup();
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the devel
mailing list