rpms/eclipse-phpeclipse/devel eclipse-phpeclipse-3.2-build.patch, NONE, 1.1 eclipse-phpeclipse-httpd-integration.patch, NONE, 1.1 eclipse-phpeclipse-rm-win32-help.patch, NONE, 1.1 eclipse-phpeclipse.spec, NONE, 1.1 make-phpeclipse-source-archive.sh, NONE, 1.1 .cvsignore, 1.1, 1.2 sources, 1.1, 1.2

Brandon Holbrook (static) fedora-extras-commits at redhat.com
Thu Dec 21 01:06:32 UTC 2006


Author: static

Update of /cvs/extras/rpms/eclipse-phpeclipse/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv17360/devel

Modified Files:
	.cvsignore sources 
Added Files:
	eclipse-phpeclipse-3.2-build.patch 
	eclipse-phpeclipse-httpd-integration.patch 
	eclipse-phpeclipse-rm-win32-help.patch eclipse-phpeclipse.spec 
	make-phpeclipse-source-archive.sh 
Log Message:
auto-import eclipse-phpeclipse-1.1.8-15 on branch devel from eclipse-phpeclipse-1.1.8-15.src.rpm

eclipse-phpeclipse-3.2-build.patch:

--- NEW FILE eclipse-phpeclipse-3.2-build.patch ---
Index: src/net/sourceforge/phpdt/internal/compiler/parser/Scanner.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/parser/Scanner.java,v
retrieving revision 1.58
diff -u -r1.58 Scanner.java
--- src/net/sourceforge/phpdt/internal/compiler/parser/Scanner.java	23 Jan 2006 19:04:11 -0000	1.58
+++ src/net/sourceforge/phpdt/internal/compiler/parser/Scanner.java	11 Aug 2006 17:59:55 -0000
@@ -3054,50 +3054,42 @@
 				// as
 				if ((data[++index] == 's')) {
 					return TokenNameas;
-				} else {
-					return TokenNameIdentifier;
 				}
+				return TokenNameIdentifier;
 			case 3:
 				// and
 				if ((data[++index] == 'n') && (data[++index] == 'd')) {
 					return TokenNameand;
-				} else {
-					return TokenNameIdentifier;
 				}
+				return TokenNameIdentifier;
 			case 5:
 				// array
 				if ((data[++index] == 'r') && (data[++index] == 'r') && (data[++index] == 'a') && (data[++index] == 'y'))
 					return TokenNamearray;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 8:
 				if ((data[++index] == 'b') && (data[++index] == 's') && (data[++index] == 't') && (data[++index] == 'r')
 						&& (data[++index] == 'a') && (data[++index] == 'c') && (data[++index] == 't'))
 					return TokenNameabstract;
-				else
-					return TokenNameIdentifier;
-			default:
 				return TokenNameIdentifier;
 			}
+			return TokenNameIdentifier;
 		case 'b':
 			// break
 			switch (length) {
 			case 5:
 				if ((data[++index] == 'r') && (data[++index] == 'e') && (data[++index] == 'a') && (data[++index] == 'k'))
 					return TokenNamebreak;
-				else
-					return TokenNameIdentifier;
-			default:
 				return TokenNameIdentifier;
 			}
+			return TokenNameIdentifier;
 		case 'c':
 			// case catch class clone const continue
 			switch (length) {
 			case 4:
 				if ((data[++index] == 'a') && (data[++index] == 's') && (data[++index] == 'e'))
 					return TokenNamecase;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 5:
 				if ((data[++index] == 'a') && (data[++index] == 't') && (data[++index] == 'c') && (data[++index] == 'h'))
 					return TokenNamecatch;
@@ -3110,17 +3102,14 @@
 				index = 0;
 				if ((data[++index] == 'o') && (data[++index] == 'n') && (data[++index] == 's') && (data[++index] == 't'))
 					return TokenNameconst;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 8:
 				if ((data[++index] == 'o') && (data[++index] == 'n') && (data[++index] == 't') && (data[++index] == 'i')
 						&& (data[++index] == 'n') && (data[++index] == 'u') && (data[++index] == 'e'))
 					return TokenNamecontinue;
-				else
-					return TokenNameIdentifier;
-			default:
 				return TokenNameIdentifier;
 			}
+			return TokenNameIdentifier;
 		case 'd':
 			// declare default do die
 			// TODO delete define ==> no keyword !
@@ -3128,8 +3117,7 @@
 			case 2:
 				if ((data[++index] == 'o'))
 					return TokenNamedo;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			// case 6 :
 			// if ((data[++index] == 'e')
 			// && (data[++index] == 'f')
@@ -3147,11 +3135,9 @@
 				if ((data[++index] == 'e') && (data[++index] == 'f') && (data[++index] == 'a') && (data[++index] == 'u')
 						&& (data[++index] == 'l') && (data[++index] == 't'))
 					return TokenNamedefault;
-				else
-					return TokenNameIdentifier;
-			default:
 				return TokenNameIdentifier;
 			}
