* device/lib/pic16/Makefile.common.in: added $(MM) to fix `make clean`
[fw/sdcc] / sim / ucsim / s51.src / Makefile.in
index 10be85e8ee52b49440f22d2a4d326280abf1ff7f..5f4ec97fac6f62dbb0f3acafdf3b3e77755dda1a 100644 (file)
@@ -29,7 +29,7 @@ SDCC          = sdcc
 SDCFLAGS       = --debug --stack-after-data --model-small
 SDCPPFLAGS     = 
 
-LIBS           = @LIBS@ -L$(PRJDIR) -lsim -lcmd -lguiucsim -lutil
+LIBS           = @LIBS@ -L$(PRJDIR) -Wl,--start-group -lutil -lsim -lcmd -lguiucsim -Wl,--end-group
 DL             = @DL@
 dl_ok          = @dl_ok@
 
@@ -45,6 +45,8 @@ man2dir         = $(mandir)/man2
 infodir         = @infodir@
 srcdir          = @srcdir@
 
+EXEEXT         = @EXEEXT@
+
 OBJECTS_SHARED = glob.o sim51.o \
                  inc.o jmp.o mov.o logic.o arith.o bit.o \
                  timer0.o timer1.o timer2.o serial.o port.o interrupt.o \
@@ -66,14 +68,13 @@ all: checkconf otherlibs s51.src
 # Compiling and installing everything and runing test
 # ---------------------------------------------------
 install: all installdirs
-       if test -f s51.exe; then $(INSTALL) -s s51.exe $(bindir); $(STRIP) $(bindir)/s51.exe; fi
-       if test -f s51; then $(INSTALL) -s s51 $(bindir); $(STRIP) $(bindir)/s51; fi
+       $(INSTALL) -s s51$(EXEEXT) $(DESTDIR)$(bindir)
 
 
 # Deleting all the installed files
 # --------------------------------
 uninstall:
-       rm -f $(bindir)/s51
+       rm -f $(DESTDIR)$(bindir)/s51$(EXEEXT)
 
 
 # Performing self-test
@@ -93,7 +94,7 @@ installcheck:
 # Creating installation directories
 # ---------------------------------
 installdirs:
-       test -d $(bindir) || $(INSTALL) -d $(bindir)
+       test -d $(DESTDIR)$(bindir) || $(INSTALL) -d $(DESTDIR)$(bindir)
 
 
 # Creating dependencies
@@ -114,23 +115,24 @@ include clean.mk
 # --------
 .SUFFIXES: .rel
 
-s51.src: s51 shared_lib
+s51.src: s51$(EXEEXT) shared_lib
 
-s51: $(OBJECTS) $(PRJDIR)/*.a
-       $(CXX) $(CXXFLAGS) $(OBJECTS) $(LIBS) -o s51
+s51$(EXEEXT): $(OBJECTS) $(PRJDIR)/*.a
+       $(CXX) $(CXXFLAGS) $(OBJECTS) $(LIBS) -o $@
 
 ifeq ($(dlso_ok),yes)
 shared_lib: $(PRJDIR)/s51.so
 else
 shared_lib:
-       @echo "No 51 shared lib made."
-       @echo "(SHAREDLIB="$(SHAREDLIB)",dl_ok="$(dl_ok)",enable_dlso="$(enable_dlso)")"
+       @$(PRJDIR)/mkecho $(PRJDIR) "No 51 shared lib made."
+       @$(PRJDIR)/mkecho $(PRJDIR) "(SHAREDLIB="$(SHAREDLIB)",dl_ok="$(dl_ok)",enable_dlso="$(enable_dlso)")"
 endif
 
 $(PRJDIR)/s51.so: $(OBJECTS_SHARED)
-       $(CXX) -shared $(OBJECTS_SHARED) -o $(PRJDIR)/s51.so
+       $(CXX) -shared $(OBJECTS_SHARED) -o $@
 
 otherlibs:
+       cd $(PRJDIR) && $(MAKE) libs
        cd $(PRJDIR)/cmd.src && $(MAKE) all
        cd $(PRJDIR)/sim.src && $(MAKE) all
        $(MAKE) -C $(PRJDIR)/gui.src checkconf ucsim_lib