Makefile utilisable
This commit is contained in:
parent
bcea03f4ae
commit
4aa29dc408
@ -1,5 +1,4 @@
|
||||
C = gcc
|
||||
SER = server
|
||||
CC = gcc
|
||||
CONS = consommateur
|
||||
PROD = producteur
|
||||
CFLAGS = -Wall -g
|
||||
@ -8,12 +7,12 @@ CONSOM = consommateur.o
|
||||
PRODUCT = producteur.o
|
||||
all: $(CONSOM) $(PRODUCT)
|
||||
$(CC) $(CONSOM) -o $(CONS)
|
||||
$(CC) $(PRODUCT) -o $(SER)
|
||||
$(CC) $(PRODUCT) -o $(PROD)
|
||||
|
||||
consommateur.o : consommateur.h consommateur.c
|
||||
consommateur.o : consommateur.c consommateur.h
|
||||
$(CC) -o $@ -c $< $(CFLAGS)
|
||||
|
||||
producteur.o : producteur.h producteur.c
|
||||
producteur.o : producteur.c producteur.h
|
||||
$(CC) -o $@ -c $< $(CFLAGS)
|
||||
|
||||
sema.o : sema.h sema.c
|
||||
@ -22,5 +21,5 @@ sema.o : sema.h sema.c
|
||||
clean:
|
||||
@rm -rf *.o *.out
|
||||
mrproper: clean
|
||||
@rm $(PROD) $(CONS) 2>/dev/null
|
||||
rm $(PROD) $(CONS) 2>/dev/null
|
||||
|
||||
|
10
C_Language/TP_SYS/tp_sema/consommateur.c
Normal file
10
C_Language/TP_SYS/tp_sema/consommateur.c
Normal file
@ -0,0 +1,10 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int main( int argc, char **argv)
|
||||
{
|
||||
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
|
1
C_Language/TP_SYS/tp_sema/consommateur.h
Normal file
1
C_Language/TP_SYS/tp_sema/consommateur.h
Normal file
@ -0,0 +1 @@
|
||||
int main(int,char **);
|
1
C_Language/TP_SYS/tp_sema/global.c
Normal file
1
C_Language/TP_SYS/tp_sema/global.c
Normal file
@ -0,0 +1 @@
|
||||
int compteur;
|
29
C_Language/TP_SYS/tp_sema/producteur.c
Normal file
29
C_Language/TP_SYS/tp_sema/producteur.c
Normal file
@ -0,0 +1,29 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <stdlib.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/ipc.h>
|
||||
#include <sys/shm.h>
|
||||
#include "sema.h"
|
||||
|
||||
int main( int argc, char **argv)
|
||||
{
|
||||
if(argc < 3) { printf("Usage %s numIPC message\n", argv[0]); exit(EXIT_FAILURE); }
|
||||
int *zone;
|
||||
int memid;
|
||||
int clef = atoi(argv[1]);
|
||||
if(clef == -1) { printf("Usage %s numIPC message\n", argv[0]); exit(EXIT_FAILURE); }
|
||||
|
||||
/* création ou lien avec une zone partagée */
|
||||
memid = shmget(clef, 100, 0700 | IPC_CREAT);
|
||||
if (memid == -1) { perror("shmget"); return (EXIT_FAILURE); }
|
||||
|
||||
/* montage en mémoire */
|
||||
zone = shmat(memid, NULL, 0);
|
||||
|
||||
/* utilisation */
|
||||
printf("zone[0] = %d\n", zone[0]++ );
|
||||
|
||||
return (EXIT_SUCCESS);
|
||||
|
||||
}
|
1
C_Language/TP_SYS/tp_sema/producteur.h
Normal file
1
C_Language/TP_SYS/tp_sema/producteur.h
Normal file
@ -0,0 +1 @@
|
||||
int main(int, char**);
|
Loading…
Reference in New Issue
Block a user