+			return TokenNameIdentifier;
 		case 'e':
 			// echo else exit elseif extends eval
 			switch (length) {
@@ -3164,16 +3150,14 @@
 					return TokenNameexit;
 				else if ((data[index] == 'v') && (data[++index] == 'a') && (data[++index] == 'l'))
 					return TokenNameeval;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 5:
 				// endif empty
 				if ((data[++index] == 'n') && (data[++index] == 'd') && (data[++index] == 'i') && (data[++index] == 'f'))
 					return TokenNameendif;
 				if ((data[index] == 'm') && (data[++index] == 'p') && (data[++index] == 't') && (data[++index] == 'y'))
 					return TokenNameempty;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 6:
 				// endfor
 				if ((data[++index] == 'n') && (data[++index] == 'd') && (data[++index] == 'f') && (data[++index] == 'o')
@@ -3182,28 +3166,24 @@
 				else if ((data[index] == 'l') && (data[++index] == 's') && (data[++index] == 'e') && (data[++index] == 'i')
 						&& (data[++index] == 'f'))
 					return TokenNameelseif;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 7:
 				if ((data[++index] == 'x') && (data[++index] == 't') && (data[++index] == 'e') && (data[++index] == 'n')
 						&& (data[++index] == 'd') && (data[++index] == 's'))
 					return TokenNameextends;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 8:
 				// endwhile
 				if ((data[++index] == 'n') && (data[++index] == 'd') && (data[++index] == 'w') && (data[++index] == 'h')
 						&& (data[++index] == 'i') && (data[++index] == 'l') && (data[++index] == 'e'))
 					return TokenNameendwhile;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 9:
 				// endswitch
 				if ((data[++index] == 'n') && (data[++index] == 'd') && (data[++index] == 's') && (data[++index] == 'w')
 						&& (data[++index] == 'i') && (data[++index] == 't') && (data[++index] == 'c') && (data[++index] == 'h'))
 					return TokenNameendswitch;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 10:
 				// enddeclare
 				if ((data[++index] == 'n') && (data[++index] == 'd') && (data[++index] == 'd') && (data[++index] == 'e')
@@ -3215,44 +3195,37 @@
 						&& (data[++index] == 'd') && (data[++index] == 'f') && (data[++index] == 'o') && (data[++index] == 'r')
 						&& (data[++index] == 'e') && (data[++index] == 'a') && (data[++index] == 'c') && (data[++index] == 'h'))
 					return TokenNameendforeach;
-				else
-					return TokenNameIdentifier;
-			default:
 				return TokenNameIdentifier;
 			}
+			return TokenNameIdentifier;
 		case 'f':
 			// for false final function
 			switch (length) {
 			case 3:
 				if ((data[++index] == 'o') && (data[++index] == 'r'))
 					return TokenNamefor;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 5:
 				// if ((data[++index] == 'a') && (data[++index] == 'l')
 				// && (data[++index] == 's') && (data[++index] == 'e'))
 				// return TokenNamefalse;
 				if ((data[++index] == 'i') && (data[++index] == 'n') && (data[++index] == 'a') && (data[++index] == 'l'))
 					return TokenNamefinal;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 7:
 				// foreach
 				if ((data[++index] == 'o') && (data[++index] == 'r') && (data[++index] == 'e') && (data[++index] == 'a')
 						&& (data[++index] == 'c') && (data[++index] == 'h'))
 					return TokenNameforeach;
-				else
-					return TokenNameIdentifier;
+				return TokenNameIdentifier;
 			case 8:
 				// function
 				if ((data[++index] == 'u') && (data[++index] == 'n') && (data[++index] == 'c') && (data[++index] == 't')
 						&& (data[++index] == 'i') && (data[++index] == 'o') && (data[++index] == 'n'))
[...1843 lines suppressed...]
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package net.sourceforge.phpdt.internal.ui.text.java.hover;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+
+import net.sourceforge.phpdt.internal.ui.PHPUiImages;
+import net.sourceforge.phpdt.internal.ui.text.java.hover.AnnotationExpansionControl.AnnotationHoverInput;
+import net.sourceforge.phpdt.ui.PreferenceConstants;
+import net.sourceforge.phpeclipse.PHPeclipsePlugin;
+import net.sourceforge.phpeclipse.phpeditor.IJavaAnnotation;
+import net.sourceforge.phpeclipse.phpeditor.JavaMarkerAnnotation;
+import net.sourceforge.phpeclipse.phpeditor.PHPDocumentProvider.ProblemAnnotation;
+
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.text.IDocument;
+import org.eclipse.jface.text.IInformationControlExtension2;
+import org.eclipse.jface.text.Position;
+import org.eclipse.jface.text.source.Annotation;
+import org.eclipse.jface.text.source.CompositeRuler;
+import org.eclipse.jface.text.source.IAnnotationAccess;
+import org.eclipse.jface.text.source.IAnnotationAccessExtension;
+import org.eclipse.jface.text.source.IAnnotationModel;
+import org.eclipse.jface.text.source.IAnnotationPresentation;
+import org.eclipse.jface.text.source.ISourceViewer;
+import org.eclipse.jface.text.source.ImageUtilities;
+import org.eclipse.jface.viewers.IDoubleClickListener;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.GC;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.widgets.Canvas;
+import org.eclipse.ui.texteditor.AnnotationPreference;
+import org.eclipse.ui.texteditor.AnnotationPreferenceLookup;
+
+/**
+ *
+ *
+ * @since 3.0
+ */
+public class JavaExpandHover extends AnnotationExpandHover {
+
+	/** Id of the no breakpoint fake annotation */
+	public static final String NO_BREAKPOINT_ANNOTATION= "net.sourceforge.phpdt.internal.ui.NoBreakpointAnnotation"; //$NON-NLS-1$
+
+	private static class NoBreakpointAnnotation extends Annotation implements IAnnotationPresentation {
+
+		public NoBreakpointAnnotation() {
+			super(NO_BREAKPOINT_ANNOTATION, false, JavaHoverMessages.getString("NoBreakpointAnnotation.addBreakpoint"));
+		}
+
+		/*
+		 * @see org.eclipse.jface.text.source.IAnnotationPresentation#paint(org.eclipse.swt.graphics.GC, org.eclipse.swt.widgets.Canvas, org.eclipse.swt.graphics.Rectangle)
+		 */
+		public void paint(GC gc, Canvas canvas, Rectangle bounds) {
+			// draw affordance so the user know she can click here to get a breakpoint
+			Image fImage= PHPUiImages.get(PHPUiImages.IMG_FIELD_PUBLIC);
+			ImageUtilities.drawImage(fImage, gc, canvas, bounds, SWT.CENTER);
+		}
+
+		/*
+		 * @see org.eclipse.jface.text.source.IAnnotationPresentation#getLayer()
+		 */
+		public int getLayer() {
+			return IAnnotationPresentation.DEFAULT_LAYER;
+		}
+	}
+
+	private AnnotationPreferenceLookup fLookup= new AnnotationPreferenceLookup();
+	private IPreferenceStore fStore= PHPeclipsePlugin.getDefault().getCombinedPreferenceStore();
+
+	public JavaExpandHover(CompositeRuler ruler, IAnnotationAccess access, IDoubleClickListener doubleClickListener) {
+		super(ruler, access, doubleClickListener);
+	}
+
+	/*
+	 * @see org.eclipse.ui.internal.texteditor.AnnotationExpandHover#getHoverInfoForLine(org.eclipse.jface.text.source.ISourceViewer, int)
+	 */
+	protected Object getHoverInfoForLine(final ISourceViewer viewer, final int line) {
+		final boolean showTemporaryProblems= PreferenceConstants.getPreferenceStore().getBoolean(PreferenceConstants.EDITOR_CORRECTION_INDICATION);
+		IAnnotationModel model= viewer.getAnnotationModel();
+		IDocument document= viewer.getDocument();
+
+		if (model == null)
+			return null;
+
+		List exact= new ArrayList();
+		HashMap messagesAtPosition= new HashMap();
+
+		Iterator e= model.getAnnotationIterator();
+		while (e.hasNext()) {
+			Annotation annotation= (Annotation) e.next();
+
+			if (fAnnotationAccess instanceof IAnnotationAccessExtension)
+				if (!((IAnnotationAccessExtension)fAnnotationAccess).isPaintable(annotation))
+					continue;
+			
+			if (annotation instanceof IJavaAnnotation && !isIncluded((IJavaAnnotation)annotation, showTemporaryProblems))
+				continue;
+
+			AnnotationPreference pref= fLookup.getAnnotationPreference(annotation);
+			if (pref != null) {
+				String key= pref.getVerticalRulerPreferenceKey();
+				if (key != null && !fStore.getBoolean(key))
+					continue;
+			}
+
+			Position position= model.getPosition(annotation);
+			if (position == null)
+				continue;
+
+			if (compareRulerLine(position, document, line) == 1) {
+
+				if (isDuplicateMessage(messagesAtPosition, position, annotation.getText()))
+					continue;
+
+				exact.add(annotation);
+			}
+		}
+
+		sort(exact, model);
+
+		if (exact.size() > 0)
+			setLastRulerMouseLocation(viewer, line);
+
+		if (exact.size() > 0) {
+			Annotation first= (Annotation) exact.get(0);
+			if (!isBreakpointAnnotation(first))
+				exact.add(0, new NoBreakpointAnnotation());
+		}
+
+		if (exact.size() <= 1)
+			return null;
+
+		AnnotationHoverInput input= new AnnotationHoverInput();
+		input.fAnnotations= (Annotation[]) exact.toArray(new Annotation[0]);
+		input.fViewer= viewer;
+		input.fRulerInfo= fCompositeRuler;
+		input.fAnnotationListener= fgListener;
+		input.fDoubleClickListener= fDblClickListener;
+		input.redoAction= new AnnotationExpansionControl.ICallback() {
+
+			public void run(IInformationControlExtension2 control) {
+				control.setInput(getHoverInfoForLine(viewer, line));
+			}
+
+		};
+		input.model= model;
+
+		return input;
+	}
+
+	private boolean isIncluded(IJavaAnnotation annotation, boolean showTemporaryProblems) {
+		
+		// XXX: see https://bugs.eclipse.org/bugs/show_bug.cgi?id=138601
+		if (annotation instanceof ProblemAnnotation && JavaMarkerAnnotation.TASK_ANNOTATION_TYPE.equals(annotation.getType()))
+			return false;
+		
+		if (!annotation.isProblem())
+			return true;
+		
+		if (annotation.isMarkedDeleted() && !annotation.hasOverlay())
+			return true;
+		
+		if (annotation.hasOverlay() && !annotation.isMarkedDeleted())
+			return true;
+		
+		
+		if (annotation.hasOverlay())
+			return (!isIncluded(annotation.getOverlay(), showTemporaryProblems));
+		
+		return showTemporaryProblems; //&& JavaCorrectionProcessor.hasCorrections((Annotation)annotation);
+	}
+
+	/*
+	 * @see org.eclipse.ui.internal.texteditor.AnnotationExpandHover#getOrder(org.eclipse.jface.text.source.Annotation)
+	 */
+	protected int getOrder(Annotation annotation) {
+		if (isBreakpointAnnotation(annotation)) 
+			return 1000;
+		else
+			return super.getOrder(annotation);
+	}
+
+	private boolean isBreakpointAnnotation(Annotation a) {
+		if (a instanceof JavaMarkerAnnotation) {
+			JavaMarkerAnnotation jma= (JavaMarkerAnnotation) a;
+			// HACK to get breakpoints to show up first
+			return jma.getType().equals("org.eclipse.debug.core.breakpoint"); //$NON-NLS-1$
+		}
+		return false;
+	}
+}

eclipse-phpeclipse-httpd-integration.patch:

--- NEW FILE eclipse-phpeclipse-httpd-integration.patch ---
Index: src/net/sourceforge/phpeclipse/ui/WebUI.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/WebUI.java,v
retrieving revision 1.6
diff -u -r1.6 WebUI.java
--- net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/WebUI.java	13 Oct 2005 18:38:19 -0000	1.6
+++ net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpeclipse/ui/WebUI.java	12 Aug 2006 00:13:12 -0000
@@ -14,6 +14,7 @@
 package net.sourceforge.phpeclipse.ui;
 
 import java.io.IOException;
+import java.net.ServerSocket;
 import java.net.URL;
 
 import net.sourceforge.phpeclipse.ui.templates.template.HTMLContextType;
@@ -24,6 +25,7 @@
 import org.eclipse.core.resources.IWorkspace;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Platform;
 import org.eclipse.core.runtime.Status;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.resource.ImageDescriptor;
@@ -36,6 +38,7 @@
 import org.eclipse.ui.editors.text.templates.ContributionContextTypeRegistry;
 import org.eclipse.ui.editors.text.templates.ContributionTemplateStore;
 import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
 
 /**
  * The web development tools UI plugin.
@@ -53,6 +56,7 @@
 
   /** The shared instance. */
   private static WebUI plugin;
+  private int port = 0;
 
   public static IWorkbenchPage getActivePage() {
     return getDefault().internalGetActivePage();
@@ -151,9 +155,41 @@
     }
     return fStore;
   }
+  
+  public int getHttpdPort() {
+	  if (port == 0) {
+		  port = findFreePort();
+	  }
+	  return port;
+  }
+  
+  public int findFreePort() {
+	  ServerSocket socket = null;
+	  try {
+		  socket = new ServerSocket(0);
+		  socket.setReuseAddress(true);
+		  return socket.getLocalPort();
+	  } catch(IOException e) {
+		  IStatus status = new Status(IStatus.ERROR, "net.sourceforge.phpeclipse.ui", IStatus.OK, "Error finding free port.", e); //$NON-NLS-1$ //$NON-NLS-2$
+		  plugin.getLog().log(status);
+	  } finally {
+		  if(socket != null) {
+			  try {
+				  socket.close();
+			  } catch(IOException e) {
+				  IStatus status = new Status(IStatus.ERROR, "net.sourceforge.phpeclipse.ui", IStatus.OK, "Error finding free port.", e); //$NON-NLS-1$ //$NON-NLS-2$;
+				  plugin.getLog().log(status);
+			  }
+		  }
+	  }
+	  return -1;
+  }
 
   protected void initializeDefaultPreferences(IPreferenceStore store) {
-    store.setDefault(PHP_LOCALHOST_PREF, "http://localhost");
+	  if (port ==  0) {
+		  port = findFreePort();
+	  }
+    store.setDefault(PHP_LOCALHOST_PREF, "http://localhost" + ":" + port);
     store.setDefault(PHP_DOCUMENTROOT_PREF, getWorkspace().getRoot().getLocation().toString());
 //    store.setDefault(PHP_BOOKMARK_DEFAULT, "");
 
Index: src/net/sourceforge/phpeclipse/PHPeclipsePlugin.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPeclipsePlugin.java,v
retrieving revision 1.97
diff -u -r1.97 PHPeclipsePlugin.java
--- net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPeclipsePlugin.java	10 Feb 2006 20:53:56 -0000	1.97
+++ net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/PHPeclipsePlugin.java	12 Aug 2006 00:13:14 -0000
@@ -27,6 +27,7 @@
 import net.sourceforge.phpdt.core.IJavaElement;
 import net.sourceforge.phpdt.core.JavaCore;
 import net.sourceforge.phpdt.core.WorkingCopyOwner;
+import net.sourceforge.phpdt.externaltools.actions.PHPStopApacheAction;
 import net.sourceforge.phpdt.internal.core.BatchOperation;
 import net.sourceforge.phpdt.internal.core.JavaModelManager;
 import net.sourceforge.phpdt.internal.core.util.Util;
@@ -52,6 +53,7 @@
 import net.sourceforge.phpeclipse.builder.ExternalStorageDocumentProvider;
 import net.sourceforge.phpeclipse.builder.FileStorage;
 import net.sourceforge.phpeclipse.builder.IdentifierIndexManager;
+import net.sourceforge.phpeclipse.externaltools.ExternalToolsPlugin;
 import net.sourceforge.phpeclipse.phpeditor.CustomBufferFactory;
 import net.sourceforge.phpeclipse.phpeditor.DocumentAdapter;
 import net.sourceforge.phpeclipse.phpeditor.ICompilationUnitDocumentProvider;
@@ -79,6 +81,7 @@
 import org.eclipse.core.runtime.Status;
 import org.eclipse.core.runtime.jobs.ISchedulingRule;
 import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.jface.action.Action;
 import org.eclipse.jface.action.GroupMarker;
 import org.eclipse.jface.action.IMenuManager;
 import org.eclipse.jface.action.Separator;
@@ -1023,10 +1026,15 @@
 
 	  //			RefactoringCore.getUndoManager().shutdown();
 	} finally {
+	  ExternalToolsPlugin.getDefault().stopHttpd();
+	  try {
+		Thread.sleep(1000);
+	  } catch (InterruptedException e) { /* ignore */ }
 	  super.stop(context);
-	}
-  }
 
