mirror of
https://github.com/reactos/reactos.git
synced 2024-06-27 08:21:31 +00:00
ddfa2017c7
Added PATH_TO_ROOT variable to most makefiles Added system independant install utility Implemented prototype system for changing individual regions without a memory area Added some interesting articles from usenet svn path=/trunk/; revision=1306
117 lines
2.3 KiB
Makefile
117 lines
2.3 KiB
Makefile
# $Id: Makefile,v 1.3 2000/08/18 22:27:00 dwelch Exp $
|
|
#
|
|
# ReactOS Operating System
|
|
#
|
|
PATH_TO_TOP = ../..
|
|
|
|
TARGET_NAME=msvcrt
|
|
TARGET_DLL=$(TARGET_NAME).dll
|
|
|
|
BASE_CFLAGS = -I../../include
|
|
|
|
all: $(TARGET_DLL)
|
|
|
|
|
|
|
|
OBJECTS_MISC = \
|
|
misc/dllmain.o \
|
|
misc/msvcrt.coff
|
|
|
|
OBJECTS_PROCESS = \
|
|
process/thread.o
|
|
|
|
OBJECTS_STDLIB = \
|
|
stdlib/errno.o
|
|
|
|
|
|
OBJECTS = \
|
|
$(OBJECTS_MISC) \
|
|
$(OBJECTS_PROCESS) \
|
|
$(OBJECTS_STDLIB)
|
|
|
|
ifeq ($(DOSCLI), yes)
|
|
CLEAN_FILES = \
|
|
misc\*.o \
|
|
misc\*.coff \
|
|
process\*.o \
|
|
stdlib\*.o \
|
|
$(TARGET_NAME).a \
|
|
$(TARGET_NAME).o \
|
|
$(TARGET_NAME).dll \
|
|
$(TARGET_NAME).sym
|
|
else
|
|
CLEAN_FILES = \
|
|
misc/*.o \
|
|
misc/*.coff \
|
|
process/*.o \
|
|
stdlib/*.o \
|
|
$(TARGET_NAME).a \
|
|
$(TARGET_NAME).o \
|
|
$(TARGET_NAME).dll \
|
|
$(TARGET_NAME).sym
|
|
endif
|
|
|
|
$(TARGET_NAME).coff: $(TARGET_NAME).rc ../../include/reactos/resource.h
|
|
|
|
$(TARGET_NAME).a: $(OBJECTS)
|
|
$(LD) -r $(OBJECTS) -o $(TARGET_NAME).a
|
|
|
|
$(TARGET_NAME).dll: $(DLLMAIN) $(OBJECTS) misc/$(TARGET_NAME).def
|
|
$(LD) -r $(OBJECTS) -o $(TARGET_NAME).o
|
|
$(DLLTOOL) \
|
|
--dllname $(TARGET_NAME).dll \
|
|
--def misc/$(TARGET_NAME).def \
|
|
--output-lib misc/$(TARGET_NAME).a
|
|
$(CC) \
|
|
-specs=misc/$(TARGET_NAME)_specs \
|
|
-mdll \
|
|
-o junk.tmp \
|
|
-Wl,--base-file,base.tmp \
|
|
$(TARGET_NAME).o \
|
|
../kernel32/kernel32.a
|
|
- $(RM) junk.tmp
|
|
$(DLLTOOL) \
|
|
--dllname $(TARGET_NAME).dll \
|
|
--base-file base.tmp \
|
|
--output-exp temp.exp \
|
|
--def misc/$(TARGET_NAME).def
|
|
- $(RM) base.tmp
|
|
$(CC) \
|
|
-specs=misc/$(TARGET_NAME)_specs \
|
|
-mdll \
|
|
-o $(TARGET_NAME).dll \
|
|
$(TARGET_NAME).o \
|
|
../kernel32/kernel32.a \
|
|
-Wl,--image-base,0x77630000 \
|
|
-Wl,--file-alignment,0x1000 \
|
|
-Wl,--section-alignment,0x1000 \
|
|
-Wl,temp.exp
|
|
- $(RM) temp.exp
|
|
$(NM) --numeric-sort $(TARGET_NAME).dll > $(TARGET_NAME).sym
|
|
|
|
clean: $(CLEAN_FILES:%=%_clean)
|
|
|
|
$(CLEAN_FILES:%=%_clean): %_clean:
|
|
- $(RM) $*
|
|
|
|
install: $(FLOPPY_DIR)/dlls/$(TARGET_NAME).dll
|
|
|
|
$(FLOPPY_DIR)/dlls/$(TARGET_NAME).dll: $(TARGET_NAME).dll
|
|
ifeq ($(DOSCLI),yes)
|
|
$(CP) $(TARGET_NAME).dll $(FLOPPY_DIR)\dlls\$(TARGET_NAME).dll
|
|
else
|
|
$(CP) $(TARGET_NAME).dll $(FLOPPY_DIR)/dlls/$(TARGET_NAME).dll
|
|
endif
|
|
|
|
dist: $(DIST_DIR)/dlls/$(TARGET_NAME).dll
|
|
|
|
$(DIST_DIR)/dlls/$(TARGET_NAME).dll: $(TARGET_NAME).dll
|
|
ifeq ($(DOSCLI),yes)
|
|
$(CP) $(TARGET_NAME).dll ..\..\$(DIST_DIR)\dlls\$(TARGET_NAME).dll
|
|
else
|
|
$(CP) $(TARGET_NAME).dll ../../$(DIST_DIR)/dlls/$(TARGET_NAME).dll
|
|
endif
|
|
|
|
include ../../rules.mak
|
|
|