mbox

New package iperf3

Message ID 1459353592-23394-1-git-send-email-jonatan.schlag@ipfire.org
State Superseded
Headers

Message

Jonatan Schlag March 31, 2016, 2:59 a.m. UTC
  Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
---
 config/rootfiles/packages/iperf3 |  9 +++++
 lfs/iperf3                       | 83 ++++++++++++++++++++++++++++++++++++++++
 make.sh                          |  1 +
 3 files changed, 93 insertions(+)
 create mode 100644 config/rootfiles/packages/iperf3
 create mode 100644 lfs/iperf3
  

Comments

Michael Tremer March 31, 2016, 11:42 p.m. UTC | #1
Hi,

this still fails with the same error:

gcc -DHAVE_CONFIG_H -I.    -pg -g -O2 -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fPIC -fstack-protector-strong --param=ssp-buffer-size=4 -march=i586 -mtune=generic -fomit-frame-pointer -Wall -MT iperf3_profile-iperf_client_api.o -MD -MP -MF .deps/iperf3_profile-iperf_client_api.Tpo -c -o iperf3_profile-iperf_client_api.o `test -f 'iperf_client_api.c' || echo './'`iperf_client_api.c
gcc: error: -pg and -fomit-frame-pointer are incompatible

I am building for i586 here.

-Michael

