r4985 - in trunk: BOOK BOOK/introduction/welcome BOOK/multimedia/libdriv patches

randy at linuxfromscratch.org randy at linuxfromscratch.org
Fri Aug 26 21:58:29 PDT 2005


Author: randy
Date: 2005-08-26 22:58:28 -0600 (Fri, 26 Aug 2005)
New Revision: 4985

Added:
   trunk/patches/libmpeg3-1.5.4-gcc_fixes-1.patch
Removed:
   trunk/patches/libmpeg3-1.5.4-gcc34-1.patch
Modified:
   trunk/BOOK/general.ent
   trunk/BOOK/introduction/welcome/changelog.xml
   trunk/BOOK/multimedia/libdriv/libmpeg3.xml
Log:
Updated GCC patch and provided documentation installation to the libmpeg3 instructions

Modified: trunk/BOOK/general.ent
===================================================================
--- trunk/BOOK/general.ent	2005-08-26 06:48:52 UTC (rev 4984)
+++ trunk/BOOK/general.ent	2005-08-27 04:58:28 UTC (rev 4985)
@@ -1,4 +1,4 @@
-<!ENTITY day          "26">
+<!ENTITY day          "27">
 <!ENTITY month        "08">
 <!ENTITY year         "2005">
 <!ENTITY version      "svn-&year;&month;&day;">

Modified: trunk/BOOK/introduction/welcome/changelog.xml
===================================================================
--- trunk/BOOK/introduction/welcome/changelog.xml	2005-08-26 06:48:52 UTC (rev 4984)
+++ trunk/BOOK/introduction/welcome/changelog.xml	2005-08-27 04:58:28 UTC (rev 4985)
@@ -42,6 +42,16 @@
 -->
 
     <listitem>
+      <para>August 27th, 2005</para>
+      <itemizedlist>
+        <listitem>
+          <para>[randy] - Updated the GCC patch and provided documentation
+          installation to the libmpeg3 instructions.</para>
+        </listitem>
+      </itemizedlist>
+    </listitem>
+
+    <listitem>
       <para>August 26th, 2005</para>
       <itemizedlist>
         <listitem>

Modified: trunk/BOOK/multimedia/libdriv/libmpeg3.xml
===================================================================
--- trunk/BOOK/multimedia/libdriv/libmpeg3.xml	2005-08-26 06:48:52 UTC (rev 4984)
+++ trunk/BOOK/multimedia/libdriv/libmpeg3.xml	2005-08-27 04:58:28 UTC (rev 4985)
@@ -9,7 +9,7 @@
   <!ENTITY libmpeg3-md5sum        "7adfc9c0beea2134575137f2e0d2ef11">
   <!ENTITY libmpeg3-size          "612 KB">
   <!ENTITY libmpeg3-buildsize     "5.7 MB">
-  <!ENTITY libmpeg3-time          "0.12 SBU">
+  <!ENTITY libmpeg3-time          "0.1 SBU">
 ]>
 
 <sect1 id="libmpeg3" xreflabel="libmpeg3-&libmpeg3-version;">
@@ -58,7 +58,7 @@
     <itemizedlist spacing='compact'>
       <listitem>
         <para>Required Patch: <ulink
-        url="&patch-root;/libmpeg3-&libmpeg3-version;-gcc34-1.patch"/></para>
+        url="&patch-root;/libmpeg3-&libmpeg3-version;-gcc_fixes-1.patch"/></para>
       </listitem>
     </itemizedlist>
 
@@ -75,7 +75,7 @@
     <para>Install <application>libmpeg3</application> by running the following
     commands:</para>
 
-<screen><userinput>patch -Np1 -i ../libmpeg3-&libmpeg3-version;-gcc34-1.patch &&
+<screen><userinput>patch -Np1 -i ../libmpeg3-&libmpeg3-version;-gcc_fixes-1.patch &&
 make</userinput></screen>
 
     <para>This package does not come with a test suite.</para>
@@ -83,18 +83,21 @@
     <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
 
 <screen role="root"><userinput>make install &&
