]> git.sur5r.net Git - cc65/commitdiff
Changes from Greg King
authorcuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 21 Jun 2007 20:42:16 +0000 (20:42 +0000)
committercuz <cuz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 21 Jun 2007 20:42:16 +0000 (20:42 +0000)
git-svn-id: svn://svn.cc65.org/cc65/trunk@3782 b7a2c559-68d2-44c3-8de9-860c34a00d81

make/gcc.mak
make/install-sh
packages/windows/install.vbs

index bee4bd93f1473553b55411c77cd9e02d3c1bedc2..1b39140c0ab24d646b146558f5bc3364f4ead640 100644 (file)
@@ -14,7 +14,7 @@
 MAKEOVERRIDES=
 
 # The install prefix and directories
-prefix         = /usr
+prefix         = /usr/local
 exec_prefix    = $(prefix)
 
 bindir         = $(exec_prefix)/bin
@@ -35,12 +35,16 @@ MKDIR               = mkdir -m 755
 
 # BSD-like install-script/-program
 INSTALL                = make/install-sh
-#INSTALL               = install
 
 INSTALL_DATA   = $(INSTALL) -c -m 644
 INSTALL_PROG   = $(INSTALL) -c -m 755
 INSTALL_STRIP  = $(INSTALL_PROG) -s
 
+# This file-name extension is needed on DOS/Windows systems.
+ifdef COMSPEC
+EXT    = .exe
+endif
+
 # Rules
 
 # The sample and library-test programs must be compiled for only one platform
@@ -51,7 +55,7 @@ INSTALL_STRIP = $(INSTALL_PROG) -s
 all:   bins libs docs $(SYS:%=samples tests)
 
 bins:
-       @$(MAKE) -C src -f make/gcc.mak
+       @$(MAKE) -C src -f make/gcc.mak CC65_INC=\\\"${CC65INC}/\\\" CC65_LIB=\\\"${CC65LIB}/\\\"
 
 libs:
        @$(MAKE) -C libsrc
@@ -81,12 +85,13 @@ clean zap:
 #      $(MAKE) -C testcode/lib $@ $(SYS:%=SYS=%)
 
 uninstall:     install-test
-       cd $(bindir) && $(RM) ar65 ca65 cc65 cl65 co65 da65 ld65 od65 grc ca65html
+       cd $(bindir) && $(RM) ar65${EXT} ca65${EXT} cc65${EXT} cl65${EXT} \
+         co65${EXT} da65${EXT} ld65${EXT} od65${EXT} grc${EXT} ca65html
        $(RM) -R $(CC65DATA) $(CC65DOC)
 
 install:       install-test install-dirs install-bins install-libs install-docs
        @echo
-       @echo 'You should export some shell environment variables:'
+       @echo 'You can export some shell environment variables:'
        @echo
        @echo 'CC65_INC=$(CC65INC)'
        @echo 'CC65_LIB=$(CC65LIB)'
@@ -104,16 +109,30 @@ install-test:
 
 .PHONY:        install-dirs
 install-dirs:
-       -$(MKDIR) -p $(bindir) $(docdir) $(libdir)
-       -$(MKDIR) $(CC65DATA) $(CC65ASM) $(CC65DOC) $(CC65INC)
-       -$(MKDIR) $(CC65INC)/em $(CC65INC)/geos $(CC65INC)/joystick \
-         $(CC65INC)/mouse $(CC65INC)/sys $(CC65INC)/tgi
-       -$(MKDIR) $(CC65LIB) $(CC65DATA)/emd $(CC65DATA)/joy \
-         $(CC65DATA)/mou $(CC65DATA)/ser $(CC65DATA)/tgi
+       [ -d $(bindir) ] || $(MKDIR) $(bindir)
+       [ -d $(datadir) ] || $(MKDIR) $(datadir)
+       [ -d $(docdir) ] || $(MKDIR) $(docdir)
+       [ -d $(libdir) ] || $(MKDIR) $(libdir)
+       [ -d $(CC65DOC) ] || $(MKDIR) $(CC65DOC)
+       [ -d $(CC65DATA) ] || $(MKDIR) $(CC65DATA)
+       [ -d $(CC65ASM) ] || $(MKDIR) $(CC65ASM)
+       [ -d $(CC65LIB) ] || $(MKDIR) $(CC65LIB)
+       [ -d $(CC65INC) ] || $(MKDIR) $(CC65INC)
+       [ -d $(CC65INC)/em ] || $(MKDIR) $(CC65INC)/em
+       [ -d $(CC65INC)/geos ] || $(MKDIR) $(CC65INC)/geos
+       [ -d $(CC65INC)/joystick ] || $(MKDIR) $(CC65INC)/joystick
+       [ -d $(CC65INC)/mouse ] || $(MKDIR) $(CC65INC)/mouse
+       [ -d $(CC65INC)/sys ] || $(MKDIR) $(CC65INC)/sys
+       [ -d $(CC65INC)/tgi ] || $(MKDIR) $(CC65INC)/tgi
+       [ -d $(CC65DATA)/emd ] || $(MKDIR) $(CC65DATA)/emd
+       [ -d $(CC65DATA)/joy ] || $(MKDIR) $(CC65DATA)/joy
+       [ -d $(CC65DATA)/mou ] || $(MKDIR) $(CC65DATA)/mou
+       [ -d $(CC65DATA)/ser ] || $(MKDIR) $(CC65DATA)/ser
+       [ -d $(CC65DATA)/tgi ] || $(MKDIR) $(CC65DATA)/tgi
 
 install-bins:
        for f in ar65 ca65 cc65 cl65 co65 da65 ld65 od65 grc; \