+	}
+  }  
+  
   /**
    * @see org.eclipse.ui.plugin.AbstractUIPlugin#shutdown()
    */
Index: prefs/default_linux.properties
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/prefs/default_linux.properties,v
retrieving revision 1.2
diff -u -r1.2 default_linux.properties
--- net.sourceforge.phpeclipse.externaltools/prefs/default_linux.properties	13 Oct 2005 18:30:49 -0000	1.2
+++ net.sourceforge.phpeclipse.externaltools/prefs/default_linux.properties	12 Aug 2006 00:13:15 -0000
@@ -1,14 +1,14 @@
-_php_run_pref=/opt/lamp/php/php
-_external_parser=/opt/lamp/php/php -l -f {0}
-_mysql_run_pref=/opt/lampp/lampp startmysql
-_apache_run_pref=/opt/lampp/lampp
-_xampp_start_pref=/opt/lampp/lampp start
-_xampp_stop_pref=/opt/lampp/lampp stop
-__mysql_start=startmysql
-__apache_start=startapache -c \"DocumentRoot {0}\"
-__apache_stop=stop
-__apache_restart=restart
+_php_run_pref=/usr/bin/php
+_external_parser=/usr/bin/php -l -f {0}
+_mysql_run_pref=
+_apache_run_pref=/usr/sbin/httpd
+_xampp_start_pref=
+_xampp_stop_pref=
+__mysql_start=
+__apache_start=-f /usr/share/eclipse/plugins/net.sourceforge.phpeclipse.externaltools_1.1.8/confs/httpd.conf -c "ErrorLog {0}/.metadata/phpeclipse-httpd-error_log" -c "DocumentRoot {0}" -c "PidFile {0}/.metadata/phpeclipse-httpd.pid" -c "Listen {1}"
+__apache_stop=-f /usr/share/eclipse/plugins/net.sourceforge.phpeclipse.externaltools_1.1.8/confs/httpd.conf -c "ErrorLog {0}/.metadata/phpeclipse-httpd-error_log" -c "DocumentRoot {0}" -c "PidFile {0}/.metadata/phpeclipse-httpd.pid" -c "Listen {1}" -k stop
+__apache_restart=-f /usr/share/eclipse/plugins/net.sourceforge.phpeclipse.externaltools_1.1.8/confs/httpd.conf -c "ErrorLog {0}/.metadata/phpeclipse-httpd-error_log" -c "DocumentRoot {0}" -c "PidFile {0}/.metadata/phpeclipse-httpd.pid" -c "Listen {1}" -k restart
 _mysql_start_background=true
 _apache_start_background=true
 _apache_stop_background=true