-cp -v i686/libmpeg3.a /usr/lib &&
-cp -v {libmpeg3,mpeg3private,mpeg3protos}.h /usr/include</userinput></screen>
+install -v -m644 i686/libmpeg3.a /usr/lib &&
+install -v -m644 {libmpeg3,mpeg3private,mpeg3protos}.h /usr/include &&
+install -v -m644 -D docs/index.html \
+    /usr/share/doc/libmpeg3-&libmpeg3-version;/index.html</userinput></screen>
 
   </sect2>
 
   <sect2 role="commands">
     <title>Command Explanations</title>
 
-    <para><command>cp -v i686/libmpeg3.a /usr/lib && cp -v
-    {libmpeg3,mpeg3private,mpeg3protos}.h /usr/include</command>: Since
-    <command>make install</command> doesn't copy the library and header files to
-    proper locations, it is done manually.</para>
+    <para><command>install -v -m644 i686/libmpeg3.a /usr/lib &&
+    install -v -m644 {libmpeg3,mpeg3private,mpeg3protos}.h
+    /usr/include</command>: Since <command>make install</command> doesn't copy
+    the library and header files to proper locations, it is done
+    manually.</para>
 
   </sect2>
 
@@ -104,12 +107,12 @@
     <segmentedlist>
       <segtitle>Installed Programs</segtitle>
       <segtitle>Installed Library</segtitle>
-      <segtitle>Installed Directories</segtitle>
+      <segtitle>Installed Directory</segtitle>
 
       <seglistitem>
         <seg>mpeg3cat, mpeg3dump, and mpeg3toc</seg>
-        <seg>libmpeg3.[so,a]</seg>
-        <seg>None</seg>
+        <seg>libmpeg3.a</seg>
+        <seg>/usr/share/doc/libmpeg3-1.5.4</seg>
       </seglistitem>
     </segmentedlist>
 
@@ -150,12 +153,12 @@
       </varlistentry>
 
       <varlistentry id="libmpeg3-lib">
-        <term><filename class='libraryfile'>libmpeg3.[so,a]</filename></term>
+        <term><filename class='libraryfile'>libmpeg3.a</filename></term>
         <listitem>
           <para>decodes several MPEG standards into uncompressed data
           suitable for editing and playback.</para>
           <indexterm zone="libmpeg3 libmpeg3-lib">
-            <primary sortas="c-libmpeg3">libmpeg3.[so,a]</primary>
+            <primary sortas="c-libmpeg3">libmpeg3.a</primary>
           </indexterm>
         </listitem>
       </varlistentry>

