Patching files with spaces in the name

Alex Varju alex at varju.ca
Thu Apr 7 21:31:48 PDT 2005


Antonio Carlos Venancio Junior wrote:
 >> Alex Varju wrote:
>> While I'm sure this question must have come up in the past, I can't 
>> find anything in the archives.  Is there any good method for patching 
>> source files with spaces in the name?
>>
>> I'm looking at creating an eclipse-devel port for Eclipse 3.1m5a.  
>> I've already got something working now that allows me to build on 
>> AMD64 (see the freebsd-java archives if you are interested).  Now I'm 
>> trying to clean up my work, and one of the problems I've encountered 
>> is that Eclipse uses spaces in many of their paths.  If I take a diff 
>> for changes I've made to files within one of these directories, the 
>> patch won't apply again afterwards.
>>
>> Are there any ports that deal with similar problems in an elegant manner?
 >
 >     do you have some examples?

Hi Antonio,

Yes, I do have an example.  I've attached a diff from the port I have in 
progress.  The theory is that it should update the file build.sh in the 
directory "plugins/org.eclipse.swt/Eclipse SWT PI/gtk/library". 
Unfortunately, because of the spaces in "Eclipse SWT PI", the patch does 
not work.

Alex.

-------------- next part --------------
--- plugins/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh.orig	Fri Apr  1 13:56:58 2005
+++ plugins/org.eclipse.swt/Eclipse SWT PI/gtk/library/build.sh	Thu Apr  7 21:28:24 2005
@@ -110,6 +98,34 @@
 				;;	
 		esac
 		;;
+	"FreeBSD")
+		CC=gcc
+		LD=gcc
+		XTEST_LIB_PATH=$X11BASE/lib
+		KDE_LIB_PATH=$PREFIX/lib
+		KDE_INCLUDE_PATH=$PREFIX/include
+		QT_HOME=$X11BASE
+		GECKO_SDK=${X11BASE}/include/${BROWSER}
+		GECKO_INCLUDES="-I${GECKO_SDK} -I${GECKO_SDK}/nspr -I${GECKO_SDK}/xpcom -I${GECKO_SDK}/string -I${GECKO_SDK}/embed_base -I${GECKO_SDK}/embedstring"
+		case $MODEL in
+			"amd64")
+				AWT_LIB_PATH=$JAVA_HOME/jre/lib/amd64
+				SWT_PTR_CFLAGS=-DSWT_PTR_SIZE_64
+				OUTPUT_DIR=../../../org.eclipse.swt.gtk64/os/freebsd/amd64
+				makefile="make_freebsd.mak"
+				echo "Building FreeBSD GTK AMD64 version of SWT"
+				;;
+			i?86)
+				AWT_LIB_PATH=$JAVA_HOME/jre/lib/i386
+				OUTPUT_DIR=../../../org.eclipse.swt.gtk/os/freebsd/x86
+				makefile="make_freebsd.mak"
+				echo "Building FreeBSD GTK x86 version of SWT"
+				;;
+			*)
+				echo "*** Unknown MODEL <${MODEL}>"
+				;;	
+		esac
+		;;
 	"SunOS")
 		CC=gcc
 		LD=gcc
@@ -138,4 +154,13 @@
 
 export CC LD JAVA_HOME QT_HOME AWT_LIB_PATH XTEST_LIB_PATH GECKO_SDK GECKO_INCLUDES GECKO_LIBS SWT_PTR_CFLAGS CDE_HOME KDE_LIB_PATH KDE_INCLUDE_PATH OUTPUT_DIR
 
-make -f $makefile ${1} ${2} ${3} ${4}
+gmake -f $makefile ${1} ${2} ${3} ${4}
+
+build_kde=`pkg_info -xc kdebase | grep "no packages match"`
+if [ "$build_kde" != "" ]; then
+  echo "Building FreeBSD version of KDE DLL."
+  gmake -f $makefile make_kde
+fi
+
+cp -p library/xpcom* .
+gmake -f $makefile make_mozilla


More information about the freebsd-ports mailing list