-_apache_restart_background=true
\ No newline at end of file
+_apache_restart_background=true
Index: src/net/sourceforge/phpdt/externaltools/actions/PHPRestartApacheAction.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPRestartApacheAction.java,v
retrieving revision 1.1
diff -u -r1.1 PHPRestartApacheAction.java
--- net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPRestartApacheAction.java	11 Jun 2005 17:15:01 -0000	1.1
+++ net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPRestartApacheAction.java	12 Aug 2006 00:13:16 -0000
@@ -12,7 +12,10 @@
 package net.sourceforge.phpdt.externaltools.actions;
 
 
+import java.text.MessageFormat;
+
 import net.sourceforge.phpeclipse.externaltools.ExternalToolsPlugin;
+import net.sourceforge.phpeclipse.ui.WebUI;
 
 import org.eclipse.jface.action.IAction;
 import org.eclipse.jface.preference.IPreferenceStore;
@@ -21,10 +24,18 @@
   public void run(IAction action) {
     final IPreferenceStore store = ExternalToolsPlugin.getDefault().getPreferenceStore();
     //	execute(store.getString(PHPeclipsePlugin.APACHE_RESTART_PREF), "Restart Apache: ");
+    
+  	final IPreferenceStore webUIStore = WebUI.getDefault().getPreferenceStore();
+  	String documentRoot = webUIStore.getString(WebUI.PHP_DOCUMENTROOT_PREF);
+    // replace backslash with slash in the DocumentRoot under Windows
+    documentRoot = documentRoot.replace('\\', '/');
+    String[] arguments = { documentRoot, new Integer(WebUI.getDefault().getHttpdPort()).toString() };
+    MessageFormat form = new MessageFormat(store.getString(ExternalToolsPlugin.APACHE_RESTART_PREF));
+    
     execute(
       "apache_restart",
       store.getString(ExternalToolsPlugin.APACHE_RUN_PREF),
-      store.getString(ExternalToolsPlugin.APACHE_RESTART_PREF),
+      form.format(arguments),
       store.getBoolean(ExternalToolsPlugin.APACHE_RESTART_BACKGROUND));
   }
 }