On Wed, 2016-03-30 at 17:59 +0200, Jonatan Schlag wrote:
> Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
> ---
>  config/rootfiles/packages/iperf3 |  9 +++++
>  lfs/iperf3                       | 83
> ++++++++++++++++++++++++++++++++++++++++
>  make.sh                          |  1 +
>  3 files changed, 93 insertions(+)
>  create mode 100644 config/rootfiles/packages/iperf3
>  create mode 100644 lfs/iperf3
> 
> diff --git a/config/rootfiles/packages/iperf3
> b/config/rootfiles/packages/iperf3
> new file mode 100644
> index 0000000..7057f11
> --- /dev/null
> +++ b/config/rootfiles/packages/iperf3
> @@ -0,0 +1,9 @@
> +usr/bin/iperf3
> +#usr/include/iperf_api.h
> +#usr/lib/libiperf.a
> +#usr/lib/libiperf.la
> +#usr/lib/libiperf.so
> +usr/lib/libiperf.so.0
> +usr/lib/libiperf.so.0.0.0
> +#usr/share/man/man1/iperf3.1
> +#usr/share/man/man3/libiperf.3
> diff --git a/lfs/iperf3 b/lfs/iperf3
> new file mode 100644
> index 0000000..44f9f00
> --- /dev/null
> +++ b/lfs/iperf3
> @@ -0,0 +1,83 @@
> +####################################################################
> ###########
> +#                                                                   
>           #
> +# IPFire.org - A linux based
> firewall                                         #
> +# Copyright (C) 2007-2016  IPFire Team  <info@ipfire.org>           
>           #
> +#                                                                   
>           #
> +# This program is free software: you can redistribute it and/or
> modify        #
> +# it under the terms of the GNU General Public License as published
> by        #
> +# the Free Software Foundation, either version 3 of the License,
> or           #
> +# (at your option) any later
> version.                                         #
> +#                                                                   
>           #
> +# This program is distributed in the hope that it will be
> useful,             #
> +# but WITHOUT ANY WARRANTY; without even the implied warranty
> of              #
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
> the               #
> +# GNU General Public License for more
> details.                                #
> +#                                                                   
>           #
> +# You should have received a copy of the GNU General Public
> License           #
> +# along with this program.  If not, see <http://www.gnu.org/licenses
> />.       #
> +#                                                                   
>           #
> +####################################################################
> ###########
> +
> +####################################################################
> ###########
> +# Definitions
> +####################################################################
> ###########
> +
> +include Config
> +
> +VER        = 3.1.2
> +
> +THISAPP    = iperf-$(VER)
> +DL_FILE    = $(THISAPP).tar.gz
> +DL_FROM    = $(URL_IPFIRE)
> +DIR_APP    = $(DIR_SRC)/$(THISAPP)
> +TARGET     = $(DIR_INFO)/$(THISAPP)
> +PROG       = iperf3
> +PAK_VER    = 1
> +
> +DEPS       = ""
> +
> +####################################################################
> ###########
> +# Top-level Rules
> +####################################################################
> ###########
> +
> +objects = $(DL_FILE)
> +
> +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> +
> +$(DL_FILE)_MD5 = f48a1b45c68647a9d8a8491af44470d6
> +
> +install : $(TARGET)
> +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> +
> +download :$(patsubst %,$(DIR_DL)/%,$(objects))
> +
> +md5 : $(subst %,%_MD5,$(objects))
> +
> +dist:.
> +	$(PAK)
> +
> +####################################################################
> ###########
> +# Downloading, checking, md5sum
> +####################################################################
> ###########
> +
> +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> +	@$(CHECK)
> +
> +$(patsubst %,$(DIR_DL)/%,$(objects)) :
> +	@$(LOAD)
> +
> +$(subst %,%_MD5,$(objects)) :
> +	@$(MD5)
> +
> +####################################################################
> ###########
> +# Installation Details
> +####################################################################
> ###########
> +
> +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> +	@$(PREBUILD)
> +	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf
> $(DIR_DL)/$(DL_FILE)
> +	cd $(DIR_APP) && ./configure --prefix=/usr
> +	cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
> +	cd $(DIR_APP) && make install
> +	@rm -rf $(DIR_APP)
> +	@$(POSTBUILD)
> diff --git a/make.sh b/make.sh
> index da4bf16..d471db9 100755
> --- a/make.sh
> +++ b/make.sh
> @@ -744,6 +744,7 @@ buildipfire() {
>    ipfiremake gutenprint
>    ipfiremake apcupsd
>    ipfiremake iperf
> +  ipfiremake iperf3
>    ipfiremake netcat
>    ipfiremake 7zip
>    ipfiremake lynis
  
Michael Tremer April 1, 2016, 12:18 a.m. UTC | #2
Hi,

we use -fomit-frame-pointer only for i586 and ARM. Duh.

http://git.ipfire.org/?p=ipfire-2.x.git;a=blob;f=tools/make-functions;h=a42e3fa0e5a28a934bf235dbcc4f079bc589098b;hb=HEAD#l63

You can strip -pg from the Makefile for all arches though, because that
will generate faster code.

Best,
-Michael

P.S. Don't forget to CC the list :)

On Thu, 2016-03-31 at 14:46 +0200, Jonatan Schlag wrote:
> Hi,
> this is bad.
> I build for x86_64 here. I will have a look at this and send in a new
> patch.
> 
> Regards Jonatan
> 
> Am Do, 31. Mär, 2016 um 2:42 schrieb Michael Tremer <michael.tremer@i
> pfire.org>:
> > Hi,
> > 
> > this still fails with the same error:
> > 
> > gcc -DHAVE_CONFIG_H -I.    -pg -g -O2 -pipe -Wall -Wp,-
> > D_FORTIFY_SOURCE=2 -fexceptions -fPIC -fstack-protector-strong --
> > param=ssp-buffer-size=4 -march=i586 -mtune=generic -fomit-frame-
> > pointer -Wall -MT iperf3_profile-iperf_client_api.o -MD -MP -MF
> > .deps/iperf3_profile-iperf_client_api.Tpo -c -o iperf3_profile-
> > iperf_client_api.o `test -f 'iperf_client_api.c' || echo
> > './'`iperf_client_api.c
> > gcc: error: -pg and -fomit-frame-pointer are incompatible
> > 
> > I am building for i586 here.
> > 
> > -Michael
> > 
> > On Wed, 2016-03-30 at 17:59 +0200, Jonatan Schlag wrote:
> >  Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
> >  ---
> >   config/rootfiles/packages/iperf3 |  9 +++++
> >   lfs/iperf3                       | 83
> >  ++++++++++++++++++++++++++++++++++++++++
> >   make.sh                          |  1 +
> >   3 files changed, 93 insertions(+)
> >   create mode 100644 config/rootfiles/packages/iperf3
> >   create mode 100644 lfs/iperf3
> >  
> >  diff --git a/config/rootfiles/packages/iperf3
> >  b/config/rootfiles/packages/iperf3
> >  new file mode 100644
> >  index 0000000..7057f11
> >  --- /dev/null
> >  +++ b/config/rootfiles/packages/iperf3
> >  @@ -0,0 +1,9 @@
> >  +usr/bin/iperf3
> >  +#usr/include/iperf_api.h
> >  +#usr/lib/libiperf.a
> >  +#usr/lib/libiperf.la
> >  +#usr/lib/libiperf.so
> >  +usr/lib/libiperf.so.0
> >  +usr/lib/libiperf.so.0.0.0
> >  +#usr/share/man/man1/iperf3.1
> >  +#usr/share/man/man3/libiperf.3
> >  diff --git a/lfs/iperf3 b/lfs/iperf3
> >  new file mode 100644
> >  index 0000000..44f9f00
> >  --- /dev/null
> >  +++ b/lfs/iperf3
> >  @@ -0,0 +1,83 @@
> >  +#################################################################
> > ###
> >  ###########
> >  +#                                                                
> >    
> >            #
> >  +# IPFire.org - A linux based
> >  firewall                                         #
> >  +# Copyright (C) 2007-2016  IPFire Team  <info@ipfire.org>        
> >    
> >            #
> >  +#                                                                
> >    
> >            #
> >  +# This program is free software: you can redistribute it and/or
> >  modify        #
> >  +# it under the terms of the GNU General Public License as
> > published
> >  by        #
> >  +# the Free Software Foundation, either version 3 of the License,
> >  or           #
> >  +# (at your option) any later
> >  version.                                         #
> >  +#                                                                
> >    
> >            #
> >  +# This program is distributed in the hope that it will be
> >  useful,             #
> >  +# but WITHOUT ANY WARRANTY; without even the implied warranty
> >  of              #
> >  +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
> >  the               #
> >  +# GNU General Public License for more
> >  details.                                #
> >  +#                                                                
> >    
> >            #
> >  +# You should have received a copy of the GNU General Public
> >  License           #
> >  +# along with this program.  If not, see <http://www.gnu.org/licen
> > ses
> >  />.       #
> >  +#                                                                
> >    
> >            #
> >  +#################################################################
> > ###
> >  ###########
> >  +
> >  +#################################################################
> > ###
> >  ###########
> >  +# Definitions
> >  +#################################################################
> > ###
> >  ###########
> >  +
> >  +include Config
> >  +
> >  +VER        = 3.1.2
> >  +
> >  +THISAPP    = iperf-$(VER)
> >  +DL_FILE    = $(THISAPP).tar.gz
> >  +DL_FROM    = $(URL_IPFIRE)
> >  +DIR_APP    = $(DIR_SRC)/$(THISAPP)
> >  +TARGET     = $(DIR_INFO)/$(THISAPP)
> >  +PROG       = iperf3
> >  +PAK_VER    = 1
> >  +
> >  +DEPS       = ""
> >  +
> >  +#################################################################
> > ###
> >  ###########
> >  +# Top-level Rules
> >  +#################################################################
> > ###
> >  ###########
> >  +
> >  +objects = $(DL_FILE)
> >  +
> >  +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
> >  +
> >  +$(DL_FILE)_MD5 = f48a1b45c68647a9d8a8491af44470d6
> >  +
> >  +install : $(TARGET)
> >  +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
> >  +
> >  +download :$(patsubst %,$(DIR_DL)/%,$(objects))
> >  +
> >  +md5 : $(subst %,%_MD5,$(objects))
> >  +
> >  +dist:.
> >  +	$(PAK)
> >  +
> >  +#################################################################
> > ###
> >  ###########
> >  +# Downloading, checking, md5sum
> >  +#################################################################
> > ###
> >  ###########
> >  +
> >  +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
> >  +	@$(CHECK)
> >  +
> >  +$(patsubst %,$(DIR_DL)/%,$(objects)) :
> >  +	@$(LOAD)
> >  +
> >  +$(subst %,%_MD5,$(objects)) :
> >  +	@$(MD5)
> >  +
> >  +#################################################################
> > ###
> >  ###########
> >  +# Installation Details
> >  +#################################################################
> > ###
> >  ###########
> >  +
> >  +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
> >  +	@$(PREBUILD)
> >  +	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf
> >  $(DIR_DL)/$(DL_FILE)
> >  +	cd $(DIR_APP) && ./configure --prefix=/usr
> >  +	cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
> >  +	cd $(DIR_APP) && make install
> >  +	@rm -rf $(DIR_APP)
> >  +	@$(POSTBUILD)
> >  diff --git a/make.sh b/make.sh
> >  index da4bf16..d471db9 100755
> >  --- a/make.sh
> >  +++ b/make.sh
> >  @@ -744,6 +744,7 @@ buildipfire() {
> >     ipfiremake gutenprint
> >     ipfiremake apcupsd
> >     ipfiremake iperf
> >  +  ipfiremake iperf3
> >     ipfiremake netcat
> >     ipfiremake 7zip
> >     ipfiremake lynis
  
Jonatan Schlag April 2, 2016, 6:47 a.m. UTC | #3
Hi,
I create a new patch which builds with i586.
I simple patched the Makefile and remove the -pg flag.
Everything should be fine now.

Regards Jonatan

Am Do, 31. Mär, 2016 um 3:18 schrieb Michael Tremer 
<michael.tremer@ipfire.org>:
> Hi,
> 
> we use -fomit-frame-pointer only for i586 and ARM. Duh.
> 
> http://git.ipfire.org/?p=ipfire-2.x.git;a=blob;f=tools/make-functions;h=a42e3fa0e5a28a934bf235dbcc4f079bc589098b;hb=HEAD#l63
> 
> You can strip -pg from the Makefile for all arches though, because 
> that
> will generate faster code.
> 
> Best,
> -Michael
> 
> P.S. Don't forget to CC the list :)
> 
> On Thu, 2016-03-31 at 14:46 +0200, Jonatan Schlag wrote:
>>  Hi,
>>  this is bad.
>>  I build for x86_64 here. I will have a look at this and send in a 
>> new
>>  patch.
>> 
>>  Regards Jonatan
>> 
>>  Am Do, 31. Mär, 2016 um 2:42 schrieb Michael Tremer 
>> <michael.tremer@i
>>  pfire.org>:
>>  > Hi,
>>  >
>>  > this still fails with the same error:
>>  >
>>  > gcc -DHAVE_CONFIG_H -I.    -pg -g -O2 -pipe -Wall -Wp,-
>>  > D_FORTIFY_SOURCE=2 -fexceptions -fPIC -fstack-protector-strong --
>>  > param=ssp-buffer-size=4 -march=i586 -mtune=generic -fomit-frame-
>>  > pointer -Wall -MT iperf3_profile-iperf_client_api.o -MD -MP -MF
>>  > .deps/iperf3_profile-iperf_client_api.Tpo -c -o iperf3_profile-
>>  > iperf_client_api.o `test -f 'iperf_client_api.c' || echo
>>  > './'`iperf_client_api.c
>>  > gcc: error: -pg and -fomit-frame-pointer are incompatible
>>  >
>>  > I am building for i586 here.
>>  >
>>  > -Michael
>>  >
>>  > On Wed, 2016-03-30 at 17:59 +0200, Jonatan Schlag wrote:
>>  >  Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
>>  >  ---
>>  >   config/rootfiles/packages/iperf3 |  9 +++++
>>  >   lfs/iperf3                       | 83
>>  >  ++++++++++++++++++++++++++++++++++++++++
>>  >   make.sh                          |  1 +
>>  >   3 files changed, 93 insertions(+)
>>  >   create mode 100644 config/rootfiles/packages/iperf3
>>  >   create mode 100644 lfs/iperf3
>>  >
>>  >  diff --git a/config/rootfiles/packages/iperf3
>>  >  b/config/rootfiles/packages/iperf3
>>  >  new file mode 100644
>>  >  index 0000000..7057f11
>>  >  --- /dev/null
>>  >  +++ b/config/rootfiles/packages/iperf3
>>  >  @@ -0,0 +1,9 @@
>>  >  +usr/bin/iperf3
>>  >  +#usr/include/iperf_api.h
>>  >  +#usr/lib/libiperf.a
>>  >  +#usr/lib/libiperf.la
>>  >  +#usr/lib/libiperf.so
>>  >  +usr/lib/libiperf.so.0
>>  >  +usr/lib/libiperf.so.0.0.0
>>  >  +#usr/share/man/man1/iperf3.1
>>  >  +#usr/share/man/man3/libiperf.3
>>  >  diff --git a/lfs/iperf3 b/lfs/iperf3
>>  >  new file mode 100644
>>  >  index 0000000..44f9f00
>>  >  --- /dev/null
>>  >  +++ b/lfs/iperf3
>>  >  @@ -0,0 +1,83 @@
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +#
>>  >
>>  >            #
>>  >  +# IPFire.org - A linux based
>>  >  firewall                                         #
>>  >  +# Copyright (C) 2007-2016  IPFire Team  <info@ipfire.org>
>>  >
>>  >            #
>>  >  +#
>>  >
>>  >            #
>>  >  +# This program is free software: you can redistribute it and/or
>>  >  modify        #
>>  >  +# it under the terms of the GNU General Public License as
>>  > published
>>  >  by        #
>>  >  +# the Free Software Foundation, either version 3 of the License,
>>  >  or           #
>>  >  +# (at your option) any later
>>  >  version.                                         #
>>  >  +#
>>  >
>>  >            #
>>  >  +# This program is distributed in the hope that it will be
>>  >  useful,             #
>>  >  +# but WITHOUT ANY WARRANTY; without even the implied warranty
>>  >  of              #
>>  >  +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
>>  >  the               #
>>  >  +# GNU General Public License for more
>>  >  details.                                #
>>  >  +#
>>  >
>>  >            #
>>  >  +# You should have received a copy of the GNU General Public
>>  >  License           #
>>  >  +# along with this program.  If not, see 
>> <http://www.gnu.org/licen
>>  > ses
>>  >  />.       #
>>  >  +#
>>  >
>>  >            #
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +# Definitions
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +
>>  >  +include Config
>>  >  +
>>  >  +VER        = 3.1.2
>>  >  +
>>  >  +THISAPP    = iperf-$(VER)
>>  >  +DL_FILE    = $(THISAPP).tar.gz
>>  >  +DL_FROM    = $(URL_IPFIRE)
>>  >  +DIR_APP    = $(DIR_SRC)/$(THISAPP)
>>  >  +TARGET     = $(DIR_INFO)/$(THISAPP)
>>  >  +PROG       = iperf3
>>  >  +PAK_VER    = 1
>>  >  +
>>  >  +DEPS       = ""
>>  >  +
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +# Top-level Rules
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +
>>  >  +objects = $(DL_FILE)
>>  >  +
>>  >  +$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>>  >  +
>>  >  +$(DL_FILE)_MD5 = f48a1b45c68647a9d8a8491af44470d6
>>  >  +
>>  >  +install : $(TARGET)
>>  >  +check : $(patsubst %,$(DIR_CHK)/%,$(objects))
>>  >  +
>>  >  +download :$(patsubst %,$(DIR_DL)/%,$(objects))
>>  >  +
>>  >  +md5 : $(subst %,%_MD5,$(objects))
>>  >  +
>>  >  +dist:.
>>  >  +	$(PAK)
>>  >  +
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +# Downloading, checking, md5sum
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +
>>  >  +$(patsubst %,$(DIR_CHK)/%,$(objects)) :
>>  >  +	@$(CHECK)
>>  >  +
>>  >  +$(patsubst %,$(DIR_DL)/%,$(objects)) :
>>  >  +	@$(LOAD)
>>  >  +
>>  >  +$(subst %,%_MD5,$(objects)) :
>>  >  +	@$(MD5)
>>  >  +
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +# Installation Details
>>  >  
>> +#################################################################
>>  > ###
>>  >  ###########
>>  >  +
>>  >  +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>>  >  +	@$(PREBUILD)
>>  >  +	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf
>>  >  $(DIR_DL)/$(DL_FILE)
>>  >  +	cd $(DIR_APP) && ./configure --prefix=/usr
>>  >  +	cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE)
>>  >  +	cd $(DIR_APP) && make install
>>  >  +	@rm -rf $(DIR_APP)
>>  >  +	@$(POSTBUILD)
>>  >  diff --git a/make.sh b/make.sh
>>  >  index da4bf16..d471db9 100755
>>  >  --- a/make.sh
>>  >  +++ b/make.sh
>>  >  @@ -744,6 +744,7 @@ buildipfire() {
>>  >     ipfiremake gutenprint
>>  >     ipfiremake apcupsd
>>  >     ipfiremake iperf
>>  >  +  ipfiremake iperf3
>>  >     ipfiremake netcat
>>  >     ipfiremake 7zip
>>  >     ipfiremake lynis