1. SCons
  2. Core
  3. SCons

Commits

Steven Knight  committed 3dc8320

Add SHOBJPREFIX AND SHOBJSUFFIX.

  • Participants
  • Parent commits 332bfd8
  • Branches default

Comments (0)

Files changed (7)

File doc/man/scons.1

View file
  • Ignore whitespace
 specified above for the
 .B StaticObject
 builder.
-The target object file prefix
-(specified by the $OBJPREFIX construction variable; nothing by default)
+The target shared object file prefix
+(specified by the $SHOBJPREFIX construction variable;
+by default, the same as $OBJPREFIX)
 and suffix
-(specified by the $OBJSUFFIX construction variable;
-\.obj on Windows systems, .o on POSIX systems)
+(specified by the $SHOBJSUFFIX construction variable;
+by default, the same as $OBJSUFFIX)
 are automatically added to the target if not already present.
 Examples:
 
 The command line used to link object files into an executable.
 
 .IP OBJPREFIX 
-The prefix used for object file names.
+The prefix used for (static) object file names.
 
 .IP OBJSUFFIX 
-The suffix used for object file names.
+The suffix used for (static) object file names.
 
 .IP PDFCOM
 The command line used to convert TeX DVI files into a PDF file.
 .IP SHLINKFLAGS
 General options passed to the linker for programs using shared libraries.
 
+.IP SHOBJPREFIX 
+The prefix used for shared object file names.
+
+.IP SHOBJSUFFIX 
+The suffix used for shared object file names.
+
 .IP TAR
 The tar archiver.
 

File src/CHANGES.txt

View file
  • Ignore whitespace
     ...," "done reading SConscript files," "Building targets," and
     "done building targets."
 
+  - Add separate $SHOBJPREFIX and $SHOBJSUFFIX construction variables
+    (by default, the same as $OBJPREFIX and $OBJSUFFIX).
+
  From Jeff Petkau:
 
   - Fix interpretation of '#/../foo' on Win32 systems.

File src/engine/SCons/Defaults.py

View file
  • Ignore whitespace
 def SharedObject():
     """A function for generating the shared object Builder."""
     return SCons.Builder.Builder(action = {},
-                                 prefix = '$OBJPREFIX',
-                                 suffix = '$OBJSUFFIX',
+                                 prefix = '$SHOBJPREFIX',
+                                 suffix = '$SHOBJSUFFIX',
                                  src_builder = ['CFile', 'CXXFile'])
 
 ProgScan = SCons.Scanner.Prog.ProgScan()
                                       prefix = '$SHLIBPREFIX',
                                       suffix = '$SHLIBSUFFIX',
                                       scanner = ProgScan,
-                                      src_suffix = '$OBJSUFFIX',
+                                      src_suffix = '$SHOBJSUFFIX',
                                       src_builder = 'SharedObject')
 
 def DVI():

File src/engine/SCons/Platform/cygwin.py

View file
  • Ignore whitespace
     env['ENV']['PATH']    = '/usr/local/bin:/bin:/usr/bin'
     env['OBJPREFIX']      = ''
     env['OBJSUFFIX']      = '.o'
+    env['SHOBJPREFIX']    = '$OBJPREFIX'
+    env['SHOBJSUFFIX']    = '$OBJSUFFIX'
     env['PROGPREFIX']     = ''
     env['PROGSUFFIX']     = '.exe'
     env['LIBPREFIX']      = 'lib'

File src/engine/SCons/Platform/os2.py

View file
  • Ignore whitespace
         env['ENV']        = {}
     env['OBJPREFIX']      = ''
     env['OBJSUFFIX']      = '.obj'
+    env['SHOBJPREFIX']    = '$OBJPREFIX'
+    env['SHOBJSUFFIX']    = '$OBJSUFFIX'
     env['PROGPREFIX']     = ''
     env['PROGSUFFIX']     = '.exe'
     env['LIBPREFIX']      = ''

File src/engine/SCons/Platform/posix.py

View file
  • Ignore whitespace
     env['ENV']['PATH']    = '/usr/local/bin:/bin:/usr/bin'
     env['OBJPREFIX']      = ''
     env['OBJSUFFIX']      = '.o'
+    env['SHOBJPREFIX']    = '$OBJPREFIX'
+    env['SHOBJSUFFIX']    = '$OBJSUFFIX'
     env['PROGPREFIX']     = ''
     env['PROGSUFFIX']     = ''
     env['LIBPREFIX']      = 'lib'

File src/engine/SCons/Platform/win32.py

View file
  • Ignore whitespace
     env['ENV']['PATHEXT'] = '.COM;.EXE;.BAT;.CMD'
     env['OBJPREFIX']      = ''
     env['OBJSUFFIX']      = '.obj'
+    env['SHOBJPREFIX']    = '$OBJPREFIX'
+    env['SHOBJSUFFIX']    = '$OBJSUFFIX'
     env['PROGPREFIX']     = ''
     env['PROGSUFFIX']     = '.exe'
     env['LIBPREFIX']      = ''