Index: src/net/sourceforge/phpdt/externaltools/actions/PHPStartApacheAction.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPStartApacheAction.java,v
retrieving revision 1.3
diff -u -r1.3 PHPStartApacheAction.java
--- net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPStartApacheAction.java	13 Oct 2005 18:31:29 -0000	1.3
+++ net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPStartApacheAction.java	12 Aug 2006 00:13:16 -0000
@@ -30,7 +30,7 @@
 
     // replace backslash with slash in the DocumentRoot under Windows
     documentRoot = documentRoot.replace('\\', '/');
-    String[] arguments = { documentRoot };
+    String[] arguments = { documentRoot, new Integer(WebUI.getDefault().getHttpdPort()).toString() };
     MessageFormat form = new MessageFormat(store.getString(ExternalToolsPlugin.APACHE_START_PREF));
     execute("apache_start", store.getString(ExternalToolsPlugin.APACHE_RUN_PREF), form.format(arguments), store
         .getBoolean(ExternalToolsPlugin.APACHE_START_BACKGROUND));
Index: src/net/sourceforge/phpdt/externaltools/actions/PHPStopApacheAction.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPStopApacheAction.java,v
retrieving revision 1.1
diff -u -r1.1 PHPStopApacheAction.java
--- net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPStopApacheAction.java	11 Jun 2005 17:15:01 -0000	1.1
+++ net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpdt/externaltools/actions/PHPStopApacheAction.java	12 Aug 2006 00:13:16 -0000
@@ -11,7 +11,10 @@
 **********************************************************************/
 package net.sourceforge.phpdt.externaltools.actions;
 
+import java.text.MessageFormat;
+
 import net.sourceforge.phpeclipse.externaltools.ExternalToolsPlugin;
+import net.sourceforge.phpeclipse.ui.WebUI;
 
 import org.eclipse.jface.action.IAction;
 import org.eclipse.jface.preference.IPreferenceStore;
@@ -20,10 +23,18 @@
   public void run(IAction action) {
     final IPreferenceStore store = ExternalToolsPlugin.getDefault().getPreferenceStore();
     //		execute(store.getString(PHPeclipsePlugin.APACHE_STOP_PREF), "Stop Apache: ");
+    
+  	final IPreferenceStore webUIStore = WebUI.getDefault().getPreferenceStore();
+  	String documentRoot = webUIStore.getString(WebUI.PHP_DOCUMENTROOT_PREF);
+    // replace backslash with slash in the DocumentRoot under Windows
+    documentRoot = documentRoot.replace('\\', '/');
+    String[] arguments = { documentRoot, new Integer(WebUI.getDefault().getHttpdPort()).toString() };
+    MessageFormat form = new MessageFormat(store.getString(ExternalToolsPlugin.APACHE_STOP_PREF));
+    
     execute(
       "apache_stop",
       store.getString(ExternalToolsPlugin.APACHE_RUN_PREF),
-      store.getString(ExternalToolsPlugin.APACHE_STOP_PREF),
+      form.format(arguments),
       store.getBoolean(ExternalToolsPlugin.APACHE_STOP_BACKGROUND));
   }
 }
Index: src/net/sourceforge/phpeclipse/externaltools/ExternalToolsPlugin.java
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpeclipse/externaltools/ExternalToolsPlugin.java,v
retrieving revision 1.8
diff -u -r1.8 ExternalToolsPlugin.java
--- net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpeclipse/externaltools/ExternalToolsPlugin.java	4 Feb 2006 15:47:51 -0000	1.8
+++ net.sourceforge.phpeclipse.externaltools/src/net/sourceforge/phpeclipse/externaltools/ExternalToolsPlugin.java	12 Aug 2006 00:13:16 -0000
@@ -9,12 +9,17 @@
  Contributors:
  **********************************************************************/
 
+import java.io.FileOutputStream;
+import java.io.IOException;
 import java.io.InputStream;
+import java.io.OutputStream;
 import java.net.MalformedURLException;
 import java.net.URL;
 import java.util.Enumeration;
 import java.util.PropertyResourceBundle;
 
+import net.sourceforge.phpdt.externaltools.actions.PHPStartApacheAction;
+import net.sourceforge.phpdt.externaltools.actions.PHPStopApacheAction;
 import net.sourceforge.phpdt.externaltools.internal.model.ExternalToolsImages;
 import net.sourceforge.phpdt.externaltools.internal.model.IPreferenceConstants;
 import net.sourceforge.phpdt.externaltools.internal.model.VariableContextManager;
@@ -28,6 +33,7 @@
 import org.eclipse.core.runtime.Path;
 import org.eclipse.core.runtime.Platform;
 import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.action.Action;
 import org.eclipse.jface.preference.IPreferenceStore;
 import org.eclipse.jface.preference.PreferenceConverter;
 import org.eclipse.jface.resource.ImageDescriptor;
@@ -280,5 +286,41 @@
 		VariableContextManager.getDefault();
 	  }
 	});
+	initializeDefaultPluginPreferences();
+  }
+  
+  /**
+   * @throws Exception
+   * @see org.eclipse.core.runtime.Plugin#stop(BundleContext context)
+   */
+  public void stop(BundleContext context) throws Exception {
+	  super.stop(context);
+  }
+  
+ public void startHttpd(){
+	  try {
+			// move httpd.conf into the plugins metadata area
+			InputStream is = getDefault().openStream(new Path("confs/httpd.conf"));
+			OutputStream os = new FileOutputStream(getStateLocation() + "/httpd.conf");
+			byte[] buf = new byte[1024];
+			int len;
+			while ((len = is.read(buf)) > 0) {
+				os.write(buf, 0, len);
+			}
+			is.close();
+			os.close();
+			
+			// start httpd
+			new PHPStartApacheAction().run(new Action(){});
+		} catch (IOException e) {
+			IStatus status = new Status(Status.ERROR, IExternalToolConstants.PLUGIN_ID, 0, "There was a problem starting httpd.", e);
+			getDefault().getLog().log(status);
+		}	
+  }
+ 
+
+ public void stopHttpd() {
+	  // stop httpd 
+	  new PHPStopApacheAction().run(new Action(){});
   }
 }
