From c5c2770c93488ad9603ce4b63ca776c664be8e0d Mon Sep 17 00:00:00 2001 From: Marc-Andre Laperle Date: Fri, 29 Apr 2016 14:40:54 -0400 Subject: [PATCH] Remove Solaris Sparc support Solaris Sparc support was removed in SWT therefore it cannot be supported by CDT anymore. Change-Id: Ic40f55632023fd77fd164d3e48b5ca06835c3a31 Signed-off-by: Marc-Andre Laperle --- core/org.eclipse.cdt.core.solaris/.classpath | 7 - core/org.eclipse.cdt.core.solaris/.cvsignore | 2 - core/org.eclipse.cdt.core.solaris/.project | 28 -- .../META-INF/MANIFEST.MF | 10 - core/org.eclipse.cdt.core.solaris/about.html | 24 -- .../build.properties | 19 -- .../org.eclipse.cdt.core.solaris/fragment.xml | 12 - .../library/.cvsignore | 1 - .../library/Makefile | 29 -- .../library/PTY.h | 29 -- .../library/PTYInputStream.h | 32 -- .../library/PTYOutputStream.h | 29 -- .../library/Spawner.h | 53 --- .../library/SpawnerInputStream.h | 32 -- .../library/SpawnerOutputStream.h | 29 -- .../library/exec0.h | 26 -- .../library/exec_pty.c | 197 ------------ .../library/exec_unix.c | 156 --------- .../org.eclipse.cdt.core.solaris/library/io.c | 113 ------- .../library/openpty.c | 131 -------- .../library/openpty.h | 17 - .../library/pfind.c | 110 ------- .../library/pty.c | 67 ---- .../library/ptyio.c | 113 ------- .../library/spawner.c | 301 ------------------ .../os/solaris/sparc/libpty.so | Bin 10608 -> 0 bytes .../os/solaris/sparc/libspawner.so | Bin 21264 -> 0 bytes .../plugin.properties | 2 - core/org.eclipse.cdt.core.solaris/pom.xml | 39 --- .../internal/core/solaris/ProcessInfo.java | 55 ---- .../internal/core/solaris/ProcessList.java | 78 ----- .../sourceTemplateFeature/feature.xml | 10 - .../sourceTemplateFeature/feature.xml | 10 - pom.xml | 11 - .../feature.xml | 10 - .../feature.xml | 10 - 36 files changed, 1792 deletions(-) delete mode 100644 core/org.eclipse.cdt.core.solaris/.classpath delete mode 100644 core/org.eclipse.cdt.core.solaris/.cvsignore delete mode 100644 core/org.eclipse.cdt.core.solaris/.project delete mode 100644 core/org.eclipse.cdt.core.solaris/META-INF/MANIFEST.MF delete mode 100644 core/org.eclipse.cdt.core.solaris/about.html delete mode 100644 core/org.eclipse.cdt.core.solaris/build.properties delete mode 100644 core/org.eclipse.cdt.core.solaris/fragment.xml delete mode 100644 core/org.eclipse.cdt.core.solaris/library/.cvsignore delete mode 100644 core/org.eclipse.cdt.core.solaris/library/Makefile delete mode 100644 core/org.eclipse.cdt.core.solaris/library/PTY.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/PTYInputStream.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/PTYOutputStream.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/Spawner.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/SpawnerInputStream.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/SpawnerOutputStream.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/exec0.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/exec_pty.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/exec_unix.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/io.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/openpty.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/openpty.h delete mode 100644 core/org.eclipse.cdt.core.solaris/library/pfind.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/pty.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/ptyio.c delete mode 100644 core/org.eclipse.cdt.core.solaris/library/spawner.c delete mode 100644 core/org.eclipse.cdt.core.solaris/os/solaris/sparc/libpty.so delete mode 100644 core/org.eclipse.cdt.core.solaris/os/solaris/sparc/libspawner.so delete mode 100644 core/org.eclipse.cdt.core.solaris/plugin.properties delete mode 100644 core/org.eclipse.cdt.core.solaris/pom.xml delete mode 100644 core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessInfo.java delete mode 100644 core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessList.java diff --git a/core/org.eclipse.cdt.core.solaris/.classpath b/core/org.eclipse.cdt.core.solaris/.classpath deleted file mode 100644 index b277a8ac870..00000000000 --- a/core/org.eclipse.cdt.core.solaris/.classpath +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/core/org.eclipse.cdt.core.solaris/.cvsignore b/core/org.eclipse.cdt.core.solaris/.cvsignore deleted file mode 100644 index 693869726de..00000000000 --- a/core/org.eclipse.cdt.core.solaris/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -bin -doc diff --git a/core/org.eclipse.cdt.core.solaris/.project b/core/org.eclipse.cdt.core.solaris/.project deleted file mode 100644 index 7cc7c8e5e6d..00000000000 --- a/core/org.eclipse.cdt.core.solaris/.project +++ /dev/null @@ -1,28 +0,0 @@ - - - org.eclipse.cdt.core.solaris - - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.jdt.core.javanature - org.eclipse.pde.PluginNature - - diff --git a/core/org.eclipse.cdt.core.solaris/META-INF/MANIFEST.MF b/core/org.eclipse.cdt.core.solaris/META-INF/MANIFEST.MF deleted file mode 100644 index 32561721cce..00000000000 --- a/core/org.eclipse.cdt.core.solaris/META-INF/MANIFEST.MF +++ /dev/null @@ -1,10 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: %fragmentName.solaris -Bundle-SymbolicName: org.eclipse.cdt.core.solaris; singleton:=true -Bundle-Version: 5.3.0.qualifier -Bundle-Vendor: %providerName -Fragment-Host: org.eclipse.cdt.core.native;bundle-version="[5.7.0,6.0.0)" -Bundle-Localization: plugin -Bundle-RequiredExecutionEnvironment: JavaSE-1.7 -Eclipse-PlatformFilter: (&(osgi.os=solaris)(osgi.arch=sparc)) diff --git a/core/org.eclipse.cdt.core.solaris/about.html b/core/org.eclipse.cdt.core.solaris/about.html deleted file mode 100644 index d7c511887d6..00000000000 --- a/core/org.eclipse.cdt.core.solaris/about.html +++ /dev/null @@ -1,24 +0,0 @@ - - -About - - -

About This Content

- -

June 22, 2007

-

License

- -

