Edit makefile to have an external gui lib

This commit is contained in:
Antoine Bartuccio 2016-12-27 20:12:41 +01:00
parent 41cc271346
commit 4e4beeab07
5 changed files with 73 additions and 5 deletions

34
LibGui/Makefile Normal file
View File

@ -0,0 +1,34 @@
CC=gcc
CFLAGS=-Wall -Werror -pedantic -fpic -g -std=c89
LIBSDIR=-L/usr/lib -L../Libs
INCLUDEDIR=-I/usr/include -I. -I../LibAutomaton
#Library variables
LIBTARGET=libGui.so
LIBSOURCE=pixel
LIBSOURCECFILE=$(LIBSOURCE:=.c)
LIBSOURCEOFILE=$(LIBSOURCE:=.o)
DEPENDENCELIST=libAutomaton.so
DEPENDENCENAMELIST=Automaton
EXTLIBS=`sdl2-config --cflags --libs`
#Generating the library binary
$(LIBTARGET): $(LIBSOURCEOFILE)
@echo "\n Generating the library binary"
$(CC) $(CFLAGS) $(LIBSDIR) $(EXTLIBS) -l$(DEPENDENCENAMELIST) -shared $(LIBSOURCEOFILE) -o ../Libs/$(LIBTARGET)
#Generating object files
.c.o:
@echo "\n Generating " $@ " from " $<
$(CC) $(CFLAGS) $(INCLUDEDIR) -c -o $@ $<
#Cleaning
clean:
@echo "\n Cleaning"
rm -rf *.o *.exe *.so

19
LibGui/pixel.c Normal file
View File

@ -0,0 +1,19 @@
/*
* @Author: klmp200
* @Date: 2016-12-27 19:59:21
* @Last Modified by: klmp200
* @Last Modified time: 2016-12-27 20:09:56
*/
#include <stdio.h>
#include <stdlib.h>
#include <SDL2/SDL.h>
#include <pixel.h>
#include <matrix.h>
void SDL_test(){
PIXEL test;
Matrix gg = CreateMatrix();
SetCellValue(gg, 1, 1, true);
test.color = 1;
}

13
LibGui/pixel.h Normal file
View File

@ -0,0 +1,13 @@
#ifndef PIXEL_H_INCLUDED
#define PIXEL_H_INCLUDED
#include <SDL2/SDL.h>
typedef struct {
SDL_Rect position;
Uint8 color;
} PIXEL;
void SDL_test();
#endif

View File

@ -8,7 +8,7 @@ CFLAGS=-Wall -Werror -pedantic -fpic -g -std=c89
EXTLIBS=`sdl2-config --cflags --libs`
LIBSDIR=-L/usr/lib -L./Libs
INCLUDEDIR=-I/usr/include -I. -I./LibAutomaton
INCLUDEDIR=-I/usr/include -I. -I./LibAutomaton -I./LibGui
#Exe test variables
TARGET=main
@ -17,8 +17,9 @@ SOURCE=main
SOURCECFILE=$(SOURCE:=.c)
SOURCEOFILE=$(SOURCE:=.o)
DEPENDENCELIST=libAutomaton.so
DEPENDENCENAMELIST=Automaton
DEPENDENCELIST=libAutomaton.so libGui.so
DEPENDENCENAMEONE=Automaton
DEPENDENCENAMETWO=Gui
all: $(TARGET)
@ -26,12 +27,12 @@ all: $(TARGET)
$(TARGET): $(SOURCEOFILE) $(DEPENDENCELIST) lib
@echo "\n Generating the " $(TARGET) " binary"
mkdir -p build
$(CC) $(SOURCEOFILE) $(LIBSDIR) $(EXTLIBS) -l$(DEPENDENCENAMELIST) -o ./build/$(TARGET)
$(CC) $(SOURCEOFILE) $(LIBSDIR) $(EXTLIBS) -l$(DEPENDENCENAMEONE) -l$(DEPENDENCENAMETWO) -o ./build/$(TARGET)
#Generating the library binary
lib:
@echo "\n Generating the automaton library binary"
# $(MAKE) -C LibCell
$(MAKE) -C LibGui
$(DEPENDENCELIST):
@echo "\n Generating the automaton library binary"

1
main.c
View File

@ -9,6 +9,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <matrix.h>
#include <pixel.c>
int main(int argc, char **argv){
int Rule = 256;