\ No newline at end of file
Index: plugin.xml
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/plugin.xml,v
retrieving revision 1.7
diff -u -r1.7 plugin.xml
--- net.sourceforge.phpeclipse.externaltools/plugin.xml	5 Feb 2006 21:07:11 -0000	1.7
+++ net.sourceforge.phpeclipse.externaltools/plugin.xml	12 Aug 2006 00:13:15 -0000
@@ -1,32 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?eclipse version="3.0"?>
-<plugin
-   id="net.sourceforge.phpeclipse.externaltools"
-   name="PHP ExternalTools Plug-in"
-   version="1.1.8"
-   provider-name="phpeclipse.de"
-   class="net.sourceforge.phpeclipse.externaltools.ExternalToolsPlugin">
-
-   <runtime>
-	  <library name="externaltools.jar">
-		 <export name="*"/>
-	  </library>
-   </runtime>
-
-   <requires>
-	  <import plugin="org.eclipse.ui"/>
-	  <import plugin="org.eclipse.ui.console"/>
-	  <import plugin="org.eclipse.ui.ide"/>
-	  <import plugin="org.eclipse.ui.editors"/>
-	  <import plugin="org.eclipse.core.resources"/>
-	  <import plugin="org.eclipse.core.runtime"/>
-	  <import plugin="org.eclipse.debug.core"/>
-	  <import plugin="org.eclipse.debug.ui"/>
-	  <import plugin="org.eclipse.ui.externaltools"/>
-	  <import plugin="net.sourceforge.phpeclipse.ui"/>
-   </requires>
-
+<plugin>
 
+    
 <!-- external tools -->
 
 <!-- extension point definitions -->
@@ -255,11 +231,6 @@
 	  </page>
 	  <page
 			category="net.sourceforge.phpdt.externaltools.preferences"
-			class="net.sourceforge.phpdt.externaltools.preferences.XamppPrefencePage"
-			id="net.sourceforge.phpeclipse.externaltools.xampp.preferences"
-			name="XAMPP"/>
-	  <page
-			category="net.sourceforge.phpdt.externaltools.preferences"
 			class="net.sourceforge.phpdt.externaltools.preferences.MySQLPreferencePage"
 			id="net.sourceforge.phpeclipse.externaltools.mysql.preferences"
 			name="MySQL"/>
@@ -331,24 +302,6 @@
 			   toolbarPath="Normal"
 			   id="net.sourceforge.phpdt.externaltools.actions.PHPStartMySQLAction">
 		 </action>
-		 <action
-			   label="Stop XAMPP"
-			   icon="icons/obj16/xampp_stop.gif"
-			   tooltip="Stop XAMPP"
-			   class="net.sourceforge.phpdt.externaltools.actions.PHPStopXAMPPAction"
-			   menubarPath="net.sourceforge.phpeclipse.PHPMenu/phpeclipse"
-			   toolbarPath="Normal"
-			   id="net.sourceforge.phpdt.externaltools.actions.PHPStopXAMPPAction">
-		 </action>
-		 <action
-			   label="Start XAMPP"
-			   icon="icons/obj16/xampp_start.gif"
-			   tooltip="Start XAMPP"
-			   class="net.sourceforge.phpdt.externaltools.actions.PHPStartXAMPPAction"
-			   menubarPath="net.sourceforge.phpeclipse.PHPMenu/phpeclipse"
-			   toolbarPath="Normal"
-			   id="net.sourceforge.phpdt.externaltools.actions.PHPStartXAMPPAction">
-		 </action>
 	  </actionSet>
 	</extension>
 
Index: build.properties
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.externaltools/build.properties,v
retrieving revision 1.2
diff -u -r1.2 build.properties
--- net.sourceforge.phpeclipse.externaltools/build.properties	3 Aug 2005 20:55:43 -0000	1.2
+++ net.sourceforge.phpeclipse.externaltools/build.properties	12 Aug 2006 00:53:50 -0000
@@ -2,7 +2,16 @@
 output.externaltools.jar = bin/
 bin.includes = plugin.xml,\
                externaltools.jar,\
-               icons/
+               icons/,\
+               META-INF/,\
+               confs/,\
+               prefs/
 src.includes = src/,\
                build.properties,\
-               icons/
+               icons/,\
+               confs/,\
+               prefs/
+bin.excludes = prefs/default_macosx.properties,\
+               prefs/default_win32.properties
+src.excludes = prefs/default_macosx.properties,\
+               prefs/default_win32.properties
Index: META-INF/MANIFEST.MF
===================================================================
RCS file: META-INF/MANIFEST.MF
diff -N META-INF/MANIFEST.MF
--- net.sourceforge.phpeclipse.externaltools/META-INF/MANIFEST.MF	1 Jan 1970 00:00:00 -0000
+++ net.sourceforge.phpeclipse.externaltools/META-INF/MANIFEST.MF	1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,33 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: PHP ExternalTools Plug-in
+Bundle-SymbolicName: net.sourceforge.phpeclipse.externaltools; singleton:=true
+Bundle-Version: 1.1.8
+Bundle-ClassPath: externaltools.jar
+Bundle-Activator: net.sourceforge.phpeclipse.externaltools.ExternalToolsPlugin
+Bundle-Vendor: phpeclipse.de
+Bundle-Localization: plugin
+Export-Package: net.sourceforge.phpdt.externaltools.actions,
+ net.sourceforge.phpdt.externaltools.group,
+ net.sourceforge.phpdt.externaltools.internal.dialog,
+ net.sourceforge.phpdt.externaltools.internal.model,
+ net.sourceforge.phpdt.externaltools.internal.program.launchConfigurations,
+ net.sourceforge.phpdt.externaltools.internal.registry,
+ net.sourceforge.phpdt.externaltools.internal.ui,
+ net.sourceforge.phpdt.externaltools.launchConfigurations,
+ net.sourceforge.phpdt.externaltools.model,
+ net.sourceforge.phpdt.externaltools.preferences,
+ net.sourceforge.phpdt.externaltools.util,
+ net.sourceforge.phpdt.externaltools.variable,
+ net.sourceforge.phpeclipse.externaltools
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.ui.console,
+ org.eclipse.ui.ide,
+ org.eclipse.ui.editors,
+ org.eclipse.core.resources,
+ org.eclipse.core.runtime,
+ org.eclipse.debug.core,
+ org.eclipse.debug.ui,
+ org.eclipse.ui.externaltools,
+ net.sourceforge.phpeclipse.ui
+Eclipse-LazyStart: true
Index: confs/httpd.conf
===================================================================
RCS file: confs/httpd.conf
diff -N confs/httpd.conf
--- net.sourceforge.phpeclipse.externaltools/confs/httpd.conf	1 Jan 1970 00:00:00 -0000
+++ net.sourceforge.phpeclipse.externaltools/confs/httpd.conf	1 Jan 1970 00:00:00 -0000
@@ -0,0 +1,16 @@
+# minimal httpd conf file for use with PHPeclipse
+
+StartServers 1
+MinSpareServers 1
+MaxSpareServers 1
+MaxClients 3
+
+# modules 
+LoadModule mime_module modules/mod_mime.so
+LoadModule dir_module modules/mod_dir.so
+
+TypesConfig /etc/mime.types
+
+# PHP settings
+LoadModule php4_module modules/libphp4.so
+AddType application/x-httpd-php .php

