minor fix for 'dist'
[reactos.git] / rosapps / cmd / makefile
index 2024404..0b541ab 100644 (file)
@@ -2,22 +2,26 @@
 #  ReactOS makefile for CMD
 #
 
-# target: raw binary (does not work right now)
-#all: cmd.bin
+PATH_TO_TOP=..
+TARGET=cmd.exe
 
-# target: executable (not tested/experimental)
-all: cmd.exe
+all: $(TARGET)
 
-OBJECTS = ../common/crt0.o cmd.o attrib.o alias.o batch.o beep.o call.o \
-        chcp.o cls.o cmdinput.o cmdtable.o color.o console.o copy.o date.o \
-        del.o dir.o dirstack.o echo.o error.o filecomp.o for.o goto.o \
-        history.o if.o internal.o label.o locale.o misc.o move.o path.o \
-        pause.o prompt.o redir.o ren.o set.o shift.o time.o title.o type.o \
-        ver.o verify.o vol.o where.o
+OBJECTS = cmd.o attrib.o alias.o batch.o beep.o call.o chcp.o choice.o \
+          cls.o cmdinput.o cmdtable.o color.o console.o copy.o date.o del.o \
+          delay.o dir.o dirstack.o echo.o error.o filecomp.o for.o free.o \
+          goto.o history.o if.o internal.o label.o locale.o memory.o misc.o \
+          move.o msgbox.o path.o pause.o prompt.o redir.o ren.o screen.o \
+          set.o shift.o start.o strtoclr.o time.o timer.o title.o type.o \
+          ver.o verify.o vol.o where.o window.o cmd.coff
 
-LIBS= ../../lib/kernel32/kernel32.a ../../lib/ntdll/ntdll.a
+CLEAN_FILES = *.o cmd.exe cmd.sym cmd.coff
+
+
+cmd.exe: $(OBJECTS)
+       $(CC) $(OBJECTS) -lkernel32 -lmsvcrt -luser32 -o cmd.exe
+       $(NM) --numeric-sort cmd.exe > cmd.sym
 
-CLEAN_FILES = $(OBJECTS) cmd.exe cmd.sym
 
 clean: $(CLEAN_FILES:%=%_clean)
 
@@ -26,15 +30,26 @@ $(CLEAN_FILES:%=%_clean): %_clean:
 
 .phony: clean $(CLEAN_FILES:%=%_clean)
 
-cmd.bin: $(OBJECTS)
-       $(LD) -Ttext 0x10000 $(OBJECTS) $(LIBS) -o cmd.exe
-       $(OBJCOPY) -O binary cmd.exe cmd.bin
 
-cmd.exe: $(OBJECTS) $(LIBS)
-       $(CC) -specs=../../specs $(OBJECTS) $(LIBS) -lgcc -o cmd.exe
-       $(NM) --numeric-sort cmd.exe > cmd.sym
+floppy: $(TARGET:%=$(FLOPPY_DIR)/apps/%)
+
+$(TARGET:%=$(FLOPPY_DIR)/apps/%): $(FLOPPY_DIR)/apps/%: %
+ifeq ($(DOSCLI),yes)
+       $(CP) $* $(FLOPPY_DIR)\apps\$*
+else
+       $(CP) $* $(FLOPPY_DIR)/apps/$*
+endif
+
 
-include ../../rules.mak
+dist: $(TARGET:%=$(PATH_TO_TOP)/$(DIST_DIR)/apps/%)
 
+$(TARGET:%=$(PATH_TO_TOP)/$(DIST_DIR)/apps/%): $(PATH_TO_TOP)/$(DIST_DIR)/apps/%: %
+ifeq ($(DOSCLI),yes)
+       $(CP) $* $(PATH_TO_TOP)\$(DIST_DIR)\apps\$*
+else
+       $(CP) $* $(PATH_TO_TOP)/$(DIST_DIR)/apps/$*
+endif
 
+include $(PATH_TO_TOP)/rules.mak
 
+# EOF