Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'autotools/org.eclipse.linuxtools.cdt.autotools.ui/src/org/eclipse/linuxtools/internal/cdt/autotools/ui/actions/InvokeLibtoolizeAction.java')
-rw-r--r--autotools/org.eclipse.linuxtools.cdt.autotools.ui/src/org/eclipse/linuxtools/internal/cdt/autotools/ui/actions/InvokeLibtoolizeAction.java78
1 files changed, 78 insertions, 0 deletions
diff --git a/autotools/org.eclipse.linuxtools.cdt.autotools.ui/src/org/eclipse/linuxtools/internal/cdt/autotools/ui/actions/InvokeLibtoolizeAction.java b/autotools/org.eclipse.linuxtools.cdt.autotools.ui/src/org/eclipse/linuxtools/internal/cdt/autotools/ui/actions/InvokeLibtoolizeAction.java
new file mode 100644
index 0000000000..43435290a9
--- /dev/null
+++ b/autotools/org.eclipse.linuxtools.cdt.autotools.ui/src/org/eclipse/linuxtools/internal/cdt/autotools/ui/actions/InvokeLibtoolizeAction.java
@@ -0,0 +1,78 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Red Hat Inc..
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat Incorporated - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.linuxtools.internal.cdt.autotools.ui.actions;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.dialogs.InputDialog;
+import org.eclipse.linuxtools.internal.cdt.autotools.core.AutotoolsPropertyConstants;
+import org.eclipse.swt.widgets.Shell;
+
+
+public class InvokeLibtoolizeAction extends InvokeAction {
+
+ private static final String DEFAULT_OPTION = ""; //$NON-NLS-1$
+ private static final String DEFAULT_COMMAND = "libtoolize"; //$NON-NLS-1$
+
+ public void run(IAction action) {
+
+ IContainer container = getSelectedContainer();
+ if (container == null)
+ return;
+
+ IPath execDir = getExecDir(container);
+ String cwd = InvokeMessages.getString("CWD") + getCWD(container); //$NON-NLS-1$
+
+ InputDialog optionDialog = new SingleInputDialog(
+ new Shell(),
+ cwd,
+ InvokeMessages
+ .getString("InvokeLibtoolizeAction.windowTitle.options"), //$NON-NLS-1$
+ InvokeMessages
+ .getString("InvokeLibtoolizeAction.message.options.otherOptions"), //$NON-NLS-1$
+ DEFAULT_OPTION, null);
+ optionDialog.open();
+
+ // chop args into string array
+ String rawArgList = optionDialog.getValue();
+
+ String[] optionsList = simpleParseOptions(rawArgList);
+
+ String[] argumentList = new String[optionsList.length];
+
+ System.arraycopy(optionsList, 0, argumentList, 0, optionsList.length);
+
+ if (container != null) {
+ String libtoolizeCommand = null;
+ IProject project = getSelectedContainer().getProject();
+ try {
+ libtoolizeCommand = project.getPersistentProperty(AutotoolsPropertyConstants.LIBTOOLIZE_TOOL);
+ } catch (CoreException e) {
+ // do nothing
+ }
+
+ // If unset, use default system path
+ if (libtoolizeCommand == null)
+ libtoolizeCommand = DEFAULT_COMMAND;
+
+ executeConsoleCommand(DEFAULT_COMMAND, libtoolizeCommand,
+ argumentList, execDir);
+ }
+ }
+
+ public void dispose() {
+
+ }
+
+}

Back to the top