# Last edited on 2000-09-03 11:31:00 by stolfi

# Modifique as definições de 
#   MYABSTRACT, MYIMPLS : módulos sob sua responsabilidade.
#   OTHERABSTRACT, OTHERIMPLS : módulos de outras pessoas.
#
# Cuidado: não deixe brancos sobrando depois da "\".

MYABSTRACT = \
  Liquidificador.java

MYIMPLS = \
  LiquidificadorImpl.java
 
OTHERABSTRACT = \
  Bairro.java \
  Caminho.java \
  Desenhador.java \
  Escala.java \
  Esquina.java \
  Impressor.java \
  Localizador.java \
  Logradouro.java \
  Otimizador.java \
  Planta.java \
  Ponto.java \
  Restricoes.java \
  Servico.java \
  TipoDeLogradouro.java \
  TipoDeServico.java \
  Trecho.java \
  \
  Batedeira.java

OTHERIMPLS = \
  BairroImpl.java \
  DesenhadorImpl.java \
  EscalaImpl.java \
  EsquinaImpl.java \
  ImpressorImpl.java \
  Grafo.java \
  OtimizadorImpl.java \
  LocalizadorImpl.java \
  PSGr1.java \
  PSGrBase.java \
  PlantaImpl.java \
  ServicoImpl.java \
  TipoDeServicoImpl.java \
  TrechoImpl.java \
  \
  LogradouroImpl.java \
  Principal.java \
  PrincipalMapa.java \
  PrincipalDados.java \
  PrincipalFerramentas.java \
  PrincipalStatus.java \
  PrincipalGIF.java \
  PrincipalMensagem.java \
  PrincipalMenu.java \
  PanelSearchLocationByLogradouro.java \
  PanelSearchLocationByMelCaminho.java \
  \
  BatedeiraImpl.java
  
MISSINGIMPLS =

APPL = Principal

# O que deve fazer o comando "make":
all: test

# Nao deve ser necessario alterar o que está abaixo desta linha
# ----------------------------------------------------------------------

# Cuidado: linhas que começam com 8 colunas em branco
#   devem começar com TAB (CTRL-i) e não com 8 brancos.

ABSTRACT = \
  ${MYABSTRACT} \
  ${OTHERABSTRACT}

IMPLS = \
  ${MYIMPLS} \
  ${OTHERIMPLS}

.PHONY: all links abstract all-impls my-impls test release

# "make links" recria os links simbólicos para o repositório central:
links: 
	/home/spec/mc726/PUB/proj/make-links

# "make test" compila tudo e executa a classe principal:
test: did-abstract did-all-impls ${APPL}.html
	/n/lang/bin/javac ${APPL}.java
	/n/lang/bin/appletviewer "${APPL}.html"

# "make release" copia arquivos locais para sua área PUB:
release: did-my-impls
	/home/spec/mc726/PUB/proj/publish-files ${MYABSTRACT} ${MYIMPLS}

# "make abstract" compila as classes abstratas
abstract: did-abstract
did-abstract: ${ABSTRACT} makefile
	/n/lang/bin/javac ${ABSTRACT}
	/bin/touch did-abstract

# "make all-impls" compila todas as implementações
all-impls: did-all-impls
did-all-impls: did-abstract ${IMPLS} makefile
	/n/lang/bin/javac -nowarn ${IMPLS} 
	/bin/touch did-all-impls

# "make my-impls" compila as implementações locais apenas
my-impls: did-my-impls
did-my-impls: did-abstract ${MYIMPLS} makefile
	/n/lang/bin/javac ${MYIMPLS} 
	/bin/touch did-my-impls

# "make clean" remove os arquivos derivados
clean:
	/bin/rm -f .dummy *.class did-*