-         do $(INSTALL_STRIP) src/$$f/$$f $(bindir) || exit 1; \
+         do $(INSTALL_STRIP) src/$$f/$$f${EXT} $(bindir) || exit 1; \
          done
        $(INSTALL_PROG) src/ca65html/ca65html $(bindir)
 
@@ -142,7 +161,7 @@ install-docs:
        for f in src/ld65/cfg/*.cfg src/ca65/macpack/*.mac; \
          do $(INSTALL_DATA) $$f $(CC65DOC) || exit 1; \
          done
-       for f in readme.1st compile.txt BUGS internal.txt newvers.txt; \
+       for f in readme.1st compile.txt CREDITS BUGS internal.txt newvers.txt; \
          do $(INSTALL_DATA) doc/$$f $(CC65DOC) || exit 1; \
          done
        if [ -e doc/index.htm* ]; \
index a44791ff4ded50b648b3b21cde0045cc2f325c42..3fe6c2665dda52cb6e5b7e0136c37fdbba512c54 100755 (executable)
@@ -5,6 +5,11 @@
 # This isn't a full install-script; it does only what is needed by the cc65
 # package.  It can install only one file at a time.
 
+# If the system has an "install" command, then use it; otherwise, emulate it.
+if type install >/dev/null 2>&1
+then exec install "$@"
+fi
+
 # Don't use ":-" because 4.3BSD and earlier shells don't like it.
 # Put in absolute paths if you don't have these commands in your PATH;
 # or, set these upper-case variables in your environment.
index c5d92dcbc680ea9fbfc049a1dfd58cfc36746cc0..4fdbda7f614dee3eb0ab1d59c19c57fd61b19454 100644 (file)
@@ -6,9 +6,9 @@ Option Explicit                 ' Variables must be declared explicitly
 ' Installer defaults.
 '******************************************************************************
 const AppName     = "cc65"
-const Version     = "2.10.5.20050325"
+const Version     = "2.11.9"
 const Installer   = "cc65 Installer"
-const SpaceNeeded = 20                  ' Free space needed on drive in MB
+const SpaceNeeded = 20                  ' Free space needed on drive in MiB.
 const Shortcut    = true                ' Create shortcut on desktop
 
 
@@ -24,7 +24,7 @@ const SysPath = "HKLM\System\CurrentControlSet\Control\Session Manager\Environme
 '******************************************************************************
 ' Global variables
 '******************************************************************************
-dim Tab, NewLine                ' String constants
+dim Tab, NewLine, Quote         ' String constants
 dim Shell, FSO                  ' Global objects
 dim ProgArgs                    ' Program arguments
 dim Dbg                         ' Output debugging stuff
@@ -195,7 +195,7 @@ end function
 
 
 '******************************************************************************
-' Return an environment string. Fix up Microsofts "innovative" ideas.
+' Return an environment string. Fix up Microsoft's "innovative" ideas.
 '******************************************************************************
 function GetEnv (Key)
     dim Value
@@ -475,6 +475,7 @@ sub InitializeGlobals ()
     ' String stuff used for formatting
     Tab     = Chr (9)
     NewLine = Chr (13)
+    Quote   = Chr (34)
 
     ' Global objects
     set Shell = WScript.CreateObject ("WScript.Shell")
@@ -530,9 +531,9 @@ sub InitializeGlobals ()
 
     ' Uninstaller
     set UninstallCtrlFile = nothing
-    Uninstaller = BuildPath (InstallTarget, "uninstall.vbs")
+    Uninstaller = Quote & BuildPath (InstallTarget, "uninstall.vbs") & Quote
     UninstallCtrlFileName = BuildPath (InstallTarget, "uninstall.lst")
-    UninstallerCmdLine = "-" & Language & " " & AppName & " " & UninstallCtrlFileName
+    UninstallerCmdLine = "-" & Language & " " & AppName & " " & Quote & UninstallCtrlFileName & Quote
 
     ' Registry paths
     RegUninstall = "HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall\" & AppName & "\"
@@ -632,7 +633,7 @@ sub ShowPathsAndLocations ()
     dim Msg
     Msg = Msg & OneLoc ("SystemDrive",   SystemDrive)
     Msg = Msg & OneLoc ("SystemRoot",    SystemRoot)
-    Msg = Msg & OneLoc ("UserName",      UserName)
+    Msg = Msg & OneLoc ("User Name",     UserName)
     Msg = Msg & OneLoc ("UserProfile",   UserProfile)
     Msg = Msg & OneLoc ("ProgramFiles",  ProgramFiles)
     Msg = Msg & OneLoc ("AppData",       AppData)
@@ -938,7 +939,7 @@ sub CreateRegEntries ()
         call Abort (GetMsg ("MSG_REGWRITEERR"))
     end if
     call RegWriteStr (RegUninstall & "DisplayName", AppName & " " & Version)
-    call RegWriteStr (RegUninstall & "UninstallString", "wscript //nologo " & Uninstaller & " " & UninstallerCmdLine)
+    call RegWriteStr (RegUninstall & "UninstallString", "wscript /nologo " & Uninstaller & " " & UninstallerCmdLine)
 
 end sub
 
@@ -1087,12 +1088,12 @@ sub AddEnvironment ()
     ' Add the bin directory to the path if it's not already there
     if not DirInPath (BinDir) then
        call AddToSysPath (BinDir)
-
-       ' Run the wm_envchange program to notify other running programs
-       ' of the changed environment. Ignore errors.
-       call Run (BuildPath (BinDir, "wm_envchange.exe"), 0)
     end if
 
+    ' Run the wm_envchange program to notify other running programs
+    ' of the changed environment. Ignore errors.
+    call Run (BuildPath (BinDir, "wm_envchange.exe"), 0)
+
 end sub