*** empty log message ***
This commit is contained in:
		@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * $Id: Awk.java,v 1.24 2007-01-31 09:31:02 bacon Exp $
 | 
					 * $Id: Awk.java,v 1.25 2007-02-01 07:23:59 bacon Exp $
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package ase.awk;
 | 
					package ase.awk;
 | 
				
			||||||
@ -54,7 +54,7 @@ public abstract class Awk
 | 
				
			|||||||
	private native void open () throws Exception;
 | 
						private native void open () throws Exception;
 | 
				
			||||||
	public  native void close ();
 | 
						public  native void close ();
 | 
				
			||||||
	public  native void parse () throws Exception;
 | 
						public  native void parse () throws Exception;
 | 
				
			||||||
	public  native void run (String main) throws Exception;
 | 
						public  native void run (String main, String[] args) throws Exception;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	private native int getmaxdepth (int id);
 | 
						private native int getmaxdepth (int id);
 | 
				
			||||||
	private native void setmaxdepth (int id, int depth);
 | 
						private native void setmaxdepth (int id, int depth);
 | 
				
			||||||
@ -79,10 +79,20 @@ public abstract class Awk
 | 
				
			|||||||
	private native String valtostr (
 | 
						private native String valtostr (
 | 
				
			||||||
		long runid, Object obj) throws Exception;
 | 
							long runid, Object obj) throws Exception;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* == simpler run method == */
 | 
						/* == simpler run methods == */
 | 
				
			||||||
 | 
						public void run (String main) throws Exception
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							run (main, null);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void run (String[] args) throws Exception
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							run (null, args);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	public void run () throws Exception
 | 
						public void run () throws Exception
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		run (null);
 | 
							run (null, null);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* == builtin functions == */
 | 
						/* == builtin functions == */
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * $Id: StdAwk.java,v 1.16 2007-01-31 09:31:03 bacon Exp $
 | 
					 * $Id: StdAwk.java,v 1.17 2007-02-01 07:23:59 bacon Exp $
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package ase.awk;
 | 
					package ase.awk;
 | 
				
			||||||
@ -52,18 +52,29 @@ public abstract class StdAwk extends Awk
 | 
				
			|||||||
		super.parse ();
 | 
							super.parse ();
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	public void run (String main) throws Exception
 | 
						public void run (String main, String[] args) throws Exception
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		cin = consoleInputNames (); cin_no = 0;
 | 
							cin = consoleInputNames (); cin_no = 0;
 | 
				
			||||||
		cout = consoleOutputNames (); cout_no = 0;
 | 
							cout = consoleOutputNames (); cout_no = 0;
 | 
				
			||||||
		super.run (main);
 | 
							super.run (main, args);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void run (String main) throws Exception
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							run (main, null);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						public void run (String[] args) throws Exception
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							run (null, args);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	public void run () throws Exception
 | 
						public void run () throws Exception
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		run (null);
 | 
							run (null, null);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/* == source code names == */
 | 
						/* == source code names == */
 | 
				
			||||||
	protected abstract String[] sourceInputNames ();
 | 
						protected abstract String[] sourceInputNames ();
 | 
				
			||||||
	protected String[] sourceOutputNames () { return null; }
 | 
						protected String[] sourceOutputNames () { return null; }
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										137
									
								
								ase/awk/jni.c
									
									
									
									
									
								
							
							
						
						
									
										137
									
								
								ase/awk/jni.c
									
									
									
									
									
								
							@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * $Id: jni.c,v 1.63 2007-01-31 09:31:03 bacon Exp $
 | 
					 * $Id: jni.c,v 1.64 2007-02-01 07:23:59 bacon Exp $
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include <stdio.h>
 | 
					#include <stdio.h>
 | 
				
			||||||