Deleted: trunk/patches/libmpeg3-1.5.4-gcc34-1.patch
===================================================================
--- trunk/patches/libmpeg3-1.5.4-gcc34-1.patch	2005-08-26 06:48:52 UTC (rev 4984)
+++ trunk/patches/libmpeg3-1.5.4-gcc34-1.patch	2005-08-27 04:58:28 UTC (rev 4985)
@@ -1,95 +0,0 @@
-Submitted By: Jeremy Utley (jeremy at linuxfromscratch.org)
-Date: 2004-05-20
-Initial Package Version: 1.5.4
-Upstream Status: Not Submitted
-Origin: Self Created
-Description: Fixes syntax issues with GCC 3.4
-
-$LastChangedBy$
-$Date$
-
-diff -uNr libmpeg3-1.5.4/video/output.c 
-libmpeg3-1.5.4.jbit/video/output.c
---- libmpeg3-1.5.4/video/output.c	2003-11-07 13:32:32.000000000 -0800
-+++ libmpeg3-1.5.4.jbit/video/output.c	2004-04-13 12:54:53.756934515 -0700
-@@ -1062,3 +1062,39 @@
- /* Not used */
- 	return 0;
- }
-+
-+#ifdef HAVE_MMX
-+/* 
-+	Make sure that these vars get linked
-+	For some reason gcc3.4 doesn't link them
-+	There's gotta be a better way to do this, this is just a quick hack
-+*/
-+void ___jbit_hack()
-+{
-+	void *foo;
-+	foo = &mpeg3_MMX_0;
-+	foo = mpeg3_MMX_10w;
-+	foo = mpeg3_MMX_80w;
-+	foo = mpeg3_MMX_00FFw;
-+	foo = mpeg3_MMX_Ublucoeff;
-+	foo = mpeg3_MMX_Vredcoeff;
-+	foo = mpeg3_MMX_Ugrncoeff;
-+	foo = mpeg3_MMX_Vgrncoeff;
-+	foo = mpeg3_MMX_Ycoeff;
-+	foo = mpeg3_MMX_redmask;
-+	foo = mpeg3_MMX_grnmask;
-+	foo = mpeg3_601_to_rgb;
-+
-+	foo = &mpeg3_MMX_U_80;
-+	foo = &mpeg3_MMX_V_80;
-+	foo = &mpeg3_MMX_U_COEF;
-+	foo = &mpeg3_MMX_V_COEF;
-+	foo = &mpeg3_MMX_601_Y_COEF;
-+	foo = &mpeg3_MMX_601_Y_DIFF;
-+
-+	foo = &mpeg3_MMX_U_80_RGB;
-+	foo = &mpeg3_MMX_V_80_RGB;
-+	foo = &mpeg3_MMX_U_COEF_RGB;
-+	foo = &mpeg3_MMX_V_COEF_RGB;
-+}
-+#endif
-diff -uNr libmpeg3-1.5.4/video/reconstruct.c libmpeg3-1.5.4.jbit/video/reconstruct.c
---- libmpeg3-1.5.4/video/reconstruct.c	2003-10-14 00:54:14.000000000 -0700
-+++ libmpeg3-1.5.4.jbit/video/reconstruct.c	2004-04-13 12:57:23.280261795 -0700
-@@ -1286,4 +1286,16 @@
- 	return 0;
- }
- 
--
-+#ifdef HAVE_MMX
-+/* 
-+        Make sure that these vars get linked
-+        For some reason gcc3.4 doesn't link them
-+        There's gotta be a better way to do this, this is just a quick hack
-+*/
-+void ___jbit_hack_reconstruct()
-+{
-+	void *foo;
-+	foo = &MASK_AND;
-+	foo = &ADD_1;
-+}
-+#endif 
-diff -uNr libmpeg3-1.5.4/video/slice.c libmpeg3-1.5.4.jbit/video/slice.c
---- libmpeg3-1.5.4/video/slice.c	2003-10-14 00:54:14.000000000 -0700
-+++ libmpeg3-1.5.4.jbit/video/slice.c	2004-04-13 12:55:54.710884733 -0700
-@@ -706,3 +706,16 @@
- 	pthread_mutex_destroy(&(slice->output_lock));
- 	return 0;
- }
-+
-+#ifdef HAVE_MMX
-+/* 
-+        Make sure that these vars get linked
-+        For some reason gcc3.4 doesn't link them
-+        There's gotta be a better way to do this, this is just a quick hack
-+*/
-+void ___jbit_hack_slice()
-+{
-+	void *foo;
-+	foo = &MMX_128;
-+}
-+#endif 

