]> git.ipfire.org Git - people/teissler/ipfire-2.x.git/commitdiff
gmp: Ship MMX/SSE/SSE2 enabled version.
authorMichael Tremer <michael.tremer@ipfire.org>
Fri, 18 Jul 2014 13:20:13 +0000 (15:20 +0200)
committerMichael Tremer <michael.tremer@ipfire.org>
Fri, 18 Jul 2014 13:21:34 +0000 (15:21 +0200)
config/rootfiles/common/armv5tel/gmp [moved from config/rootfiles/common/gmp with 100% similarity]
config/rootfiles/common/i586/gmp [new file with mode: 0644]
config/rootfiles/common/stage2
config/rootfiles/core/80/filelists/i586/gmp [new symlink]
lfs/gmp
lfs/stage2

diff --git a/config/rootfiles/common/i586/gmp b/config/rootfiles/common/i586/gmp
new file mode 100644 (file)
index 0000000..db6a000
--- /dev/null
@@ -0,0 +1,25 @@
+#usr/include/gmp.h
+#usr/include/gmpxx.h
+#usr/include/mp.h
+#usr/lib/libgmp.a
+#usr/lib/libgmp.la
+#usr/lib/libgmp.so
+usr/lib/libgmp.so.10
+usr/lib/libgmp.so.10.0.5
+#usr/lib/libgmpxx.a
+#usr/lib/libgmpxx.la
+#usr/lib/libgmpxx.so
+usr/lib/libgmpxx.so.4
+usr/lib/libgmpxx.so.4.2.5
+#usr/lib/libmp.a
+#usr/lib/libmp.la
+#usr/lib/libmp.so
+usr/lib/libmp.so.3
+usr/lib/libmp.so.3.1.25
+usr/lib/sse2/libgmp.so.10
+usr/lib/sse2/libgmp.so.10.0.5
+usr/lib/sse2/libmp.so.3
+usr/lib/sse2/libmp.so.3.1.25
+#usr/share/info/gmp.info
+#usr/share/info/gmp.info-1
+#usr/share/info/gmp.info-2
index 085092d7a8edbcd25eb7e70e762374ce297c9a02..39bf555c17d341b1215fd4798095caaa8b494936 100644 (file)
@@ -74,6 +74,7 @@ usr/lib/libgcc_s.so.1
 #usr/lib/libstdc++.la
 #usr/lib/libstdc++.so
 usr/lib/libstdc++.so.6
+#usr/lib/sse2
 #usr/local
 #usr/local/bin
 #usr/local/bin/archive.files
diff --git a/config/rootfiles/core/80/filelists/i586/gmp b/config/rootfiles/core/80/filelists/i586/gmp
new file mode 120000 (symlink)
index 0000000..52a09cd
--- /dev/null
@@ -0,0 +1 @@
+../../../../common/i586/gmp
\ No newline at end of file
diff --git a/lfs/gmp b/lfs/gmp
index 55603a5e3ff6e3b40545b66475756c7c2c1ba731..1e518a2b3b50803e7f8cfbb54cf6b04ed54e603b 100644 (file)
--- a/lfs/gmp
+++ b/lfs/gmp
@@ -34,8 +34,15 @@ TARGET     = $(DIR_INFO)/$(THISAPP)
 
 ifeq "$(MACHINE)" "i586"
        CONFIGURE_ARGS = ABI=32
+       BUILDTARGET_PENTIUM4 = $(patsubst $(MACHINE)-%,pentium4-%,$(BUILDTARGET))
 endif
 
+CONFIGURE_OPTIONS = \
+       --prefix=/usr \
+       --enable-cxx \
+       --enable-mpbsd \
+       --disable-nls
+
 ###############################################################################
 # Top-level Rules
 ###############################################################################
@@ -74,10 +81,30 @@ $(subst %,%_MD5,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
        @$(PREBUILD)
        @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
-       cd $(DIR_APP) && $(CONFIGURE_ARGS) ./configure --prefix=/usr \
-               --build=$(BUILDTARGET) \
-               --enable-cxx --enable-mpbsd --disable-nls
+       cd $(DIR_APP) && \
+               $(CONFIGURE_ARGS) \
+               ./configure \
+                       --build=$(BUILDTARGET) \
+                       $(CONFIGURE_OPTIONS)
        cd $(DIR_APP) && make $(MAKETUNING)
        cd $(DIR_APP) && make install
+
+ifeq "$(MACHINE)" "i586"
+       # Build SSE/SSE2 optimised version for x86
+       cd $(DIR_APP) && make clean
+       cd $(DIR_APP) && \
+               $(CONFIGURE_ARGS) \
+               ./configure \
+                       --build=$(BUILDTARGET_PENTIUM4) \
+                       $(CONFIGURE_OPTIONS) \
+                       CFLAGS="$(CFLAGS) -march=pentium4" \
+                       CXXFLAGS="$(CXXFLAGS) -march=pentium4"
+       cd $(DIR_APP) && make $(MAKETUNING)
+
+       -mkdir -pv /usr/lib/sse2
+       cd $(DIR_APP) && install -v -m 755 .libs/libgmp.so.10.0.5 /usr/lib/sse2
+       cd $(DIR_APP) && install -v -m 755 .libs/libmp.so.3.1.25 /usr/lib/sse2
+endif
+
        @rm -rf $(DIR_APP)
        @$(POSTBUILD)
index 956f58953c36a8a393af00b4a15bb0b2a12e7950..a084816309c4f69ae518c187e23e4280289cb117 100644 (file)
@@ -53,7 +53,7 @@ $(TARGET) :
        -mkdir -pv /{media/{floppy,cdrom,usbkey},sbin,srv,var}
        -install -dv -m 0750 /root
        -install -dv -m 1777 /tmp /var/tmp
-       -mkdir -pv /usr/{,local/}{bin,include,lib,sbin,src}
+       -mkdir -pv /usr/{,local/}{bin,include,lib{,/sse2},sbin,src}
        -mkdir -pv /usr/{,local/}share/{doc,info,locale,man}
        -mkdir -v  /usr/{,local/}share/{misc,terminfo,zoneinfo}
        -mkdir -pv /usr/{,local/}share/man/man{1..8}