Add quickstart section, in Makefile, fallback to cc if clang not found
This commit is contained in:
parent
dbc5f51449
commit
b5e1168307
3 changed files with 33 additions and 3 deletions
17
Makefile
17
Makefile
|
@ -1,13 +1,24 @@
|
|||
all: client server rapport cdb
|
||||
|
||||
client: src/client.c src/client.h src/common.c src/common.h
|
||||
clang -MJ client.o.json -o client src/client.c src/common.c -pthread
|
||||
@if command -v clang >/dev/null 2>&1; then \
|
||||
clang -MJ client.o.json -o client src/client.c src/common.c -pthread; \
|
||||
else \
|
||||
cc -o client src/client.c src/common.c -pthread; \
|
||||
fi
|
||||
|
||||
server: src/server.c src/server.h src/common.c src/common.h
|
||||
clang -MJ server.o.json -o server src/server.c src/common.c -lpthread
|
||||
@if command -v clang >/dev/null 2>&1; then \
|
||||
clang -MJ server.o.json -o server src/server.c src/common.c -lpthread; \
|
||||
else \
|
||||
cc -o server src/server.c src/common.c -lpthread; \
|
||||
fi
|
||||
|
||||
|
||||
cdb: client server
|
||||
@sed -e '1s/^/[\'$$'\n''/' -e '$$s/,$$/\'$$'\n'']/' *.o.json > compile_commands.json
|
||||
@if command -v clang >/dev/null 2>&1; then \
|
||||
sed -e '1s/^/[\'$$'\n''/' -e '$$s/,$$/\'$$'\n'']/' *.o.json > compile_commands.json; \
|
||||
fi
|
||||
|
||||
rapport: rapport.tex rapport.sty
|
||||
@latexmk -pdf rapport.tex
|
||||
|
|
BIN
rapport.pdf
BIN
rapport.pdf
Binary file not shown.
19
rapport.tex
19
rapport.tex
|
@ -53,6 +53,25 @@
|
|||
|
||||
\end{enumerate}
|
||||
|
||||
\section{Quickstart}
|
||||
|
||||
La compilation du programme se fait grâce au \texttt{Makefile} fourni.
|
||||
Il n'a été testé qu'en environnement GNU/Linux.
|
||||
Il est recommandé d'utiliser un compilateur compatible \texttt{C99} à cause de la syntaxe des macros de debug et de log.
|
||||
|
||||
En plus de compiler le programme, le \texttt{Makefile} compile le présent rapport avec \texttt{latexmk}.
|
||||
Ne pas hésiter à lancer les recettes séparément si \LaTeX{} n'est pas installé.
|
||||
|
||||
Une configuration du programme est possible avant compilation dans le fichier header \texttt{src/config.h}.
|
||||
Les explications sont sous forme de commentaires.
|
||||
|
||||
Si l'on veut supprimer les logs de la sortie standard et les rediriger vers un fichier pour n'avoir que le déroulement du programme~:
|
||||
|
||||
\begin{console}[gobble=8]
|
||||
$ ./server 2> server.log
|
||||
$ ./client 2> client.log
|
||||
\end{console}
|
||||
|
||||
\section{Architecture fonctionnelle}
|
||||
|
||||
Le projet est composé de deux exécutables~:
|
||||
|
|
Loading…
Reference in a new issue