Skip to content

Instantly share code, notes, and snippets.

@Langerz82
Created June 6, 2017 20:09
Show Gist options
  • Save Langerz82/8bb5037b54b9cf6a09efb277adb4bfb0 to your computer and use it in GitHub Desktop.
Save Langerz82/8bb5037b54b9cf6a09efb277adb4bfb0 to your computer and use it in GitHub Desktop.
WORKDIR = %cd%
CC = x86_64-w64-mingw32-gcc.exe
CXX = x86_64-w64-mingw32-g++.exe -m32
AR = x86_64-w64-mingw32-gcc-ar.exe
LD = x86_64-w64-mingw32-g++.exe -m32
WINDRES = windres.exe
INC = -I.
CFLAGS = -pedantic-errors -pedantic -Wfatal-errors -Wextra -Wall -std=gnu++1y
CFLAGSEXT =
RESINC =
RCFLAGS = -F pe-i386
LIBDIR =
LIB =
LDFLAGS = -static
INC_DEBUG = $(INC)
CFLAGS_DEBUG = $(CFLAGS) -gstabs
CFLAGSEXT_DEBUG = $(CFLAGSEXT)
RESINC_DEBUG = $(RESINC)
RCFLAGS_DEBUG = $(RCFLAGS)
LIBDIR_DEBUG = $(LIBDIR)
LIB_DEBUG = $(LIB)
LDFLAGS_DEBUG = $(LDFLAGS)
OBJDIR_DEBUG = .objs\\Debug
DEP_DEBUG =
OUT_DEBUG = libiniparser.a
INC_RELEASE = $(INC)
CFLAGS_RELEASE = $(CFLAGS) -O2 -DNDEBUG
CFLAGSEXT_RELEASE = $(CFLAGSEXT) -O2 -DNDEBUG
RESINC_RELEASE = $(RESINC)
RCFLAGS_RELEASE = $(RCFLAGS)
LIBDIR_RELEASE = $(LIBDIR)
LIB_RELEASE = $(LIB)
LDFLAGS_RELEASE = -s $(LDFLAGS)
OBJDIR_RELEASE = .objs\\Release
DEP_RELEASE =
OUT_RELEASE = libiniparser.a
OBJ_DEBUG = \
$(OBJDIR_DEBUG)\\Dictionary.o \
$(OBJDIR_DEBUG)\\iniparser.o
OBJ_RELEASE = \
$(OBJDIR_RELEASE)\\Dictionary.o \
$(OBJDIR_RELEASE)\\iniparser.o
all: debug release
clean: clean_debug clean_release
before_debug:
cmd /c if not exist $(OBJDIR_DEBUG) md $(OBJDIR_DEBUG)
after_debug:
debug: before_debug out_debug after_debug
out_debug: $(OBJ_DEBUG) $(DEP_DEBUG)
$(AR) -rv $(OUT_DEBUG) $(OBJ_DEBUG)
$(OBJDIR_DEBUG)\\Dictionary.o: src\\Dictionary.c
$(CC) $(CFLAGSEXT_DEBUG) $(INC_DEBUG) -c src\\Dictionary.c -o $(OBJDIR_DEBUG)\\Dictionary.o
$(OBJDIR_DEBUG)\\iniparser.o: src\\iniparser.c
$(CC) $(CFLAGSEXT_DEBUG) $(INC_DEBUG) -c src\\iniparser.c -o $(OBJDIR_DEBUG)\\iniparser.o
clean_debug:
cmd /c del /f $(OUT_DEBUG)
cmd /c rd /s/q $(OBJDIR_DEBUG)
before_release:
cmd /c if not exist $(OBJDIR_RELEASE) md $(OBJDIR_RELEASE)
after_release:
release: before_release out_release after_release
out_release: $(OBJ_RELEASE) $(DEP_RELEASE)
$(AR) -rv $(OUT_RELEASE) $(OBJ_RELEASE)
$(OBJDIR_RELEASE)\\Dictionary.o: src\\Dictionary.c
$(CC) $(CFLAGSEXT_RELEASE) $(INC_RELEASE) -c src\\Dictionary.c -o $(OBJDIR_RELEASE)\\Dictionary.o
$(OBJDIR_RELEASE)\\iniparser.o: src\\iniparser.c
$(CC) $(CFLAGSEXT_RELEASE) $(INC_RELEASE) -c src\\iniparser.c -o $(OBJDIR_RELEASE)\\iniparser.o
clean_release:
cmd /c del /f $(OUT_RELEASE)
cmd /c rd /s/q $(OBJDIR_RELEASE)
.PHONY: before_debug after_debug clean_debug before_release after_release clean_release
@Langerz82
Copy link
Author

MAKEFILE for Chiristians iniparser

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment