Makefile.common

Z UMP

Narzędzie dla użytkowników systemów Unix i Linux służące do operowania na źródłach UMP.


Spis treści

Podstawowa funkcjonalność

Poniższy opis przytaczam za Tomaszem Surmaczem, jego autorem.

Do działania Makefile wymaga ustawienia 2 zmiennych środowiskowych:

CVS	- katalog ze źródłami (czyli ten właśnie z Makefile.common)
DIR	- jeden lub kilka umpów

np:

setenv DIR "UMP-Opole UMP-Katowice"
setenv CVS /home/user/ump

Po czym najlepiej zrobić sobie:

cd $CVS
mkdir tmp
cd tmp
ln -s ../Makefile.common Makefile

czyli utworzyć katalog roboczy "tmp" i tam pracować za pomocą:

make mont	- montuje źródła. Na końcu dokleja plik
		  "attach", jeśli taki istnieje
make x		- generuje listę niestyków (zmontowanego wynik.mp)

- uruchomić mapedita, poprawiać

make demont	- rozmontowuje, każe uaktualnić źródła (copy&paste myszką)
make commit	- commituje poprawki

i tak w kółko, jak długo starcza chęci i materiału do poprawiania. Dodatkowo:

make clean	- czyści pliki tymczasowe (diffy z rozmontowywania, itp.)
make close	- generuje listę za bliskich węzłów
make dead	- generuje listę ślepych
make wpt	- generuje listę węzłów (odwrotnie niż "make x")
make update	- uaktualnia źródła edytowanego ump-a

Cele "x", "wpt", "close", "dead" generują listę punktów zawsze do pliku wynik-x.wpt, warto więc utworzyć plik "attach" z zawartością:

;@FILE,"Z:\home\USER\ump\tmp\wynik-x.wpt"

wtedy po zmontowaniu i wczytaniu zawsze będzie dołączony i nie trzeba będzie samemu za każdym razem wczytywać. Cele ponadto można łączyć, czyli np. wykonać:

make clean mont x	(wyczyści, zmontuje, wygeneruje niestyki)
# edycja mapeditem
make demont
# kopiowanie plików, ponowna edycja
make demont
# skopiowanie reszty plików
make clean mont close
# ponowna edycja (nie zapomnieć ponownie wczytać wynik.mp w mapedicie!)
make demont
# skopiowanie poprawek
make clean commit


Dostępne cele

Podstawowe operacje

 mont     - montowanie mapy
 demont   - rozmontowanie mapy, wykonanie diffów, pliki różniące się
            względem oryginału tworzone są w katalogu bieżącym
 clean    - usuwa pozostałości po rozmontowanej mapie, pliki *.plt i wynik* zostawiane są w spokoju
 mrproper - pełne czyszczenie katalogu roboczego, kasuje to co clean oraz pliki tymczasowe, wynik* i *.plt

Interakcja z CVS

 update   - aktualizacja źródeł
 commit   - wysłanie poprawek - wymaga uprawnień do zapisu w CVS

Sprawdzanie mapy (wymagany netgen)

 sprawdz  - sprawdzenie poprawności mapy
 dead     - wykryj ślepe końce, przy okazji oflagowuje węzły "dociągane"
 deadnm   - j.w., ale odfiltrowuje część węzłów skrajnych mapy
 x        - wykryj skrzyżowania bez węzłów
 close    - wykryj zbyt blisko położone węzły

Testy związane z routingiem

Poniższe cele służą do wygenerowania informacji o routingu przydatnych np. do sprawdzenia ciągłości routingu w danym obszarze.

 test     - wygeneruj dane potrzebne do routingu
 test-j   - wygeneruj dane potrzebne do routingu - z włączoną opcją j netgena
 test-k   - wygeneruj dane potrzebne do routingu - z włączoną opcja k netgena
 test-jk  - wygeneruj dane potrzebne do routingu - z włączonymi opcjami j i k netgena
 class    - wygeneruj informacje o klasach routingu do osobnych plików (domyślnie bazuje na make test)

Inne

 visual   - na podstawie plików diff tworzy listę zmian dokonanych na mapie. Mapa musi być wcześniej rozmontowana!
 cum      - wykonuje kolejno clean, update, mount

Zmienne środowiskowe

Wymagane do poprawnej pracy

 CVS       - położenie lokalnej kopii źródeł mapy (katalog główny)
 DIR       - UMP który chcemy montować

Opcjonalne

 MONTEXTRA - dodatkowe opcje dla mont-demont-multi2.pl

Dodatkowe informacje

Opiekunem narzędzia jest Tomasz Surmacz, wspomagany przez Tomasza Babczyńskiego.