Added: trunk/patches/libmpeg3-1.5.4-gcc_fixes-1.patch
===================================================================
--- trunk/patches/libmpeg3-1.5.4-gcc_fixes-1.patch	2005-08-26 06:48:52 UTC (rev 4984)
+++ trunk/patches/libmpeg3-1.5.4-gcc_fixes-1.patch	2005-08-27 04:58:28 UTC (rev 4985)
@@ -0,0 +1,115 @@
+Submitted By:            Randy McMurchy <randy_at_linuxfromscratch_dot_org>
+Date:                    2005-08-27
+Initial Package Version: 1.5.4
+Upstream Status:         Unknown
+Origin:                  Gentoo patch repo
+Description:             Fixes GCC build issues to allow compiling with all
+                         versions of GCC up to GCC-4.0.1
+
+$LastChangedBy$
+$Date$
+
+
+diff -Naur libmpeg3-1.5.4-orig/video/output.c libmpeg3-1.5.4/video/output.c
+--- libmpeg3-1.5.4-orig/video/output.c	2003-11-07 21:32:32.000000000 +0000
++++ libmpeg3-1.5.4/video/output.c	2005-08-27 04:14:40.000000000 +0000
+@@ -6,21 +6,21 @@
+ 
+ static long long mpeg3_MMX_0 = 0L;
+ static unsigned long  mpeg3_MMX_10w[]         = {0x00100010, 0x00100010};                     /*dd    00010 0010h, 000100010h */
+-static unsigned long  mpeg3_MMX_80w[]         = {0x00800080, 0x00800080};                     /*dd    00080 0080h, 000800080h */
++static unsigned long  __attribute__((used)) mpeg3_MMX_80w[]         = {0x00800080, 0x00800080};                     /*dd    00080 0080h, 000800080h */
+ 
+-static unsigned long  mpeg3_MMX_00FFw[]       = {0x00ff00ff, 0x00ff00ff};                     /*dd    000FF 00FFh, 000FF00FFh */
++static unsigned long  __attribute__((used)) mpeg3_MMX_00FFw[]       = {0x00ff00ff, 0x00ff00ff};                     /*dd    000FF 00FFh, 000FF00FFh */
+ 
+-static unsigned short mpeg3_MMX_Ublucoeff[]   = {0x81, 0x81, 0x81, 0x81};                     /*dd    00081 0081h, 000810081h */
+-static unsigned short mpeg3_MMX_Vredcoeff[]   = {0x66, 0x66, 0x66, 0x66};                     /*dd    00066 0066h, 000660066h */
++static unsigned short __attribute__((used)) mpeg3_MMX_Ublucoeff[]   = {0x81, 0x81, 0x81, 0x81};                     /*dd    00081 0081h, 000810081h */
++static unsigned short __attribute__((used)) mpeg3_MMX_Vredcoeff[]   = {0x66, 0x66, 0x66, 0x66};                     /*dd    00066 0066h, 000660066h */
+ 
+-static unsigned short mpeg3_MMX_Ugrncoeff[]   = {0xffe8, 0xffe8, 0xffe8, 0xffe8};             /*dd    0FFE7 FFE7h, 0FFE7FFE7h */
+-static unsigned short mpeg3_MMX_Vgrncoeff[]   = {0xffcd, 0xffcd, 0xffcd, 0xffcd};             /*dd    0FFCC FFCCh, 0FFCCFFCCh */
++static unsigned short __attribute__((used)) mpeg3_MMX_Ugrncoeff[]   = {0xffe8, 0xffe8, 0xffe8, 0xffe8};             /*dd    0FFE7 FFE7h, 0FFE7FFE7h */
++static unsigned short __attribute__((used)) mpeg3_MMX_Vgrncoeff[]   = {0xffcd, 0xffcd, 0xffcd, 0xffcd};             /*dd    0FFCC FFCCh, 0FFCCFFCCh */
+ 
+-static unsigned short mpeg3_MMX_Ycoeff[]      = {0x4a, 0x4a, 0x4a, 0x4a};                     /*dd    0004A 004Ah, 0004A004Ah */
++static unsigned short __attribute__((used)) mpeg3_MMX_Ycoeff[]      = {0x4a, 0x4a, 0x4a, 0x4a};                     /*dd    0004A 004Ah, 0004A004Ah */
+ 
+-static unsigned short mpeg3_MMX_redmask[]     = {0xf800, 0xf800, 0xf800, 0xf800};             /*dd    07c00 7c00h, 07c007c00h */
++static unsigned short __attribute__((used)) mpeg3_MMX_redmask[]     = {0xf800, 0xf800, 0xf800, 0xf800};             /*dd    07c00 7c00h, 07c007c00h */
+ 
+-static unsigned short mpeg3_MMX_grnmask[]     = {0x7e0, 0x7e0, 0x7e0, 0x7e0};                 /*dd    003e0 03e0h, 003e003e0h */
++static unsigned short __attribute__((used)) mpeg3_MMX_grnmask[]     = {0x7e0, 0x7e0, 0x7e0, 0x7e0};                 /*dd    003e0 03e0h, 003e003e0h */
+ 
+ static unsigned char mpeg3_601_to_rgb[256];
+ 
+@@ -207,12 +207,12 @@
+ 		);
+ }
+ 
+-static unsigned long long  mpeg3_MMX_U_80 = 0x0000008000800000LL;
+-static unsigned long long  mpeg3_MMX_V_80 = 0x0000000000800080LL;
+-static long long  mpeg3_MMX_U_COEF        = 0x00000058ffd30000LL;
+-static long long  mpeg3_MMX_V_COEF        = 0x00000000ffea006fLL;
+-static long long  mpeg3_MMX_601_Y_COEF    = 0x0000004800480048LL;
+-static long long  mpeg3_MMX_601_Y_DIFF    = 0x0000000000000010LL;
++static unsigned long long  __attribute__((used)) mpeg3_MMX_U_80 = 0x0000008000800000LL;
++static unsigned long long  __attribute__((used)) mpeg3_MMX_V_80 = 0x0000000000800080LL;
++static long long  __attribute__((used)) mpeg3_MMX_U_COEF        = 0x00000058ffd30000LL;
++static long long  __attribute__((used)) mpeg3_MMX_V_COEF        = 0x00000000ffea006fLL;
++static long long  __attribute__((used)) mpeg3_MMX_601_Y_COEF    = 0x0000004800480048LL;
++static long long  __attribute__((used)) mpeg3_MMX_601_Y_DIFF    = 0x0000000000000010LL;
+ 
+ inline void mpeg3_bgra32_mmx(unsigned long y, 
+ 		unsigned long u, 
+@@ -297,10 +297,10 @@
+ : "r" (&y), "r" (&u), "r" (&v), "r" (output));
+ }
+ 
+-static unsigned long long  mpeg3_MMX_U_80_RGB    = 0x0000000000800080LL;
+-static unsigned long long  mpeg3_MMX_V_80_RGB    = 0x0000008000800000LL;
+-static long long  mpeg3_MMX_U_COEF_RGB    = 0x00000000ffd30058LL;
+-static long long  mpeg3_MMX_V_COEF_RGB    = 0x0000006fffea0000LL;
++static unsigned long long  __attribute__((used)) mpeg3_MMX_U_80_RGB    = 0x0000000000800080LL;
++static unsigned long long  __attribute__((used)) mpeg3_MMX_V_80_RGB    = 0x0000008000800000LL;
++static long long  __attribute__((used)) mpeg3_MMX_U_COEF_RGB    = 0x00000000ffd30058LL;
++static long long  __attribute__((used)) mpeg3_MMX_V_COEF_RGB    = 0x0000006fffea0000LL;
+ 
+ inline void mpeg3_rgba32_mmx(unsigned long y, 
+ 		unsigned long u, 
+@@ -497,7 +497,7 @@
+ 	*data++ = 0;
+ 
+ #define STORE_PIXEL_RGB565 \
+-	*((unsigned short*)data)++ = \
++	*data++ = \
+ 		((CLIP(r_l) & 0xf8) << 8) | \
+ 		((CLIP(g_l) & 0xfc) << 3) | \
+ 		((CLIP(b_l) & 0xf8) >> 3);
+diff -Naur libmpeg3-1.5.4-orig/video/reconstruct.c libmpeg3-1.5.4/video/reconstruct.c
+--- libmpeg3-1.5.4-orig/video/reconstruct.c	2003-10-14 07:54:14.000000000 +0000
++++ libmpeg3-1.5.4/video/reconstruct.c	2005-08-27 04:14:40.000000000 +0000
+@@ -271,8 +271,8 @@
+ }
+ 
+ #else  // HAVE_3DNOW
+-	static long long ADD_1	=	0x0101010101010101LL;
+-	static long long MASK_AND = 0x7f7f7f7f7f7f7f7fLL;
++	static long long __attribute__((used)) ADD_1	= 0x0101010101010101LL;
++	static long long __attribute__((used)) MASK_AND = 0x7f7f7f7f7f7f7f7fLL;
+ #endif
+ 
+ static inline void rec_mmx(unsigned char *s, unsigned char *d, int lx2, int h)
+diff -Naur libmpeg3-1.5.4-orig/video/slice.c libmpeg3-1.5.4/video/slice.c
+--- libmpeg3-1.5.4-orig/video/slice.c	2003-10-14 07:54:14.000000000 +0000
++++ libmpeg3-1.5.4/video/slice.c	2005-08-27 04:14:40.000000000 +0000
+@@ -6,7 +6,7 @@
+ 
+ #define CLIP(x)  ((x) >= 0 ? ((x) < 255 ? (x) : 255) : 0)
+ 
+-static unsigned long long MMX_128 = 0x80008000800080LL;
++static unsigned long long __attribute__((used)) MMX_128 = 0x80008000800080LL;
+ 
+ int mpeg3_new_slice_buffer(mpeg3_slice_buffer_t *slice_buffer)
+ {


Property changes on: trunk/patches/libmpeg3-1.5.4-gcc_fixes-1.patch
___________________________________________________________________
Name: svn:keywords
   + LastChangedBy Date




More information about the blfs-book mailing list