(→Conteúdo e Estrutura do Repositório) |
|||
(41 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{PRJCompiladoreAvisosEN20222023}} |
− | <!--{{ | + | <!--{{PRJCompiladoreAvisosEE20222023}}--> |
− | {{ | + | {{PRJCOMandatory20222023}} |
{{TOCright}} | {{TOCright}} | ||
− | + | '''<font color="red">THIS PAGE IS OBSOLETE</font>''' | |
− | Guia para leitores perplexos: [[CVS Crash Course]]. | + | '''<font color="red">MATERIAL OBSOLETO E NÂO UTILIZADO A PARTIR DE 2023</font>''' |
+ | |||
+ | '''Esta página contém informação tanto para a LEIC-A como para a LEIC-T.''' | ||
+ | |||
+ | Os repositórios CVS para os projectos (um por grupo) já contêm versões iniciais do projecto. | ||
+ | |||
+ | {{Suggestion|Guia para leitores perplexos: [[CVS Crash Course]].}} | ||
== Localização == | == Localização == | ||
− | + | Os repositórios estão disponíveis no AFS em: | |
− | * '''<nowiki>/afs/ist.utl.pt/groups/leic-co/ | + | * LEIC-A: '''<nowiki>/afs/ist.utl.pt/groups/leic-co/co23/a/cvs</nowiki>''' |
+ | * LEIC-T: '''<nowiki>/afs/ist.utl.pt/groups/leic-co/co23/t/cvs</nowiki>''' | ||
− | O conteúdo do repositório pode ser manipulado com o comando '''cvs''' ou com qualquer outro cliente compatível (e.g. | + | O conteúdo do repositório pode ser manipulado com o comando '''cvs''' ou com qualquer outro cliente compatível (e.g. [http://www.eclipse.org/ eclipse]). |
{{Aviso|Esta directoria não deve ser utilizada directamente.}} | {{Aviso|Esta directoria não deve ser utilizada directamente.}} | ||
− | == Acesso == | + | == Modo de Acesso == |
No texto que se segue: | No texto que se segue: | ||
− | * '''<nowiki> | + | * '''<nowiki>###</nowiki>''' designa o número de grupo com três dígitos, e.g., '''012''' |
− | * '''<nowiki>ISTID</nowiki>''' designa o identificador de aluno, | + | * '''<nowiki>ISTID</nowiki>''' designa o identificador de aluno, e.g. '''ist123456''' |
− | Assim, os valores possíveis para a variável de ambiente '''CVSROOT''' (ou pela opção '''-d''' do comando "cvs") são | + | Assim, os valores possíveis para a variável de ambiente '''CVSROOT''' (ou pela opção '''-d''' do comando "cvs") são como indicado. |
+ | Estes exemplos são para a LEIC-A. Para a LEIC-T os valores são análogos. | ||
− | * '''<nowiki>/afs/ist.utl.pt/groups/leic-co/ | + | * '''<nowiki>/afs/ist.utl.pt/groups/leic-co/co23/a/cvs/###</nowiki>''' (disponível em clientes AFS e utilizador com token válido para a célula ist.utl.pt) |
− | * '''<nowiki>:ext:ISTID@sigma.ist.utl.pt:/afs/ist.utl.pt/groups/leic-co/ | + | * '''<nowiki>:ext:ISTID@sigma.ist.utl.pt:/afs/ist.utl.pt/groups/leic-co/co23/a/cvs/###</nowiki>''' (disponível via SSH; verificar que CVS_RSH=ssh) |
− | {{Aviso|Alunos que ainda não visitaram o [https:// | + | {{Aviso|Alunos que não compreendam os conceitos de AFS e token devem usar a segunda forma de acesso.}} |
+ | {{Aviso|Alunos que ainda não visitaram o [https://selfservice.dsi.tecnico.ulisboa.pt/ self-service da DSI], devem fazê-lo, para activação dos serviços relevantes (AFS e Shell, pelo menos). Sem isso, não conseguirão desenvolver ou entregar o projecto, reprovando à disciplina.}} | ||
== Conteúdo e Estrutura do Repositório == | == Conteúdo e Estrutura do Repositório == | ||
Line 36: | Line 45: | ||
A makefile pode precisar de ser adaptada (variáveis indicadas), mas não deve ser substancialmente alterada. | A makefile pode precisar de ser adaptada (variáveis indicadas), mas não deve ser substancialmente alterada. | ||
− | Breve descrição da estrutura de directórios (abaixo de ''' | + | Breve descrição da estrutura de directórios (abaixo de '''l22'''): |
* '''ast''' (directoria que contém as classes dos nós da árvore sintáctica abstracta - padrão Composite) | * '''ast''' (directoria que contém as classes dos nós da árvore sintáctica abstracta - padrão Composite) | ||
Line 46: | Line 55: | ||
== Cuidados a ter na Utilização do Repositório CVS == | == Cuidados a ter na Utilização do Repositório CVS == | ||
+ | |||
+ | Exemplos para a LEIC-A (LEIC-T é análoga). | ||
=== <font color="red">NÃO FAZER</font> === | === <font color="red">NÃO FAZER</font> === | ||
Line 51: | Line 62: | ||
* '''cvs init''' (não é necessário: o repositório já existe) | * '''cvs init''' (não é necessário: o repositório já existe) | ||
* '''cvs import''' (não é necessário: o projecto já existe) | * '''cvs import''' (não é necessário: o projecto já existe) | ||
− | * '''cd /afs/ist.utl.pt/groups/leic-co/ | + | * '''cd /afs/ist.utl.pt/groups/leic-co/co22/a/cvs''' (ou qualquer outra manipulação directa dos ficheiros do repositório: toda a interacção com o repositório deve ser limitada ao comando "cvs") |
=== <font color="forestgreen">FAZER</font> === | === <font color="forestgreen">FAZER</font> === | ||
Line 59: | Line 70: | ||
O repositório já contém uma versão preliminar do projecto e devem ser dados os seguintes passos, para continuar a desenvolver o projecto: | O repositório já contém uma versão preliminar do projecto e devem ser dados os seguintes passos, para continuar a desenvolver o projecto: | ||
− | # '''cvs co | + | # '''cvs co l22''' (permite criar localmente uma directoria controlada pelo CVS, com o nome '''l22''' ("L" minúsculo), com a estrutura apresentada acima, contendo os ficheiros do projecto); |
# Editar/adicionar material do/ao projecto; | # Editar/adicionar material do/ao projecto; | ||
− | # Caso sejam criados ficheiros ou directórios novos, fazer '''cvs add ficheiro1 ficheiro2 ... | + | # Caso sejam criados ficheiros ou directórios novos, fazer '''cvs add ficheiro1 ficheiro2 ... ficheiroN''' (adicionar cada ficheiro novo ao projecto no CVS); |
# '''cvs update''' (antes de enviar alteração locais para o repositório, verificar se há actualizações a incorporar na cópia local e que não foi esquecido nenhum ficheiro importante: voltar a 3 até terem sido todos adicionados) | # '''cvs update''' (antes de enviar alteração locais para o repositório, verificar se há actualizações a incorporar na cópia local e que não foi esquecido nenhum ficheiro importante: voltar a 3 até terem sido todos adicionados) | ||
# '''cvs commit -m "Mensagem de commit."''' (enviar alterações para o repositório) | # '''cvs commit -m "Mensagem de commit."''' (enviar alterações para o repositório) |
AVISOS - Avaliação em Época Normal |
---|
Esclarecimento de dúvidas:
|
Requisitos para desenvolvimento, material de apoio e actualizações do enunciado (ver informação completa em Projecto de Compiladores):
|
Processo de avaliação (ver informação completa em Avaliação do Projecto):
|
Material de Uso Obrigatório |
---|
As bibliotecas CDK e RTS de apoio ao desenvolvimento do projecto são de uso obrigatório: |
|
A máquina virtual, fornecida para desenvolvimento do projecto, já contém todo o material de apoio. |
Uso Obrigatório: Repositório GIT |
Apenas se consideram para avaliação os projectos existentes no repositório GIT oficial. Apenas se considera para avaliação o ramo main.
Trabalhos não presentes no repositório no final do prazo têm classificação 0 (zero) (não são aceites outras formas de entrega). Não são admitidas justificações para atrasos em sincronizações do repositório. A indisponibilidade temporária do repositório, desde que inferior a 24 horas, não justifica atrasos na submissão de um trabalho. |
THIS PAGE IS OBSOLETE
MATERIAL OBSOLETO E NÂO UTILIZADO A PARTIR DE 2023
Esta página contém informação tanto para a LEIC-A como para a LEIC-T.
Os repositórios CVS para os projectos (um por grupo) já contêm versões iniciais do projecto.
Os repositórios estão disponíveis no AFS em:
O conteúdo do repositório pode ser manipulado com o comando cvs ou com qualquer outro cliente compatível (e.g. eclipse).
No texto que se segue:
Assim, os valores possíveis para a variável de ambiente CVSROOT (ou pela opção -d do comando "cvs") são como indicado. Estes exemplos são para a LEIC-A. Para a LEIC-T os valores são análogos.
Cada projecto no repositório contém inicialmente o compilador da linguagem Simple, superficialmente transformado para permitir o início do desenvolvimento do compilador da linguagem a implementar (isto significa que a linguagem é ainda a original, embora o compilador e as suas estruturas usem o novo nome em lugar de "simple").
A makefile pode precisar de ser adaptada (variáveis indicadas), mas não deve ser substancialmente alterada.
Breve descrição da estrutura de directórios (abaixo de l22):
Note-se que todo o projecto é compilado pela Makefile na directoria de base.
Exemplos para a LEIC-A (LEIC-T é análoga).
Antes de tudo o mais, fazer cópias de segurança (vulgo "backups") de tudo o que já foi feito.
O repositório já contém uma versão preliminar do projecto e devem ser dados os seguintes passos, para continuar a desenvolver o projecto:
Agradece-se a comunicação de eventuais problemas.