The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise -indicated below, the Content is provided to you under the terms and conditions of the -Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available -at http://www.eclipse.org/legal/epl-v10.html. -For purposes of the EPL, "Program" will mean the Content.

- -

If you did not receive this Content directly from the Eclipse Foundation, the Content is -being redistributed by another party ("Redistributor") and different terms and conditions may -apply to your use of any object code in the Content. Check the Redistributor's license that was -provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise -indicated below, the terms and conditions of the EPL still apply to any source code in the Content -and such source code may be obtained at http://www.eclipse.org.

- - \ No newline at end of file diff --git a/core/org.eclipse.cdt.core.solaris/build.properties b/core/org.eclipse.cdt.core.solaris/build.properties deleted file mode 100644 index 4b121c5dec2..00000000000 --- a/core/org.eclipse.cdt.core.solaris/build.properties +++ /dev/null @@ -1,19 +0,0 @@ -############################################################################### -# Copyright (c) 2005, 2006 IBM Corporation and others. -# 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: -# IBM Corporation - initial API and implementation -############################################################################### -bin.includes = fragment.xml,\ - about.html,\ - os/,\ - .,\ - META-INF/,\ - plugin.properties -src.includes = about.html,\ - library/ -source.. = src/ diff --git a/core/org.eclipse.cdt.core.solaris/fragment.xml b/core/org.eclipse.cdt.core.solaris/fragment.xml deleted file mode 100644 index bdce3f28594..00000000000 --- a/core/org.eclipse.cdt.core.solaris/fragment.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - diff --git a/core/org.eclipse.cdt.core.solaris/library/.cvsignore b/core/org.eclipse.cdt.core.solaris/library/.cvsignore deleted file mode 100644 index 5761abcfdf0..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/.cvsignore +++ /dev/null @@ -1 +0,0 @@ -*.o diff --git a/core/org.eclipse.cdt.core.solaris/library/Makefile b/core/org.eclipse.cdt.core.solaris/library/Makefile deleted file mode 100644 index 8c074ca7639..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/Makefile +++ /dev/null @@ -1,29 +0,0 @@ -# makefile for libspawner.so - -#set JDK_INCLUDES -JDK_INCLUDES=/usr/java/include -JDK_OS_INCLUDES=/usr/java/include/solaris - -CC=gcc -CPPFLAGS = -I. -I$(JDK_INCLUDES) -I$(JDK_OS_INCLUDES) -CFLAGS +=-fpic -D_REENTRANT - -LIB_NAME_SPAWNER = libspawner.so -LIB_NAME_FULL_SPAWNER = ../os/solaris/sparc/libspawner.so -OBJS_SPAWNER=spawner.o io.o exec_unix.o exec_pty.o openpty.o pfind.o - -LIB_NAME_PTY = libpty.so -LIB_NAME_FULL_PTY = ../os/solaris/sparc/libpty.so -OBJS_PTY=openpty.o pty.o ptyio.o - -all: $(LIB_NAME_FULL_SPAWNER) $(LIB_NAME_FULL_PTY) - -$(LIB_NAME_FULL_SPAWNER): $(OBJS_SPAWNER) - $(CC) -g -shared -static-libgcc -o $(LIB_NAME_FULL_SPAWNER) $(OBJS_SPAWNER) -lc - -$(LIB_NAME_FULL_PTY): $(OBJS_PTY) - $(CC) -g -shared -static-libgcc -o $(LIB_NAME_FULL_PTY) $(OBJS_PTY) - -clean : - $(RM) $(OBJS_SPAWNER) $(LIB_NAME_FULL_SPAWNER) - $(RM) $(OBJS_PTY) $(LIB_NAME_FULL_PTY) diff --git a/core/org.eclipse.cdt.core.solaris/library/PTY.h b/core/org.eclipse.cdt.core.solaris/library/PTY.h deleted file mode 100644 index f717942a01d..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/PTY.h +++ /dev/null @@ -1,29 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class org_eclipse_cdt_utils_pty_PTY */ - -#ifndef _Included_org_eclipse_cdt_utils_pty_PTY -#define _Included_org_eclipse_cdt_utils_pty_PTY -#ifdef __cplusplus -extern "C" { -#endif -/* - * Class: org_eclipse_cdt_utils_pty_PTY - * Method: openMaster - * Signature: (Z)Ljava/lang/String; - */ -JNIEXPORT jstring JNICALL Java_org_eclipse_cdt_utils_pty_PTY_openMaster - (JNIEnv *, jobject, jboolean); - -/* - * Class: org_eclipse_cdt_utils_pty_PTY - * Method: change_window_size - * Signature: (III)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_change_1window_1size - (JNIEnv *, jobject, jint, jint, jint); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/PTYInputStream.h b/core/org.eclipse.cdt.core.solaris/library/PTYInputStream.h deleted file mode 100644 index e7349272b56..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/PTYInputStream.h +++ /dev/null @@ -1,32 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class org_eclipse_cdt_utils_pty_PTYInputStream */ - -#ifndef _Included_org_eclipse_cdt_utils_pty_PTYInputStream -#define _Included_org_eclipse_cdt_utils_pty_PTYInputStream -#ifdef __cplusplus -extern "C" { -#endif -#undef org_eclipse_cdt_utils_pty_PTYInputStream_SKIP_BUFFER_SIZE -#define org_eclipse_cdt_utils_pty_PTYInputStream_SKIP_BUFFER_SIZE 2048L -/* Inaccessible static: skipBuffer */ -/* - * Class: org_eclipse_cdt_utils_pty_PTYInputStream - * Method: read0 - * Signature: (I[BI)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYInputStream_read0 - (JNIEnv *, jobject, jint, jbyteArray, jint); - -/* - * Class: org_eclipse_cdt_utils_pty_PTYInputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYInputStream_close0 - (JNIEnv *, jobject, jint); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/PTYOutputStream.h b/core/org.eclipse.cdt.core.solaris/library/PTYOutputStream.h deleted file mode 100644 index fb28491060e..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/PTYOutputStream.h +++ /dev/null @@ -1,29 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class org_eclipse_cdt_utils_pty_PTYOutputStream */ - -#ifndef _Included_org_eclipse_cdt_utils_pty_PTYOutputStream -#define _Included_org_eclipse_cdt_utils_pty_PTYOutputStream -#ifdef __cplusplus -extern "C" { -#endif -/* - * Class: org_eclipse_cdt_utils_pty_PTYOutputStream - * Method: write0 - * Signature: (I[BI)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYOutputStream_write0 - (JNIEnv *, jobject, jint, jbyteArray, jint); - -/* - * Class: org_eclipse_cdt_utils_pty_PTYOutputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTYOutputStream_close0 - (JNIEnv *, jobject, jint); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/Spawner.h b/core/org.eclipse.cdt.core.solaris/library/Spawner.h deleted file mode 100644 index 02727f98a88..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/Spawner.h +++ /dev/null @@ -1,53 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class org_eclipse_cdt_utils_spawner_Spawner */ - -#ifndef _Included_org_eclipse_cdt_utils_spawner_Spawner -#define _Included_org_eclipse_cdt_utils_spawner_Spawner -#ifdef __cplusplus -extern "C" { -#endif -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: exec0 - * Signature: ([Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[I)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec0 - (JNIEnv *, jobject, jobjectArray, jobjectArray, jstring, jintArray); - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: exec1 - * Signature: ([Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec1 - (JNIEnv *, jobject, jobjectArray, jobjectArray, jstring); - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: exec2 - * Signature: ([Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[ILjava/lang/String;IZ)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec2 - (JNIEnv *, jobject, jobjectArray, jobjectArray, jstring, jintArray, jstring, jint, jboolean); - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: raise - * Signature: (II)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_raise - (JNIEnv *, jobject, jint, jint); - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: waitFor - * Signature: (I)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_waitFor - (JNIEnv *, jobject, jint); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/SpawnerInputStream.h b/core/org.eclipse.cdt.core.solaris/library/SpawnerInputStream.h deleted file mode 100644 index 3b32d2b2806..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/SpawnerInputStream.h +++ /dev/null @@ -1,32 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class com_qnx_tools_utils_spawner_SpawnerInputStream */ - -#ifndef _Included_com_qnx_tools_utils_spawner_SpawnerInputStream -#define _Included_com_qnx_tools_utils_spawner_SpawnerInputStream -#ifdef __cplusplus -extern "C" { -#endif -#undef com_qnx_tools_utils_spawner_SpawnerInputStream_SKIP_BUFFER_SIZE -#define com_qnx_tools_utils_spawner_SpawnerInputStream_SKIP_BUFFER_SIZE 2048L -/* Inaccessible static: skipBuffer */ -/* - * Class: org_elipse_cdt_utils_spawner_SpawnerInputStream - * Method: read0 - * Signature: (I[BI)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_SpawnerInputStream_read0 - (JNIEnv *, jobject, jint, jbyteArray, jint); - -/* - * Class: org_eclipse_cdt_utils_spawner_SpawnerInputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_SpawnerInputStream_close0 - (JNIEnv *, jobject, jint); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/SpawnerOutputStream.h b/core/org.eclipse.cdt.core.solaris/library/SpawnerOutputStream.h deleted file mode 100644 index f835947e060..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/SpawnerOutputStream.h +++ /dev/null @@ -1,29 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class com_qnx_tools_utils_spawner_SpawnerOutputStream */ - -#ifndef _Included_com_qnx_tools_utils_spawner_SpawnerOutputStream -#define _Included_com_qnx_tools_utils_spawner_SpawnerOutputStream -#ifdef __cplusplus -extern "C" { -#endif -/* - * Class: org_eclipse_cdt_utils_spawner_SpawnerOutputStream - * Method: write0 - * Signature: (I[BI)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_SpawnerOutputStream_write0 - (JNIEnv *, jobject, jint, jbyteArray, jint); - -/* - * Class: org_eclipse_cdt_utils_spawner_SpawnerOutputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_SpawnerOutputStream_close0 - (JNIEnv *, jobject, jint); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/exec0.h b/core/org.eclipse.cdt.core.solaris/library/exec0.h deleted file mode 100644 index f2aaca6317b..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/exec0.h +++ /dev/null @@ -1,26 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - *******************************************************************************/ -#include -#include -#include -#include - -extern pid_t exec0(const char *path, char *const argv[], - char *const envp[], const char *dirpath, - int channels[3] ); - -extern pid_t exec_pty(const char *path, char *const argv[], - char *const envp[], const char *dirpath, - int channels[3], const char *pts_name, int fdm, - int console); - -extern int wait0(pid_t pid); diff --git a/core/org.eclipse.cdt.core.solaris/library/exec_pty.c b/core/org.eclipse.cdt.core.solaris/library/exec_pty.c deleted file mode 100644 index 87241989a04..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/exec_pty.c +++ /dev/null @@ -1,197 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - * Mikhail Sennikovsky - bug 145737 - *******************************************************************************/ -#include "exec0.h" -#include "openpty.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* from pfind.c */ -extern char *pfind(const char *name, char * const envp[]); - -pid_t -exec_pty(const char *path, char *const argv[], char *const envp[], - const char *dirpath, int channels[3], const char *pts_name, int fdm, int console) -{ - int pipe2[2]; - pid_t childpid; - char *full_path; - - /* - * We use pfind() to check that the program exists and is an executable. - * If not pass the error up. Also execve() wants a full path. - */ - full_path = pfind(path, envp); - if (full_path == NULL) { - fprintf(stderr, "Unable to find full path for \"%s\"\n", (path) ? path : ""); - return -1; - } - - /* - * Make sure we can create our pipes before forking. - */ - if (console && channels != NULL) { - if (pipe(pipe2) < 0) { - fprintf(stderr, "%s(%d): returning due to error: %s\n", __FUNCTION__, __LINE__, strerror(errno)); - free(full_path); - return -1; - } - } - - childpid = fork(); - - if (childpid < 0) { - fprintf(stderr, "%s(%d): returning due to error: %s\n", __FUNCTION__, __LINE__, strerror(errno)); - free(full_path); - return -1; - } else if (childpid == 0) { /* child */ - - chdir(dirpath); - - if (channels != NULL) { - int fds; - - if (!console && setsid() < 0) { - perror("setsid()"); - return -1; - } - - fds = ptys_open(fdm, pts_name); - if (fds < 0) { - fprintf(stderr, "%s(%d): returning due to error: %s\n", __FUNCTION__, __LINE__, strerror(errno)); - return -1; - } - - /* Close the read end of pipe2 */ - if (console && close(pipe2[0]) == -1) { - perror("close(pipe2[0]))"); - } - - /* close the master, no need in the child */ - close(fdm); - - if (console) { - set_noecho(fds); - if (setpgid(getpid(), getpid()) < 0) { - perror("setpgid()"); - return -1; - } - } - - /* redirections */ - dup2(fds, STDIN_FILENO); /* dup stdin */ - dup2(fds, STDOUT_FILENO); /* dup stdout */ - if (console) { - dup2(pipe2[1], STDERR_FILENO); /* dup stderr */ - } else { - dup2(fds, STDERR_FILENO); /* dup stderr */ - } - close(fds); /* done with fds. */ - } - - /* Close all the fd's in the child */ - { - int fdlimit = sysconf(_SC_OPEN_MAX); - int fd = 3; - - while (fd < fdlimit) - close(fd++); - } - - if (envp[0] == NULL) { - execv(full_path, argv); - } else { - execve(full_path, argv, envp); - } - - _exit(127); - - } else if (childpid != 0) { /* parent */ - - ioctl(fdm, I_PUSH, "ptem"); - if (console) { - set_noecho(fdm); - } - if (channels != NULL) { - /* close the write end of pipe1 */ - if (console && close(pipe2[1]) == -1) - perror("close(pipe2[1])"); - - channels[0] = fdm; /* Input Stream. */ - channels[1] = fdm; /* Output Stream. */ - if (console) { /* stderr Stream. */ - channels[2] = pipe2[0]; - } else { - channels[2] = fdm; - } - } - - free(full_path); - return childpid; - } - - free(full_path); - return -1; /*NOT REACHED */ -} -#ifdef __STAND_ALONE__ -int main(int argc, char **argv, char **envp) { - const char *path = "./bufferring_test"; - int channels[3] = { -1, -1, -1}; - int status; - FILE *app_stdin; - FILE *app_stdout; - FILE *app_stderr; - char pts_name[32]; - int fdm; - char buffer[32]; - - fdm = ptym_open(pts_name); - status = exec_pty(path, argv, envp, ".", channels, pts_name, fdm); - if (status >= 0) { - //app_stdin = fdopen(channels[0], "w"); - app_stdout = fdopen(channels[1], "r"); - app_stderr = fdopen(channels[2], "r"); - if (app_stdout == NULL || app_stderr == NULL /*|| app_stdin == NULL*/) { - fprintf(stderr, "PROBLEMS\n"); - } else { - printf("PID %d\n", status); - if (isatty(fdm)) { - printf("Is atty\n"); - } - write(fdm, "foo\n", 4); - write(fdm, "bar\n", 4); - //fputs("foo\n", app_stdin); - //fputs("bar\n", app_stdin); - //fflush(app_stdin); - while(fgets(buffer, sizeof buffer, app_stdout) != NULL) { - fprintf(stdout, "STDOUT: %s\n", buffer); - } - while(fgets(buffer, sizeof buffer, app_stderr) != NULL) { - fprintf(stdout, "STDERR: %s\n", buffer); - } - } - } - fputs("bye\n", stdout); - close(channels[0]); - close(channels[1]); - close(channels[2]); - return 0; -} -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/exec_unix.c b/core/org.eclipse.cdt.core.solaris/library/exec_unix.c deleted file mode 100644 index 3098b9197d7..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/exec_unix.c +++ /dev/null @@ -1,156 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - * Mikhail Sennikovsky - bug 145737 - *******************************************************************************/ -#include "exec0.h" -#include -#include -#include -#include -#include -#include -#include - -/* from pfind.c */ -extern char *pfind(const char *name, char * const envp[]); - -pid_t -exec0(const char *path, char *const argv[], char *const envp[], - const char *dirpath, int channels[3]) -{ - int pipe0[2], pipe1[2], pipe2[2]; - pid_t childpid; - char *full_path; - - /* - * We use pfind() to check that the program exists and is an executable. - * If not pass the error up. - */ - full_path = pfind(path, envp); - if (full_path == NULL) { - fprintf(stderr, "Unable to find full path for \"%s\"\n", path); - return -1; - } - - /* - * Make sure we can create our pipes before forking. - */ - if (channels != NULL) { - if (pipe(pipe0) < 0 || pipe(pipe1) < 0 || pipe(pipe2) < 0) { - fprintf(stderr, "%s(%d): returning due to error.\n", - __FUNCTION__, __LINE__); - free(full_path); - return -1; - } - } - - childpid = fork1(); - - if (childpid < 0) { - fprintf(stderr, "%s(%d): returning due to error: %s\n", - __FUNCTION__, __LINE__, strerror(errno)); - free(full_path); - return -1; - } else if (childpid == 0) { /* child */ - char *ptr; - - chdir(dirpath); - - if (channels != NULL) { - /* Close the write end of pipe0 */ - if (close(pipe0[1]) == -1) - perror("close(pipe0[1])"); - - /* Close the read end of pipe1 */ - if (close(pipe1[0]) == -1) - perror("close(pipe1[0])"); - - /* Close the read end of pipe2 */ - if (close(pipe2[0]) == -1) - perror("close(pipe2[0]))"); - - /* redirections */ - dup2(pipe0[0], STDIN_FILENO); /* dup stdin */ - dup2(pipe1[1], STDOUT_FILENO); /* dup stdout */ - dup2(pipe2[1], STDERR_FILENO); /* dup stderr */ - } - - /* Close all the fd's in the child */ - { - int fdlimit = sysconf(_SC_OPEN_MAX); - int fd = 3; - - while (fd < fdlimit) - close(fd++); - } - - setpgid(getpid(), getpid()); - - if (envp[0] == NULL) { - execv(full_path, argv); - } else { - execve(full_path, argv, envp); - } - - _exit(127); - - } else if (childpid != 0) { /* parent */ - - if (channels != NULL) { - /* close the read end of pipe1 */ - if (close(pipe0[0]) == -1) - perror("close(pipe0[0])"); - - /* close the write end of pipe2 */ - if (close(pipe1[1]) == -1) - perror("close(pipe1[1])"); - - /* close the write end of pipe2 */ - if (close(pipe2[1]) == -1) - perror("close(pipe2[1])"); - - channels[0] = pipe0[1]; /* Output Stream. */ - channels[1] = pipe1[0]; /* Input Stream. */ - channels[2] = pipe2[0]; /* Input Stream. */ - } - - free(full_path); - return childpid; - } - - free(full_path); - return -1; /*NOT REACHED */ -} - - -int wait0(pid_t pid) -{ - int status; - int val = -1; - - if (pid < 0) - return -1; - - for (;;) { - if (waitpid(pid, &status, 0) < 0) { - if (errno == EINTR) { - // interrupted system call - retry - continue; - } - } - break; - } - if (WIFEXITED(status)) { - val = WEXITSTATUS(status); - } - - return val; -} diff --git a/core/org.eclipse.cdt.core.solaris/library/io.c b/core/org.eclipse.cdt.core.solaris/library/io.c deleted file mode 100644 index bee72541780..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/io.c +++ /dev/null @@ -1,113 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002 - 2005 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - *******************************************************************************/ -#include -#include -#include -#include -#include - -/* Header for class org_eclipse_cdt_utils_spawner_SpawnerInputStream */ -/* Header for class org_eclipse_cdt_utils_spawner_SpawnerOutputStream */ - -/* - * Class: org_eclipse_cdt_utils_spawner_SpawnerInputStream - * Method: read0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_SpawnerInputStream_read0(JNIEnv * env, - jobject jobj, - jint jfd, - jbyteArray buf, - jint buf_len) -{ - int fd; - int status; - jbyte *data; - int data_len; - - data = (*env)->GetByteArrayElements(env, buf, 0); - data_len = buf_len; - fd = jfd; - - status = read( fd, data, data_len ); - (*env)->ReleaseByteArrayElements(env, buf, data, 0); - - if (status == 0) { - /* EOF. */ - status = -1; - } else if (status == -1) { - /* Error, toss an exception */ - jclass exception = (*env)->FindClass(env, "java/io/IOException"); - if (exception == NULL) { - /* Give up. */ - return -1; - } - (*env)->ThrowNew(env, exception, "read error"); - } - - return status; -} - - -/* - * Class: org_eclipse_cdt_spawner_SpawnerInputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_SpawnerInputStream_close0(JNIEnv * env, - jobject jobj, - jint fd) -{ - return close(fd); -} - -/* - * Class: org_eclipse_cdt_utils_spawner_SpawnerOutputStream - * Method: write0 - * Signature: (II)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_SpawnerOutputStream_write0(JNIEnv * env, - jobject jobj, - jint jfd, - jbyteArray buf, - jint buf_len) -{ - int status; - int fd; - jbyte *data; - int data_len; - - data = (*env)->GetByteArrayElements(env, buf, 0); - data_len = buf_len; - fd = jfd; - - status = write(fd, data, data_len); - (*env)->ReleaseByteArrayElements(env, buf, data, 0); - - return status; -} - - -/* - * Class: org_eclipse_cdt_utils_spawner_SpawnerOutputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_SpawnerOutputStream_close0(JNIEnv * env, - jobject jobj, - jint fd) -{ - return close(fd); -} diff --git a/core/org.eclipse.cdt.core.solaris/library/openpty.c b/core/org.eclipse.cdt.core.solaris/library/openpty.c deleted file mode 100644 index b1bf0895c0a..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/openpty.c +++ /dev/null @@ -1,131 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - *******************************************************************************/ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include - -/** - * This is taken from R. W. Stevens book. - * Alain Magloire. - */ - -int ptym_open (char *pts_name); -int ptys_open (int fdm, const char * pts_name); - -int -openpty(int *amaster, int *aslave, char *name, struct termios *termp, struct winsize *winp) -{ - char line[20]; - line[0]=0; - *amaster = ptym_open(line); - if (*amaster < 0) - return -1; - *aslave = ptys_open(*amaster, line); - if (*aslave < 0) { - close(*amaster); - return -1; - } - if (name) - strcpy(name, line); -#ifndef TCSAFLUSH -#define TCSAFLUSH TCSETAF -#endif - if (termp) - (void) tcsetattr(*aslave, TCSAFLUSH, termp); -#ifdef TIOCSWINSZ - if (winp) - (void) ioctl(*aslave, TIOCSWINSZ, (char *)winp); -#endif - return 0; -} - -int -ptym_open(char * pts_name) -{ - int fdm; - char *ptr; - - strcpy(pts_name, "/dev/ptmx"); - fdm = open(pts_name, O_RDWR); - if (fdm < 0) - return -1; - if (grantpt(fdm) < 0) { /* grant access to slave */ - close(fdm); - return -2; - } - if (unlockpt(fdm) < 0) { /* clear slave's lock flag */ - close(fdm); - return -3; - } - ptr = ptsname(fdm); - if (ptr == NULL) { /* get slave's name */ - close (fdm); - return -4; - } - strcpy(pts_name, ptr); /* return name of slave */ - return fdm; /* return fd of master */ -} - -int -ptys_open(int fdm, const char * pts_name) -{ - int fds; - /* following should allocate controlling terminal */ - fds = open(pts_name, O_RDWR); - if (fds < 0) { - close(fdm); - return -5; - } - - if (ioctl(fds, I_PUSH, "ptem") < 0) { - printf("pterm:%s\n", strerror(errno)); - close(fdm); - close(fds); - return -6; - } - if (ioctl(fds, I_PUSH, "ldterm") < 0) { - printf("ldterm %s\n", strerror(errno)); - close(fdm); - close(fds); - return -7; - } - return fds; -} - -void -set_noecho(int fd) -{ - struct termios stermios; - if (tcgetattr(fd, &stermios) < 0) { - return ; - } - - /* turn off echo */ - stermios.c_lflag &= ~(ECHO | ECHOE | ECHOK | ECHONL); - /* Turn off the NL to CR/NL mapping ou output. */ - /*stermios.c_oflag &= ~(ONLCR);*/ - - stermios.c_iflag |= (IGNCR); - - tcsetattr(fd, TCSANOW, &stermios); -} - diff --git a/core/org.eclipse.cdt.core.solaris/library/openpty.h b/core/org.eclipse.cdt.core.solaris/library/openpty.h deleted file mode 100644 index 06b9fa758c7..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/openpty.h +++ /dev/null @@ -1,17 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - *******************************************************************************/ -#ifndef _OPENPTY_H -#define _OPENPTY_H -int ptym_open (char *pts_name); -int ptys_open (int fdm, const char * pts_name); -void set_noecho(int fd); -#endif diff --git a/core/org.eclipse.cdt.core.solaris/library/pfind.c b/core/org.eclipse.cdt.core.solaris/library/pfind.c deleted file mode 100644 index 635d66f5193..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/pfind.c +++ /dev/null @@ -1,110 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - * Mikhail Sennikovsky - bug 145737 - * Everton Rufino Constantino (IBM) - bug 237611 - *******************************************************************************/ -/* - * pfind.c - Search for a binary in $PATH. - */ - -#include -#include -#include -#include -#include - -#ifndef PATH_MAX -#define PATH_MAX 1024 -#endif - - -#define PATH_DEF "PATH=" -const int path_def_len = 5; /* strlen(PATH_DEF); */ - -char * path_val(char * const envp[]) -{ - int i; - if (envp == NULL || envp[0] == NULL) - return getenv("PATH" ); - - for(i = 0; envp[i] != NULL; i++){ - char* p = envp[i]; - if(!strncmp(PATH_DEF, p, path_def_len)){ - return p + path_def_len; - } - } - - return NULL; -} - -char * pfind(const char *name, char * const envp[]) -{ - char *tok; - char *sp; - char *path; - char fullpath[PATH_MAX+1]; - - /* Sanity check. */ - if (name == NULL) { - fprintf(stderr, "pfind(): Null argument.\n"); - return NULL; - } - - /* For absolute name or name with a path, check if it is an executable. */ - if (name[0] == '/' || name[0] == '.') { - if (access(name, X_OK) == 0) { - return strdup(name); - } - return NULL; - } - - /* Search in the PATH environment. */ - path = path_val( envp ); - - if (path == NULL || strlen(path) <= 0) { - fprintf(stderr, "Unable to get $PATH.\n"); - return NULL; - } - - /* The value return by getenv() is readonly */ - path = strdup(path); - - tok = strtok_r(path, ":", &sp); - while (tok != NULL) { - snprintf(fullpath, sizeof(fullpath) - 1, "%s/%s", tok, name); - - if (access(fullpath, X_OK) == 0) { - free(path); - return strdup(fullpath); - } - - tok = strtok_r( NULL, ":", &sp ); - } - - free(path); - return NULL; -} - -#ifdef BUILD_WITH_MAIN -int main(int argc, char **argv) -{ - int i; - char *fullpath; - - for (i = 1; i= 0) { - if (console) { - // turn off echo - set_noecho(master); - } - - /* Get a reference to the obj's class */ - cls = (*env)->GetObjectClass(env, jobj); - - /* Set the master fd. */ - fid = (*env)->GetFieldID(env, cls, "master", "I"); - if (fid == NULL) { - return NULL; - } - (*env)->SetIntField(env, jobj, fid, (jint)master); - - /* Create a new String for the slave. */ - jstr = (*env)->NewStringUTF(env, line); - } - return jstr; -} - -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_pty_PTY_change_1window_1size - (JNIEnv *env, jobject jobj, jint fdm, jint width, jint height) -{ -#ifdef TIOCGWINSZ - struct winsize win; - - win.ws_col = width; - win.ws_row = height; - win.ws_xpixel = 0; - win.ws_ypixel = 0; - - return ioctl(fdm, TIOCSWINSZ, &win); -#else - return 0; -#endif -} diff --git a/core/org.eclipse.cdt.core.solaris/library/ptyio.c b/core/org.eclipse.cdt.core.solaris/library/ptyio.c deleted file mode 100644 index 49e42793841..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/ptyio.c +++ /dev/null @@ -1,113 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002 - 2005 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - *******************************************************************************/ -#include -#include -#include -#include -#include - -/* Header for class _org_eclipse_cdt_utils_pty_PTYInputStream */ -/* Header for class _org_eclipse_cdt_utils_pty_PTYOutputStream */ - -/* - * Class: org_eclipse_cdt_utils_pty_PTYInputStream - * Method: read0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_pty_PTYInputStream_read0(JNIEnv * env, - jobject jobj, - jint jfd, - jbyteArray buf, - jint buf_len) -{ - int fd; - int status; - jbyte *data; - int data_len; - - data = (*env)->GetByteArrayElements(env, buf, 0); - data_len = buf_len; - fd = jfd; - - status = read( fd, data, data_len ); - (*env)->ReleaseByteArrayElements(env, buf, data, 0); - - if (status == 0) { - /* EOF. */ - status = -1; - } else if (status == -1) { - /* Error, toss an exception */ - jclass exception = (*env)->FindClass(env, "java/io/IOException"); - if (exception == NULL) { - /* Give up. */ - return -1; - } - (*env)->ThrowNew(env, exception, "read error"); - } - - return status; -} - - -/* - * Class: org_eclipse_cdt_utils_pty_PTYInputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_pty_PTYInputStream_close0(JNIEnv * env, - jobject jobj, - jint fd) -{ - return close(fd); -} - -/* - * Class: org_eclipse_cdt_utils_pty_PTYOutputStream - * Method: write0 - * Signature: (II)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_pty_PTYOutputStream_write0(JNIEnv * env, - jobject jobj, - jint jfd, - jbyteArray buf, - jint buf_len) -{ - int status; - int fd; - jbyte *data; - int data_len; - - data = (*env)->GetByteArrayElements(env, buf, 0); - data_len = buf_len; - fd = jfd; - - status = write(fd, data, data_len); - (*env)->ReleaseByteArrayElements(env, buf, data, 0); - - return status; -} - - -/* - * Class: org_eclipse_cdt_utils_pty_PTYOutputStream - * Method: close0 - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_pty_PTYOutputStream_close0(JNIEnv * env, - jobject jobj, - jint fd) -{ - return close(fd); -} diff --git a/core/org.eclipse.cdt.core.solaris/library/spawner.c b/core/org.eclipse.cdt.core.solaris/library/spawner.c deleted file mode 100644 index 1d221516a54..00000000000 --- a/core/org.eclipse.cdt.core.solaris/library/spawner.c +++ /dev/null @@ -1,301 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2002, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - initial API and implementation - * Wind River Systems, Inc. - *******************************************************************************/ -#include -#include -#include -#include -#include -#include - -#include "exec0.h" -#include - - -#define DEBUGIT 0 - - -/* - * Header for class org_eclipse_cdt_utils_spawner_Spawner - */ - - -#if DEBUGIT -static void print_array(char **c_array) -{ - if (c_array) { - char **p = c_array; - for (; *p; p++) { - if (*p) { - fprintf(stderr, " %s", *p); - } - } - } else { - fprintf(stderr, "null"); - } - fprintf(stderr, "\n"); -} -#endif - - -static char **alloc_c_array(JNIEnv * env, jobjectArray j_array) -{ - int i; - jint c_array_size = (*env)->GetArrayLength(env, j_array); - char **c_array = calloc(c_array_size + 1, sizeof(*c_array)); - - if (c_array == NULL) - return NULL; - - for (i = 0; i < c_array_size; i++) { - jstring j_str = - (jstring) (*env)->GetObjectArrayElement(env, j_array, i); - const char *c_str = (*env)->GetStringUTFChars(env, j_str, NULL); - c_array[i] = (char *) strdup(c_str); - (*env)->ReleaseStringUTFChars(env, j_str, c_str); - (*env)->DeleteLocalRef(env, j_str); - } - - return c_array; -} - - -static void free_c_array(char **c_array) -{ - if (c_array) { - char **p = c_array; - for (; *p; p++) { - if (*p) { - free(*p); - } - } - free(c_array); - } -} - - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: exec2 - * Signature: ([Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[ILorg/eclipse/cdt/utils/pty/PTY;)I - */ -JNIEXPORT jint JNICALL Java_org_eclipse_cdt_utils_spawner_Spawner_exec2 - (JNIEnv *env, jobject jobj, jobjectArray jcmd, jobjectArray jenv, jstring jdir, jintArray jchannels, - jstring jslaveName, jint masterFD, jboolean console) -{ - jint *channels = (*env)->GetIntArrayElements(env, jchannels, 0); - const char *dirpath = (*env)->GetStringUTFChars(env, jdir, NULL); - const char *pts_name = (*env)->GetStringUTFChars(env, jslaveName, NULL); - char **cmd = NULL; - char **envp = NULL; - int fd[3]; - pid_t pid = -1; - - if (channels == NULL) - goto bail_out; - - cmd = alloc_c_array(env, jcmd); - if (cmd == NULL) - goto bail_out; - - envp = alloc_c_array(env, jenv); - if (envp == NULL) - goto bail_out; - -#if DEBUGIT - fprintf(stderr, "command:"); - print_array(cmd); - fprintf(stderr, "Envp:"); - print_array(envp); - fprintf(stderr, "dirpath: %s\n", dirpath); - fprintf(stderr, "pts_name: %s\n", pts_name); -#endif - - pid = exec_pty(cmd[0], cmd, envp, dirpath, fd, pts_name, masterFD, console); - if (pid < 0) - goto bail_out; - - channels[0] = fd[0]; - channels[1] = fd[1]; - channels[2] = fd[2]; - - bail_out: - (*env)->ReleaseIntArrayElements(env, jchannels, channels, 0); - (*env)->ReleaseStringUTFChars(env, jdir, dirpath); - (*env)->ReleaseStringUTFChars(env, jslaveName, pts_name); - if (cmd) - free_c_array(cmd); - if (envp) - free_c_array(envp); - return pid; -} - - -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_Spawner_exec1(JNIEnv * env, jobject jobj, - jobjectArray jcmd, - jobjectArray jenv, - jstring jdir) -{ - const char *dirpath = (*env)->GetStringUTFChars(env, jdir, NULL); - char **cmd = NULL; - char **envp = NULL; - pid_t pid = -1; - - cmd = alloc_c_array(env, jcmd); - if (cmd == NULL) - goto bail_out; - - envp = alloc_c_array(env, jenv); - if (envp == NULL) - goto bail_out; - -#if DEBUGIT - fprintf(stderr, "command:"); - print_array(cmd); - fprintf(stderr, "Envp:"); - print_array(envp); - fprintf(stderr, "dirpath: %s\n", dirpath); -#endif - - pid = exec0(cmd[0], cmd, envp, dirpath, NULL); - if (pid < 0) - goto bail_out; - - bail_out: - (*env)->ReleaseStringUTFChars(env, jdir, dirpath); - if (cmd) - free_c_array(cmd); - if (envp) - free_c_array(envp); - return pid; -} - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: exec0 - * Signature: ([Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_Spawner_exec0(JNIEnv * env, jobject jobj, - jobjectArray jcmd, - jobjectArray jenv, - jstring jdir, - jintArray jchannels) -{ - jint *channels = (*env)->GetIntArrayElements(env, jchannels, 0); - const char *dirpath = (*env)->GetStringUTFChars(env, jdir, NULL); - char **cmd = NULL; - char **envp = NULL; - int fd[3]; - pid_t pid = -1; - - if (channels == NULL) - goto bail_out; - - cmd = alloc_c_array(env, jcmd); - if (cmd == NULL) - goto bail_out; - - envp = alloc_c_array(env, jenv); - if (envp == NULL) - goto bail_out; - -#if DEBUGIT - fprintf(stderr, "command:"); - print_array(cmd); - fprintf(stderr, "Envp:"); - print_array(envp); - fprintf(stderr, "dirpath: %s\n", dirpath); -#endif - - pid = exec0(cmd[0], cmd, envp, dirpath, fd); - if (pid < 0) - goto bail_out; - - channels[0] = fd[0]; - channels[1] = fd[1]; - channels[2] = fd[2]; - - bail_out: - (*env)->ReleaseIntArrayElements(env, jchannels, channels, 0); - (*env)->ReleaseStringUTFChars(env, jdir, dirpath); - if (cmd) - free_c_array(cmd); - if (envp) - free_c_array(envp); - return pid; -} - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: raise - * Signature: (II)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_Spawner_raise(JNIEnv * env, jobject jobj, - jint pid, jint sig) -{ - int status = -1; - - switch (sig) { - case 0: /* NOOP */ - status = killpg(pid, 0); - if(status == -1) { - status = kill(pid, 0); - } - break; - - case 2: /* INTERRUPT */ - status = killpg(pid, SIGINT); - if(status == -1) { - status = kill(pid, SIGINT); - } - break; - - case 9: /* KILL */ - status = killpg(pid, SIGKILL); - if(status == -1) { - status = kill(pid, SIGKILL); - } - break; - - case 15: /* TERM */ - status = killpg(pid, SIGTERM); - if(status == -1) { - status = kill(pid, SIGTERM); - } - break; - - default: - status = killpg(pid, sig); /* WHAT ?? */ - if(status == -1) { - status = kill(pid, sig); /* WHAT ?? */ - } - break; - } - - return status; -} - - - -/* - * Class: org_eclipse_cdt_utils_spawner_Spawner - * Method: waitFor - * Signature: (I)I - */ -JNIEXPORT jint JNICALL -Java_org_eclipse_cdt_utils_spawner_Spawner_waitFor(JNIEnv * env, - jobject jobj, jint pid) -{ - return wait0(pid); -} diff --git a/core/org.eclipse.cdt.core.solaris/os/solaris/sparc/libpty.so b/core/org.eclipse.cdt.core.solaris/os/solaris/sparc/libpty.so deleted file mode 100644 index 7e5763d186c3396a3adf4366fbd9888baf7c7ec8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10608 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 Y{|O!wOkK|-!Sp#`AI|G|O)TU4AMq~JWB>pF diff --git a/core/org.eclipse.cdt.core.solaris/plugin.properties b/core/org.eclipse.cdt.core.solaris/plugin.properties deleted file mode 100644 index 6b680ec07d0..00000000000 --- a/core/org.eclipse.cdt.core.solaris/plugin.properties +++ /dev/null @@ -1,2 +0,0 @@ -fragmentName.linux=C/C++ Development Tools Core for Solaris -providerName=Eclipse CDT diff --git a/core/org.eclipse.cdt.core.solaris/pom.xml b/core/org.eclipse.cdt.core.solaris/pom.xml deleted file mode 100644 index 876799651bd..00000000000 --- a/core/org.eclipse.cdt.core.solaris/pom.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - 4.0.0 - - - org.eclipse.cdt - cdt-parent - 9.0.0-SNAPSHOT - ../../pom.xml - - - 5.3.0-SNAPSHOT - org.eclipse.cdt.core.solaris - eclipse-plugin - - - - - org.eclipse.tycho - target-platform-configuration - ${tycho-version} - - p2 - consider - - - solaris - gtk - sparc - - - - - - - - diff --git a/core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessInfo.java b/core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessInfo.java deleted file mode 100644 index cad68585389..00000000000 --- a/core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessInfo.java +++ /dev/null @@ -1,55 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2006 QNX Software Systems and others. - * 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: - * QNX Software Systems - Initial API and implementation - *******************************************************************************/ -package org.eclipse.cdt.internal.core.solaris; - -import org.eclipse.cdt.core.IProcessInfo; - -/** - * @author alain - * - * To change this generated comment edit the template variable "typecomment": - * Window>Preferences>Java>Templates. - * To enable and disable the creation of type comments go to - * Window>Preferences>Java>Code Generation. - */ -public class ProcessInfo implements IProcessInfo { - - int pid; - String name; - - public ProcessInfo(String pidString, String name) { - try { - pid = Integer.parseInt(pidString); - } catch (NumberFormatException e) { - } - this.name = name; - } - - public ProcessInfo(int pid, String name) { - this.pid = pid; - this.name = name; - } - - /** - * @see org.eclipse.cdt.core.IProcessInfo#getName() - */ - public String getName() { - return name; - } - - /** - * @see org.eclipse.cdt.core.IProcessInfo#getPid() - */ - public int getPid() { - return pid; - } - -} diff --git a/core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessList.java b/core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessList.java deleted file mode 100644 index d6623cae7da..00000000000 --- a/core/org.eclipse.cdt.core.solaris/src/org/eclipse/cdt/internal/core/solaris/ProcessList.java +++ /dev/null @@ -1,78 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2010 QNX Software Systems and others. - * 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: - * QNX Software Systems - Initial API and implementation - *******************************************************************************/ -package org.eclipse.cdt.internal.core.solaris; - -import java.io.BufferedReader; -import java.io.InputStreamReader; -import java.util.ArrayList; - -import org.eclipse.cdt.core.IProcessInfo; -import org.eclipse.cdt.core.IProcessList; -import org.eclipse.cdt.utils.spawner.ProcessFactory; - -/** - * Insert the type's description here. - * @see IProcessList - */ -public class ProcessList implements IProcessList { - - ProcessInfo[] empty = new ProcessInfo[0]; - - public ProcessList() { - } - - /** - * Insert the method's description here. - * @see IProcessList#getProcessList - */ - public IProcessInfo [] getProcessList() { - Process ps; - BufferedReader psOutput; - String[] args = {"/usr/bin/ps", "-e", "-o", "pid,args"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ - - try { - ps = ProcessFactory.getFactory().exec(args); - psOutput = new BufferedReader(new InputStreamReader(ps.getInputStream())); - } catch(Exception e) { - return new IProcessInfo[0]; - } - - //Read the output and parse it into an array list - ArrayList procInfo = new ArrayList(); - - try { - String lastline; - while ((lastline = psOutput.readLine()) != null) { - //The format of the output should be - //PID space name - - lastline = lastline.trim(); - int index = lastline.indexOf(' '); - if (index != -1) { - String pidString = lastline.substring(0, index).trim(); - try { - int pid = Integer.parseInt(pidString); - String arg = lastline.substring(index + 1); - procInfo.add(new ProcessInfo(pid, arg)); - } catch (NumberFormatException e) { - } - } - } - psOutput.close(); - } catch(Exception e) { - /* Ignore */ - } - - ps.destroy(); - return (IProcessInfo [])procInfo.toArray(new IProcessInfo[procInfo.size()]); - } - -} diff --git a/cross/org.eclipse.cdt.build.crossgcc-feature/sourceTemplateFeature/feature.xml b/cross/org.eclipse.cdt.build.crossgcc-feature/sourceTemplateFeature/feature.xml index 5ac79778273..e45d18849c0 100644 --- a/cross/org.eclipse.cdt.build.crossgcc-feature/sourceTemplateFeature/feature.xml +++ b/cross/org.eclipse.cdt.build.crossgcc-feature/sourceTemplateFeature/feature.xml @@ -103,16 +103,6 @@ version="5.0.0.qualifier" fragment="true"/> - - - - core/org.eclipse.cdt.core.win32.x86_64 core/org.eclipse.cdt.core.macosx core/org.eclipse.cdt.core.aix - core/org.eclipse.cdt.core.solaris native/org.eclipse.cdt.native.serial releng/org.eclipse.cdt.native-feature releng/org.eclipse.cdt.native.source-feature @@ -414,11 +413,6 @@ gtk ppc - - solaris - gtk - sparc - linux gtk @@ -482,11 +476,6 @@ gtk ppc - - solaris - gtk - sparc - diff --git a/releng/org.eclipse.cdt.native-feature/feature.xml b/releng/org.eclipse.cdt.native-feature/feature.xml index 4409e55ad89..385a3cf77c3 100644 --- a/releng/org.eclipse.cdt.native-feature/feature.xml +++ b/releng/org.eclipse.cdt.native-feature/feature.xml @@ -93,16 +93,6 @@ fragment="true" unpack="false"/> - - - -