@ -396,7 +396,34 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_parse (JNIEnv* env, jobject obj)
 | 
				
			|||||||
		(*env)->DeleteLocalRef (env, run_data.object_class); \
 | 
							(*env)->DeleteLocalRef (env, run_data.object_class); \
 | 
				
			||||||
	} while (0)
 | 
						} while (0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring mfn)
 | 
					static ase_char_t* java_strxdup (jchar* str, jint len)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						if (len > 0 && ASE_SIZEOF(jchar) != ASE_SIZEOF(ase_char_t))
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							ase_char_t* tmp;
 | 
				
			||||||
 | 
							ase_size_t i;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							tmp = (ase_char_t*) malloc ((len+1) * ASE_SIZEOF(ase_char_t));
 | 
				
			||||||
 | 
							if (tmp == ASE_NULL) return ASE_NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							for (i = 0; i < (ase_size_t)len; i++) tmp[i] = (ase_char_t)str[i];
 | 
				
			||||||
 | 
							tmp[i] = ASE_T('\0');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return tmp;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							ase_char_t* tmp;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							tmp = (ase_char_t*) malloc ((len+1) * ASE_SIZEOF(ase_char_t));
 | 
				
			||||||
 | 
							if (tmp == ASE_NULL) return ASE_NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							ase_awk_strncpy (tmp, (ase_char_t*)str, (ase_size_t)len);
 | 
				
			||||||
 | 
							return tmp;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring mfn, jobjectArray args)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	jclass class;
 | 
						jclass class;
 | 
				
			||||||
	jfieldID handle;
 | 
						jfieldID handle;
 | 
				
			||||||
@ -407,9 +434,11 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring m
 | 
				
			|||||||
	run_data_t run_data;
 | 
						run_data_t run_data;
 | 
				
			||||||
	ase_char_t* mmm;
 | 
						ase_char_t* mmm;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	ase_size_t len;
 | 
						ase_size_t len, i;
 | 
				
			||||||
	jchar* ptr;
 | 
						jchar* ptr;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						ase_awk_runarg_t* runarg = NULL;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	class = (*env)->GetObjectClass (env, obj);
 | 
						class = (*env)->GetObjectClass (env, obj);
 | 
				
			||||||
	handle = (*env)->GetFieldID (env, class, FIELD_HANDLE, "J");
 | 
						handle = (*env)->GetFieldID (env, class, FIELD_HANDLE, "J");
 | 
				
			||||||
	(*env)->DeleteLocalRef (env, class);
 | 
						(*env)->DeleteLocalRef (env, class);
 | 
				
			||||||
@ -498,6 +527,8 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring m
 | 
				
			|||||||
	}
 | 
						}
 | 
				
			||||||
	else
 | 
						else
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
 | 
							/* process the main entry point */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		len = (*env)->GetStringLength (env, mfn);
 | 
							len = (*env)->GetStringLength (env, mfn);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (len > 0 && ASE_SIZEOF(jchar) != ASE_SIZEOF(ase_char_t))
 | 
							if (len > 0 && ASE_SIZEOF(jchar) != ASE_SIZEOF(ase_char_t))
 | 
				
			||||||
