summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1996-11-12 21:28:00 +0000
committercleeland <cleeland@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1996-11-12 21:28:00 +0000
commit007a8ac625ea4437f792ab83518c87b560367193 (patch)
tree7981b3ad0504d21f0b70b3485337907bb7d245a2
parent07e6c7d2b373f18880dbf612c0e0e50c3c81e9ee (diff)
downloadATCD-007a8ac625ea4437f792ab83518c87b560367193.tar.gz
Made Makefile work a little better by only making individual packages.
It was also necessary to break up ASX (for the sake of the Makefile) so that time-related items are compiled prior to other items. TimeValue moved from ACE.Reactor into ACE.ASX.
-rw-r--r--java/src/EventHandler.java2
-rw-r--r--java/src/Makefile142
-rw-r--r--java/src/Mutex.java3
-rw-r--r--java/src/Readme12
-rw-r--r--java/src/Semaphore.java11
-rw-r--r--java/src/ServiceObject.java1
-rw-r--r--java/src/TimeValue.java3
-rw-r--r--java/src/TimedWait.java2
-rw-r--r--java/src/TimeoutException.java2
9 files changed, 116 insertions, 62 deletions
diff --git a/java/src/EventHandler.java b/java/src/EventHandler.java
index 6b40618e0c3..e45b3fb8899 100644
--- a/java/src/EventHandler.java
+++ b/java/src/EventHandler.java
@@ -11,6 +11,8 @@
*************************************************/
package ACE.Reactor;
+import ACE.ASX.TimeValue;
+
/**
* <hr>
* <h2>SYNOPSIS</h2>
diff --git a/java/src/Makefile b/java/src/Makefile
index 09a7eb898f2..5bc4155ebbe 100644
--- a/java/src/Makefile
+++ b/java/src/Makefile
@@ -6,45 +6,108 @@ JACE_WRAPPER = ..
CLASSDIR = $(JACE_WRAPPER)/classes
DOCDIR = $(JACE_WRAPPER)/doc
+JC = javac_g
+JCOPTS = -g -d $(CLASSDIR)
+JD = javadoc
+JDOPTS = -d $(DOCDIR)
+
+COMPILE.java = $(JC) $(JCOPTS) $(filter %.java,$?)
+
CLASSPATH := $(CLASSDIR):$(CLASSPATH)
-all:
- javac -d ${JACE_WRAPPER}/classes $(files)
+all: asx os concurrency connection timers misc reactor svcconfig socksap
+
doc:
- javadoc -d ${JACE_WRAPPER}/doc $(files) $(packages)
-
-files = \
- ACE.java \
- AcceptStrategy.java \
- Acceptor.java \
- ActivateStrategy.java \
- Condition.java \
- Connector.java \
- CreationStrategy.java \
- EventHandler.java \
- GetOpt.java \
- MessageBlock.java \
- MessageQueue.java \
- MessageType.java \
- Mutex.java \
- OS.java \
- ProfileTimer.java \
- RWMutex.java \
- SOCKAcceptor.java \
- SOCKConnector.java \
- SOCKStream.java \
- Semaphore.java \
- ServiceConfig.java \
- ServiceObject.java \
- ServiceRepository.java \
- StrategyAcceptor.java \
- SvcHandler.java \
- Task.java \
- TaskFlags.java \
- ThreadManager.java \
- TimeValue.java \
- TimedWait.java \
- TimeoutException.java
+ $(JD) $(JDOPTS) $(files) $(packages)
+
+clean:
+ find ${JACE_WRAPPER}/classes/ACE -name '*.class' -print | xargs ${RM}
+
+docclean:
+ find ${JACE_WRAPPER}/doc -name '*.html' -print | xargs ${RM}
+
+realclean: clean docclean
+
+
+pkg_asx_timestuff = \
+ TimeValue \
+ TimeoutException \
+ TimedWait
+
+asx_timestuff: $(addsuffix .java,$(pkg_asx_timestuff))
+ $(COMPILE.java)
+
+pkg_asx = \
+ Task \
+ TaskFlags \
+ MessageType \
+ MessageBlock \
+ MessageQueue
+
+asx: os asx_timestuff reactor concurrency $(addsuffix .java,$(pkg_asx))
+ $(COMPILE.java)
+
+pkg_os = \
+ OS \
+ ACE
+
+os: $(addsuffix .java,$(pkg_os))
+ $(COMPILE.java)
+
+pkg_concurrency = \
+ Mutex \
+ RWMutex \
+ Semaphore \
+ ThreadManager
+
+concurrency: $(addsuffix .java,$(pkg_concurrency)) asx_timestuff os
+ $(COMPILE.java)
+
+pkg_connection = \
+ SvcHandler \
+ Acceptor \
+ Connector \
+ AcceptStrategy \
+ ActivateStrategy \
+ CreationStrategy \
+ StrategyAcceptor
+
+connection: os socksap svcconfig $(addsuffix .java,$(pkg_connection))
+ $(COMPILE.java)
+
+pkg_timers = \
+ ProfileTimer
+
+timers: $(addsuffix .java,$(pkg_timers))
+ $(COMPILE.java)
+
+pkg_misc = \
+ GetOpt
+
+misc: $(addsuffix .java,$(pkg_misc))
+ $(COMPILE.java)
+
+pkg_reactor = \
+ EventHandler
+
+reactor: asx_timestuff $(addsuffix .java,$(pkg_reactor))
+ $(COMPILE.java)
+
+pkg_socksap = \
+ SOCKStream \
+ SOCKAcceptor \
+ SOCKConnector
+
+socksap: os $(addsuffix .java,$(pkg_socksap))
+ $(COMPILE.java)
+
+pkg_svcconfig = \
+ ServiceObject \
+ ServiceConfig \
+ ServiceRepository
+
+svcconfig: os reactor misc $(addsuffix .java,$(pkg_svcconfig))
+ $(COMPILE.java)
packages = ACE \
ACE.ASX \
@@ -58,10 +121,3 @@ packages = ACE \
ACE.Timers
-clean:
- find ${JACE_WRAPPER}/classes/ACE -name '*.class' -print | xargs ${RM}
-
-docclean:
- find ${JACE_WRAPPER}/doc -name '*.html' -print | xargs ${RM}
-
-realclean: clean docclean
diff --git a/java/src/Mutex.java b/java/src/Mutex.java
index 7a0fcc2c28f..ba1e13882ae 100644
--- a/java/src/Mutex.java
+++ b/java/src/Mutex.java
@@ -13,7 +13,6 @@ package ACE.Concurrency;
import java.util.*;
import ACE.ASX.*;
-import ACE.Reactor.*;
class TimedWaitMAdapter extends TimedWait
{
@@ -41,7 +40,7 @@ class TimedWaitMAdapter extends TimedWait
/**
* <hr>
- * <h2>TITLE</h2>
+ * <h2>SYNOPSIS</h2>
*<blockquote>
* Value added abstraction for mutex variable creation.
*</blockquote>
diff --git a/java/src/Readme b/java/src/Readme
index d06d769757f..d953695cfde 100644
--- a/java/src/Readme
+++ b/java/src/Readme
@@ -1,8 +1,8 @@
-For some strange reason, when you type "make", the Java compiler
-freaks out and prints several error messages.
+The Makefile has been worked over severely, and it now REQUIRES GNU
+Make. The makefile is still a little rough, and will definitely
+evolve.
-Ignore these messages and just type "make" again. Everything should
-compile fine.
+Suggestsions are welcome at cleeland@cs.wustl.edu or pjain@cs.wustl.edu.
-In case you can find a solution to fix this problem, please let me
-know at pjain@cs.wustl.edu \ No newline at end of file
+Also, TimeValue moved from the ACE.Reactor to ACE.ASX package to break
+up some circular dependency problems.
diff --git a/java/src/Semaphore.java b/java/src/Semaphore.java
index b7a587b30d8..7e50dd80194 100644
--- a/java/src/Semaphore.java
+++ b/java/src/Semaphore.java
@@ -13,9 +13,8 @@ package ACE.Concurrency;
import java.util.*;
import ACE.ASX.*;
-import ACE.Reactor.*;
-class TimedWaitSAdapter extends TimedWait
+class TimedWaitSAdapter extends ACE.ASX.TimedWait
{
TimedWaitSAdapter (Object obj)
{
@@ -51,8 +50,8 @@ class TimedWaitSAdapter extends TimedWait
/**
* <hr>
- * <p><b>TITLE</b><br>
- * Implementation of a semaphore in java.
+ * <h2>SYNOPSIS</h2>
+ * Implementation of Dijkstra's counting semaphore in java.
*/
public class Semaphore
{
@@ -83,8 +82,8 @@ public class Semaphore
*@exception TimeoutException wait timed out exception
*@exception InterruptedException exception during wait
*/
- public synchronized void acquire (TimeValue tv) throws
- TimeoutException, InterruptedException
+ public synchronized void acquire (TimeValue tv)
+ throws ACE.ASX.TimeoutException, InterruptedException
{
this.monitor_.timedWait (tv);
this.monitor_.decrement ();
diff --git a/java/src/ServiceObject.java b/java/src/ServiceObject.java
index 7a6f8d2e909..5d27c0f0d2f 100644
--- a/java/src/ServiceObject.java
+++ b/java/src/ServiceObject.java
@@ -12,6 +12,7 @@
package ACE.ServiceConfigurator;
import java.io.*;
+import ACE.ASX.*;
import ACE.Reactor.*;
public class ServiceObject implements EventHandler
diff --git a/java/src/TimeValue.java b/java/src/TimeValue.java
index 91f280d998c..f4aa2b9bcb5 100644
--- a/java/src/TimeValue.java
+++ b/java/src/TimeValue.java
@@ -9,7 +9,8 @@
*@author Prashant Jain
*
*************************************************/
-package ACE.Reactor;
+//package ACE.Reactor;
+package ACE.ASX;
public class TimeValue
{
diff --git a/java/src/TimedWait.java b/java/src/TimedWait.java
index c708eb36945..9efc23fbfe3 100644
--- a/java/src/TimedWait.java
+++ b/java/src/TimedWait.java
@@ -11,8 +11,6 @@
*************************************************/
package ACE.ASX;
-import ACE.Reactor.*;
-
public abstract class TimedWait
{
/**
diff --git a/java/src/TimeoutException.java b/java/src/TimeoutException.java
index 1bff8e3415c..696d0ea2a58 100644
--- a/java/src/TimeoutException.java
+++ b/java/src/TimeoutException.java
@@ -11,8 +11,6 @@
*************************************************/
package ACE.ASX;
-import ACE.Reactor.*;
-
public class TimeoutException extends Exception
{
/**