eclipse-phpeclipse-rm-win32-help.patch:

--- NEW FILE eclipse-phpeclipse-rm-win32-help.patch ---
Index: plugin.xml
===================================================================
RCS file: /cvsroot/phpeclipse/net.sourceforge.phpeclipse.phphelp/plugin.xml,v
retrieving revision 1.16
diff -u -r1.16 plugin.xml
--- plugin.xml	6 Apr 2006 21:52:44 -0000	1.16
+++ plugin.xml	11 Aug 2006 22:16:34 -0000
@@ -86,12 +86,6 @@
    <extension
          point="org.eclipse.ui.preferencePages">
       <page
-            name="%phphelpFormat"
-            category="net.sourceforge.phpeclipse.preferences.PHPPreferencePage"
-            class="net.sourceforge.phpdt.phphelp.PHPHelpPreferencePage"
-            id="net.sourceforge.phpdt.phphelp.PHPHelpPreferencePage">
-      </page>
-      <page
            name="%httpQuery"
            category="net.sourceforge.phpeclipse.preferences.PHPPreferencePage"
            class="net.sourceforge.phpdt.httpquery.preferences.ConfigurationPreferencePage"


--- NEW FILE eclipse-phpeclipse.spec ---
%define fedora		1
%define redhat		0
%if %{fedora}
%define gcj_support	1
%else
%define gcj_support	0
%endif

%define eclipse_name	eclipse
%define eclipse_base	%{_datadir}/%{eclipse_name}

Name:		eclipse-phpeclipse
Version:	1.1.8
Release:	15%{?dist}
Summary:	PHP Eclipse plugin

Group:		Development/Tools
License:	CPL
URL:		http://phpeclipse.net/

Source0:	phpeclipse-%{version}.tar.gz
Source1:	make-phpeclipse-source-archive.sh

Patch0:		%{name}-3.2-build.patch
Patch1:		%{name}-rm-win32-help.patch
Patch2:		%{name}-httpd-integration.patch

BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires:		eclipse-pde
%if %{gcj_support}
BuildRequires:		gcc-java >= 4.0.2
BuildRequires:		java-gcj-compat-devel >= 1.0.33
Requires(post):		java-gcj-compat >= 1.0.33
Requires(postun):	java-gcj-compat >= 1.0.33
%else
BuildRequires:		java-devel >= 1.4.2
%endif

%if %{gcj_support}
ExclusiveArch:		%{ix86} x86_64 ppc ia64
%else
BuildArch:		noarch
%endif

Requires:		eclipse-platform >= 1:3.2.1
Requires: 		php 
Requires:		httpd

%description
The PHPeclipse plugin allows developers to write PHP webpages and scripts in
Eclipse. 

%prep
%setup -q -n phpeclipse-1.1.8

pushd net.sourceforge.phpeclipse
%patch0 -p0
popd 
pushd net.sourceforge.phpeclipse.phphelp
%patch1 -p0
popd
%patch2

%{__sed} --in-place "s:/usr/share/eclipse:%{eclipse_base}:" net.sourceforge.phpeclipse.externaltools/prefs/default_linux.properties
%{__sed} --in-place 's/\r//' net.sourceforge.phpeclipse.feature/cpl-v10.html

%build
# See comments in the script to understand this.
/bin/sh -x %{eclipse_base}/buildscripts/copy-platform SDK %{eclipse_base}
SDK=$(cd SDK > /dev/null && pwd)

# Eclipse may try to write to the home directory.
mkdir home
homedir=$(cd home > /dev/null && pwd)

# build the main phpeclipse feature
#	TODO: convert this to an `eclipse` command
/usr/bin/java -cp $SDK/startup.jar \
	-Dosgi.sharedConfiguration.area=%{_libdir}/eclipse/configuration \
	-Duser.home=$homedir \
	org.eclipse.core.launcher.Main \
	-application org.eclipse.ant.core.antRunner \
	-DjavacFailOnError=true \
	-DdontUnzip=true \
	-Dtype=feature \
	-Did=net.sourceforge.phpeclipse \
	-DsourceDirectory=$(pwd) \
	-DbaseLocation=$SDK \
	-Dbuilder=%{eclipse_base}/plugins/org.eclipse.pde.build/templates/package-build \
	-DdontFetchAnything=true \
	-f %{eclipse_base}/plugins/org.eclipse.pde.build/scripts/build.xml

%install
rm -rf $RPM_BUILD_ROOT
install -d -m 755 $RPM_BUILD_ROOT%{eclipse_base}
unzip -q -d $RPM_BUILD_ROOT%{eclipse_base}/.. build/rpmBuild/net.sourceforge.phpeclipse.zip
rm $RPM_BUILD_ROOT%{eclipse_base}/plugins/org.eclipse.pde.runtime*.jar

%if %{gcj_support}
	aot-compile-rpm
%endif

%clean
rm -rf $RPM_BUILD_ROOT

%if %{gcj_support}
%post -p %{_bindir}/rebuild-gcj-db
%postun -p %{_bindir}/rebuild-gcj-db
%endif

%files
%defattr(-,root,root,-)
%doc %{eclipse_base}/features/net.sourceforge.phpeclipse_%{version}/cpl-v10.html
%{eclipse_base}/features/net.sourceforge.phpeclipse_*
%{eclipse_base}/plugins/net.sourceforge.phpdt.smarty.ui_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.core_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.debug.core_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.debug.ui_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.externaltools_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.launching_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.phphelp_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.ui_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.webbrowser_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.xml.core_*
%{eclipse_base}/plugins/net.sourceforge.phpeclipse.xml.ui_*
%if %{gcj_support}
%{_libdir}/gcj/%{name}
%endif

%changelog
* Mon Dec 18 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-15
- Own gcj/eclipse-phpeclipse/
- dos2unix cpl-v10.html

* Mon Dec 18 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-13
- Replace datadir with libdir in sharedConfiguration to match new eclipse

* Tue Nov 28 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-12
- Added -Dosgi.sharedConfiguration.area to build command