@ -555,9 +586,99 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring m
 | 
				
			|||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (ase_awk_run (awk, 
 | 
					
 | 
				
			||||||
		mmm, &runios, ASE_NULL, ASE_NULL, &run_data) == -1)
 | 
						if (args != NULL)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
 | 
							/* compose arguments */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							len = (*env)->GetArrayLength (env, args);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							runarg = malloc (sizeof(ase_awk_runarg_t) * (len+1));
 | 
				
			||||||
 | 
							if (runarg == NULL)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if (mmm != NULL && mmm != mfn) free (mmm);
 | 
				
			||||||
 | 
								if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
				
			||||||
 | 
								DELETE_CLASS_REFS (env, run_data);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								throw_exception (
 | 
				
			||||||
 | 
									env, 
 | 
				
			||||||
 | 
									ase_awk_geterrstr(ASE_AWK_ENOMEM), 
 | 
				
			||||||
 | 
									ASE_AWK_ENOMEM,
 | 
				
			||||||
 | 
									0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								return;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							for (i = 0; i < len; i++)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								jchar* tmp;
 | 
				
			||||||
 | 
								jstring obj = (jstring)(*env)->GetObjectArrayElement (env, args, i);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								runarg[i].len = (*env)->GetStringLength (env, obj);	
 | 
				
			||||||
 | 
								tmp = (*env)->GetStringChars (env, obj, JNI_FALSE);
 | 
				
			||||||
 | 
								if (tmp == NULL)
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									ase_size_t j;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									for (j = 0; j < i; j++) free (runarg[j].ptr);
 | 
				
			||||||
 | 
									free (runarg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									(*env)->DeleteLocalRef (env, obj);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (mmm != NULL && mmm != mfn) free (mmm);
 | 
				
			||||||
 | 
									if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
				
			||||||
 | 
									DELETE_CLASS_REFS (env, run_data);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									throw_exception (
 | 
				
			||||||
 | 
										env, 
 | 
				
			||||||
 | 
										ase_awk_geterrstr(ASE_AWK_ENOMEM), 
 | 
				
			||||||
 | 
										ASE_AWK_ENOMEM,
 | 
				
			||||||
 | 
										0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									return;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								runarg[i].ptr = java_strxdup (tmp, runarg[i].len);
 | 
				
			||||||
 | 
								if (runarg[i].ptr == NULL)
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									ase_size_t j;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									for (j = 0; j < i; j++) free (runarg[j].ptr);
 | 
				
			||||||
 | 
									free (runarg);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									(*env)->ReleaseStringChars (env, obj, tmp);
 | 
				
			||||||
 | 
									(*env)->DeleteLocalRef (env, obj);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (mmm != NULL && mmm != mfn) free (mmm);
 | 
				
			||||||
 | 
									if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
				
			||||||
 | 
									DELETE_CLASS_REFS (env, run_data);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									throw_exception (
 | 
				
			||||||
 | 
										env, 
 | 
				
			||||||
 | 
										ase_awk_geterrstr(ASE_AWK_ENOMEM), 
 | 
				
			||||||
 | 
										ASE_AWK_ENOMEM,
 | 
				
			||||||
 | 
										0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									return;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								
 | 
				
			||||||
 | 
								(*env)->ReleaseStringChars (env, obj, tmp);
 | 
				
			||||||
 | 
								(*env)->DeleteLocalRef (env, obj);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							runarg[i].ptr = NULL;
 | 
				
			||||||
 | 
							runarg[i].len = 0;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (ase_awk_run (awk, 
 | 
				
			||||||
 | 
							mmm, &runios, ASE_NULL, runarg, &run_data) == -1)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if (runarg != NULL)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								for (i = 0; i < len; i++) free (runarg[i].ptr);
 | 
				
			||||||
 | 
								free (runarg);
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (mmm != NULL && mmm != mfn) free (mmm);
 | 
							if (mmm != NULL && mmm != mfn) free (mmm);
 | 
				
			||||||
		if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
							if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
				
			||||||
		DELETE_CLASS_REFS (env, run_data);
 | 
							DELETE_CLASS_REFS (env, run_data);
 | 
				
			||||||
@ -570,6 +691,12 @@ JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring m
 | 
				
			|||||||
		return;
 | 
							return;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if (runarg != NULL)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							for (i = 0; i < len; i++) free (runarg[i].ptr);
 | 
				
			||||||
 | 
							free (runarg);
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if (mmm != NULL && mmm != mfn) free (mmm);
 | 
						if (mmm != NULL && mmm != mfn) free (mmm);
 | 
				
			||||||
	if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
						if (ptr != NULL) (*env)->ReleaseStringChars (env, mfn, ptr);
 | 
				
			||||||
	DELETE_CLASS_REFS (env, run_data);
 | 
						DELETE_CLASS_REFS (env, run_data);
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * $Id: jni.h,v 1.20 2007-01-31 09:31:03 bacon Exp $
 | 
					 * $Id: jni.h,v 1.21 2007-02-01 07:23:59 bacon Exp $
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#ifndef _ASE_AWK_JNI_H_
 | 
					#ifndef _ASE_AWK_JNI_H_
 | 
				
			||||||
@ -18,7 +18,8 @@ extern "C" {
 | 
				
			|||||||
JNIEXPORT void JNICALL Java_ase_awk_Awk_open (JNIEnv* env, jobject obj);
 | 
					JNIEXPORT void JNICALL Java_ase_awk_Awk_open (JNIEnv* env, jobject obj);
 | 
				
			||||||
JNIEXPORT void JNICALL Java_ase_awk_Awk_close (JNIEnv* env, jobject obj);
 | 
					JNIEXPORT void JNICALL Java_ase_awk_Awk_close (JNIEnv* env, jobject obj);
 | 
				
			||||||
JNIEXPORT void JNICALL Java_ase_awk_Awk_parse (JNIEnv* env, jobject obj);
 | 
					JNIEXPORT void JNICALL Java_ase_awk_Awk_parse (JNIEnv* env, jobject obj);
 | 
				
			||||||
JNIEXPORT void JNICALL Java_ase_awk_Awk_run (JNIEnv* env, jobject obj, jstring mfn);
 | 
					JNIEXPORT void JNICALL Java_ase_awk_Awk_run (
 | 
				
			||||||
 | 
						JNIEnv* env, jobject obj, jstring mfn, jobjectArray args);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
JNIEXPORT void JNICALL Java_ase_awk_Awk_addbfn (
 | 
					JNIEXPORT void JNICALL Java_ase_awk_Awk_addbfn (
 | 
				
			||||||
	JNIEnv* env, jobject obj, jstring name, jint min_args, jint max_args);
 | 
						JNIEnv* env, jobject obj, jstring name, jint min_args, jint max_args);
 | 
				
			||||||
 | 
				
			|||||||
@ -17,7 +17,7 @@ CC = gcc
 | 
				
			|||||||
AR = ar
 | 
					AR = ar
 | 
				
			||||||
LD = ld
 | 
					LD = ld
 | 
				
			||||||
RANLIB = ranlib
 | 
					RANLIB = ranlib
 | 
				
			||||||
CFLAGS = -Wall -O2 -D_REENTRANT -D_THREAD_SAFE -fPIC -fno-omit-frame-pointer -fno-strict-aliasing -I../.. $(JNI_INCPATH)
 | 
					CFLAGS = -Wall -O2 -D_REENTRANT -D_THREAD_SAFE -fPIC -I../.. $(JNI_INCPATH)
 | 
				
			||||||
LDFLAGS = 
 | 
					LDFLAGS = 
 | 
				
			||||||
LIBS = 
 | 
					LIBS = 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
/*
 | 
					/*
 | 
				
			||||||
 * $Id: Awk.java,v 1.25 2007-01-31 09:31:29 bacon Exp $
 | 
					 * $Id: Awk.java,v 1.26 2007-02-01 07:23:59 bacon Exp $
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
package ase.test.awk;
 | 
					package ase.test.awk;
 | 
				
			||||||
@ -101,7 +101,12 @@ public class Awk extends ase.awk.StdAwk
 | 
				
			|||||||
			System.out.println ("Option: [" + awk.getOption() + "]");
 | 
								System.out.println ("Option: [" + awk.getOption() + "]");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
			awk.parse ();
 | 
								awk.parse ();
 | 
				
			||||||
			awk.run ("main");
 | 
								
 | 
				
			||||||
 | 
								String[] aaa = new String[3];
 | 
				
			||||||
 | 
								aaa[0] = "abcdefg";
 | 
				
			||||||
 | 
								aaa[1] = "qwerty";
 | 
				
			||||||
 | 
								aaa[2] = "awk is bad";
 | 
				
			||||||
 | 
								awk.run ("main", aaa);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		catch (ase.awk.Exception e)
 | 
							catch (ase.awk.Exception e)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
				
			|||||||
@ -2,7 +2,7 @@ SRCS = awk.c
 | 
				
			|||||||
OBJS = $(SRCS:.c=.o)
 | 
					OBJS = $(SRCS:.c=.o)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
CC = gcc
 | 
					CC = gcc
 | 
				
			||||||
CFLAGS = -O2 -Wall -D_REENTRANT -D_THREAD_SAFE -fPIC -fno-omit-frame-pointer -fno-strict-aliasing -I../../..
 | 
					CFLAGS = -O2 -Wall -D_REENTRANT -D_THREAD_SAFE -fPIC -I../../..
 | 
				
			||||||
LDFLAGS =  -L../../awk
 | 
					LDFLAGS =  -L../../awk
 | 
				
			||||||
LIBS =  -laseawk -lm
 | 
					LIBS =  -laseawk -lm
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user