ANSI_OBJS = fscanf_s.o gets_s.o memcpy_s.o memmove_s.o memset_s.o scanf_s.o securecutil.o secureinput_a.o secureprintoutput_a.o snprintf_s.o sprintf_s.o sscanf_s.o strcat_s.o strcpy_s.o strncat_s.o strncpy_s.o strtok_s.o vfscanf_s.o vscanf_s.o vsnprintf_s.o vsprintf_s.o vsscanf_s.o UNICODE_OBJS = secureinput_w.o vswscanf_s.o vwscanf_s.o fwscanf_s.o swprintf_s.o swscanf_s.o vfwscanf_s.o vswprintf_s.o wcscat_s.o wcscpy_s.o wcsncat_s.o wcsncpy_s.o wcstok_s.o wmemcpy_s.o wmemmove_s.o wscanf_s.o secureprintoutput_w.o ALL_OBJS = $(ANSI_OBJS) $(UNICODE_OBJS) TESTOBJS = $(ALL_OBJS) test.o CC = gcc FLAGS = -I ../include -Wall -DNDEBUG -DSECUREC_WARP_OUTPUT -s -fstack-protector-strong -Wl,-z,relro,-z,now -O2 #FLAGS = -Wall -W -I ../include -I. -g -D_DEBUG ARCH:=$(shell getconf LONG_BIT) ifeq ($(ARCH), 64) FLAGS += -fPIC endif securecshare: $(ALL_OBJS) $(CC) $(FLAGS) -shared -o libsecurec.so $(ALL_OBJS) ansisecurecshare: $(ANSI_OBJS) $(CC) $(FLAGS) -shared -o libsecurec.so $(ANSI_OBJS) securecstatic: $(ALL_OBJS) ar crv libsecurec.a $(ALL_OBJS) ranlib libsecurec.a ansisecurecstatic: $(ANSI_OBJS) ar crv libsecurec.a $(ANSI_OBJS) ranlib libsecurec.a secureinput_a.o : secureinput_a.c secinput.h input.inl $(CC) $(FLAGS) -c secureinput_a.c secureinput_w.o : secureinput_w.c secinput.h input.inl $(CC) $(FLAGS) -c secureinput_w.c fscanf_s.o : fscanf_s.c securecutil.h $(CC) $(FLAGS) -c fscanf_s.c fwscanf_s.o : fwscanf_s.c securecutil.h $(CC) $(FLAGS) -c fwscanf_s.c gets_s.o : gets_s.c securecutil.h $(CC) $(FLAGS) -c gets_s.c memcpy_s.o : memcpy_s.c securecutil.h $(CC) $(FLAGS) -c memcpy_s.c memmove_s.o : memmove_s.c securecutil.h $(CC) $(FLAGS) -c memmove_s.c memset_s.o : memset_s.c securecutil.h $(CC) $(FLAGS) -c memset_s.c scanf_s.o : scanf_s.c securecutil.h $(CC) $(FLAGS) -c scanf_s.c securecutil.o : securecutil.c securecutil.h secureprintoutput.h $(CC) $(FLAGS) -c securecutil.c secureprintoutput_a.o : secureprintoutput_a.c securecutil.h secureprintoutput.h output.inl $(CC) $(FLAGS) -c secureprintoutput_a.c secureprintoutput_w.o : secureprintoutput_w.c securecutil.h secureprintoutput.h output.inl $(CC) $(FLAGS) -c secureprintoutput_w.c snprintf_s.o : snprintf_s.c securecutil.h $(CC) $(FLAGS) -c snprintf_s.c sprintf_s.o : sprintf_s.c securecutil.h $(CC) $(FLAGS) -c sprintf_s.c sscanf_s.o : sscanf_s.c securecutil.h $(CC) $(FLAGS) -c sscanf_s.c strcat_s.o : strcat_s.c securecutil.h $(CC) $(FLAGS) -c strcat_s.c strcpy_s.o : strcpy_s.c securecutil.h $(CC) $(FLAGS) -c strcpy_s.c strncat_s.o : strncat_s.c securecutil.h $(CC) $(FLAGS) -c strncat_s.c strncpy_s.o : strncpy_s.c securecutil.h $(CC) $(FLAGS) -c strncpy_s.c strtok_s.o : strtok_s.c securecutil.h $(CC) $(FLAGS) -c strtok_s.c swprintf_s.o : swprintf_s.c securecutil.h $(CC) $(FLAGS) -c swprintf_s.c swscanf_s.o : swscanf_s.c securecutil.h $(CC) $(FLAGS) -c swscanf_s.c vfscanf_s.o : vfscanf_s.c securecutil.h input.inl $(CC) $(FLAGS) -c vfscanf_s.c vfwscanf_s.o : vfwscanf_s.c securecutil.h input.inl $(CC) $(FLAGS) -c vfwscanf_s.c vscanf_s.o : vscanf_s.c securecutil.h input.inl $(CC) $(FLAGS) -c vscanf_s.c vsnprintf_s.o : vsnprintf_s.c securecutil.h $(CC) $(FLAGS) -c vsnprintf_s.c vsprintf_s.o : vsprintf_s.c securecutil.h $(CC) $(FLAGS) -c vsprintf_s.c vsscanf_s.o : vsscanf_s.c securecutil.h input.inl $(CC) $(FLAGS) -c vsscanf_s.c vswprintf_s.o : vswprintf_s.c securecutil.h $(CC) $(FLAGS) -c vswprintf_s.c vswscanf_s.o : vswscanf_s.c securecutil.h input.inl $(CC) $(FLAGS) -c vswscanf_s.c vwscanf_s.o : vwscanf_s.c securecutil.h $(CC) $(FLAGS) -c vwscanf_s.c wcscat_s.o : wcscat_s.c securecutil.h $(CC) $(FLAGS) -c wcscat_s.c wcscpy_s.o : wcscpy_s.c securecutil.h $(CC) $(FLAGS) -c wcscpy_s.c wcsncat_s.o : wcsncat_s.c securecutil.h $(CC) $(FLAGS) -c wcsncat_s.c wcsncpy_s.o : wcsncpy_s.c securecutil.h $(CC) $(FLAGS) -c wcsncpy_s.c wcstok_s.o : wcstok_s.c securecutil.h $(CC) $(FLAGS) -c wcstok_s.c wmemcpy_s.o : wmemcpy_s.c securecutil.h $(CC) $(FLAGS) -c wmemcpy_s.c wmemmove_s.o : wmemmove_s.c securecutil.h $(CC) $(FLAGS) -c wmemmove_s.c wscanf_s.o : wscanf_s.c securecutil.h $(CC) $(FLAGS) -c wscanf_s.c maketest: $(TESTOBJS) $(CC) $(FLAGS) -o tst $(TESTOBJS) test.o : test.c $(CC) $(FLAGS) -c test.c staticlink: $(TESTOBJS) $(CC) $(FLAGS) -o tst test.c -L. -lsecurec.a dynLink: gcc -g -o tst test.c -L. -l/home/l00254400/sec -lsecurec gcc -g -o tst test.c -L. -lsecurec gcc -g -o tst test.c -L. -l./securec clean: rm *.o