* Mon Nov 27 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-11
- Removed maximum version Requirement for eclipse-platform

* Mon Nov 27 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-10
- New java command to fix broken builds

* Thu Nov  2 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-9
- Use included .html file as %%doc

* Tue Oct 31 2006 Brandon Holbrook <fedora at theholbrooks.org> 1.1.8-8
- New maintainer
- Fix Group, License, and Description
- Include a copy of the CPL-1.0

* Fri Aug 18 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-7
- Make external tools plugin re-locatable. 
- Enable GCJ support for Fedora.

* Fri Aug 18 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-6
- Use httpd.conf from external tools plugin instead of workspace to work around
  a race condition in the main phpeclipse plugin.

* Tue Aug 15 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-5
- Do not start httpd automatically in httpd integration patch.

* Fri Aug 11 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-4
- Add httpd integration patch.
- Move linux external tool preferences and httpd.conf to the httpd-integration
  patch.
- Remove README for httpd integration.
- Add patch to remove win32 help preferences.
- Add patch to compile against Eclipse SDK 3.2.

* Mon May 15 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-3
- Add preferences for the external tools on linux.
- Add README for httpd integration.

* Fri May 12 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-2
- Add requires.

* Wed Apr 26 2006 Ben Konrath <bkonrath at redhat.com> 1.1.8-1
- initial version


--- NEW FILE make-phpeclipse-source-archive.sh ---
#!/bin/sh
VERSION=1.1.8

# check out the modules based on the release date
echo "Creating directory 'phpeclipse-$VERSION'..."
mkdir phpeclipse-$VERSION
pushd phpeclipse-$VERSION
echo "Exporting phpeclipse from CVS..."
for m in net.sourceforge.phpeclipse \
         net.sourceforge.phpeclipse.core \
         net.sourceforge.phpeclipse.debug.core \
         net.sourceforge.phpeclipse.debug.ui \
         net.sourceforge.phpeclipse.externaltools \
         net.sourceforge.phpeclipse.feature \
         net.sourceforge.phpeclipse.launching \
         net.sourceforge.phpeclipse.phphelp \
         net.sourceforge.phpeclipse.smarty.ui \
         net.sourceforge.phpeclipse.ui \
         net.sourceforge.phpeclipse.webbrowser \
         net.sourceforge.phpeclipse.xml.core \
         net.sourceforge.phpeclipse.xml.ui; do
  cvs -z3 -d:pserver:anonymous at phpeclipse.cvs.sourceforge.net:/cvsroot/phpeclipse export -D "2006/04/08 00:00" $m
  # sf.net servers suck!
  if [ $? -eq 1 ]; then
    sleep 10
    cvs -z3 -d:pserver:anonymous at phpeclipse.cvs.sourceforge.net:/cvsroot/phpeclipse export -D "2006/04/08 00:00" $m
    if [ $? -eq 1 ]; then 
      echo "ERROR: There was a problem checking out module: $m"
      exit 1
    fi
  fi 
done

find -name feature.xml -o -name plugin.xml | xargs sed --in-place "s/1.1.7/$VERSION/"
find -name .project -o -name .classpath -o -name .template | xargs rm
popd

echo "Downloading Source .zip file..."
wget http://easynews.dl.sourceforge.net/sourceforge/phpeclipse/net.sourceforge.phpeclipse_$VERSION.src.zip
mkdir source-plugin
unzip -q -d source-plugin net.sourceforge.phpeclipse_$VERSION.src.zip

pushd source-plugin/plugins/net.sourceforge.phpeclipse.source_$VERSION/src

# take _$VERSION off the directory names
for dir in $(ls --color=no); do
  newdir=$(echo $dir | sed s/_$VERSION//)
  mv $dir $newdir
done

# the plugin id and project name don't match for this one 
mv net.sourceforge.phpdt.smarty.ui net.sourceforge.phpeclipse.smarty.ui

# copy source files over
for sourcefile in $(find -name \*.java); do
  targetdir="../../../../phpeclipse-$VERSION/$(dirname $sourcefile | sed "s|./||")"
  mkdir -p $targetdir
  mv $sourcefile $targetdir
done
  
popd

# grab the plugin.xml, plugin.properties and other files from the binary zip
echo "Downloading Binary .zip file..."
wget http://umn.dl.sourceforge.net/sourceforge/phpeclipse/net.sourceforge.phpeclipse_$VERSION.bin.dist.zip
mkdir binary-plugin
unzip -q -d binary-plugin net.sourceforge.phpeclipse_$VERSION.bin.dist.zip

pushd binary-plugin
# remove the jars so they don't accidentally end up in the source archive
find -name \*.jar | xargs rm

# flatten the directory structure
mv features/net.sourceforge.phpeclipse_$VERSION net.sourceforge.phpeclipse.feature
mv plugins/* . 
rmdir features plugins

# take _$VERSION off the directory names
for dir in $(ls --color=no | grep $VERSION); do
  newdir=$(echo $dir | sed s/_$VERSION//)
  mv $dir $newdir
done

# the plugin id and project name don't match for this one 
mv net.sourceforge.phpdt.smarty.ui net.sourceforge.phpeclipse.smarty.ui

# finally copy the files over 
for sourcedir in $(ls --color=no); do
  targetdir=../phpeclipse-$VERSION/$sourcedir
  cp -r  $sourcedir/* $targetdir
done

popd

find phpeclipse-$VERSION -name \*.java | xargs dos2unix 
find phpeclipse-$VERSION -name \*.xml | xargs dos2unix
sed --in-place "s/3.1.1/0.0.0/" phpeclipse-$VERSION/net.sourceforge.phpeclipse.feature/feature.xml 

tar zcf phpeclipse-$VERSION.tar.gz phpeclipse-$VERSION

rm -rf binary-plugin source-plugin net.sourceforge.phpeclipse_$VERSION.src.zip phpeclipse-$VERSION net.sourceforge.phpeclipse_$VERSION.bin.dist.zip


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/eclipse-phpeclipse/devel/.cvsignore,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- .cvsignore	21 Dec 2006 01:01:46 -0000	1.1
+++ .cvsignore	21 Dec 2006 01:06:02 -0000	1.2
@@ -0,0 +1 @@
+phpeclipse-1.1.8.tar.gz


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/eclipse-phpeclipse/devel/sources,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- sources	21 Dec 2006 01:01:46 -0000	1.1
+++ sources	21 Dec 2006 01:06:02 -0000	1.2
@@ -0,0 +1 @@
+4098f937baf31afab1225481c6e0fd94  phpeclipse-1.1.8.tar.gz




More information about the scm-commits mailing list