/contrib/sdk/sources/hello_dll/Makefile |
---|
0,0 → 1,38 |
LIBRARY= libhello |
CC = kos32-gcc |
AR = kos32-ar |
LD = kos32-ld |
STRIP = kos32-strip |
INSTALLDIR ?= /home/autobuild/tools/win32/lib |
CFLAGS = -UWIN32 -UWindows -U_WINDOWS -U_WIN32 -U__WIN32__ -c -O2 -fno-ident -fomit-frame-pointer |
LDFLAGS=$(LDFLAGS_CMD) |
LDFLAGS+= -shared -s -T dll.lds --entry _DllStartup --image-base=0 |
LDFLAGS+= --out-implib $(LIBRARY).dll.a |
ARFLAGS:= crs |
INCLUDES= -I. -I../newlib/libc/include |
LIBS:= -ldll -lc.dll |
SOURCES = libhello.c |
OBJECTS = $(patsubst %.c, %.o, $(SOURCES)) |
all:$(LIBRARY).a $(LIBRARY).dll |
$(LIBRARY).a: $(OBJECTS) Makefile |
$(AR) $(ARFLAGS) $(LIBRARY).a $(OBJECTS) |
mv -f $(LIBRARY).a $(INSTALLDIR) |
$(LIBRARY).dll: libhello.def $(OBJECTS) Makefile |
$(LD) $(LDFLAGS) -o $@ libhello.def $(OBJECTS) $(LIBS) |
$(STRIP) $@ |
#mv -f $(LIBRARY).dll.a $(INSTALLDIR) |
%.o : %.c Makefile |
$(CC) $(CFLAGS) $(DEFINES) $(INCLUDES) -o $@ $< |
clean: |
-rm -f *.o |
/contrib/sdk/sources/hello_dll/hello_test/Makefile |
---|
0,0 → 1,26 |
CC = kos32-gcc |
LD = kos32-ld |
SDK_DIR:= $(abspath ../../../) |
LDFLAGS = -static -S -Tapp-dynamic.lds --image-base 0 |
CFLAGS = -c -fno-ident -O2 -fomit-frame-pointer -U__WIN32__ -U_Win32 -U_WIN32 -U__MINGW32__ -UWIN32 |
INCLUDES= -I $(SDK_DIR)/sources/newlib/libc/include |
LIBPATH:= -L $(SDK_DIR)/lib |
SOURCES = hello.c \ |
$(NULL) |
OBJECTS = $(patsubst %.c, %.o, $(SOURCES)) |
default: hello |
hello: $(OBJECTS) Makefile |
$(LD) $(LDFLAGS) $(LIBPATH) -o hello $(OBJECTS) -lgcc -lc.dll -lhello.dll |
objcopy hello -O binary |
%.o : %.c Makefile $(SOURCES) |
$(CC) $(CFLAGS) $(INCLUDES) -o $@ $< |
/contrib/sdk/sources/hello_dll/hello_test/hello.c |
---|
0,0 → 1,9 |
#include <stdio.h> |
extern void hello(); |
int main(int argc, char *argv[]) |
{ |
hello(); |
return 0; |
}; |
/contrib/sdk/sources/hello_dll/libhello.c |
---|
0,0 → 1,5 |
#include <stdio.h> |
void hello(){ |
printf("Hello world!\n"); |
} |
/contrib/sdk/sources/hello_dll/libhello.def |
---|
0,0 → 1,2 |
EXPORTS |
hello |