summaryrefslogtreecommitdiffstats
path: root/HOWTO/new-platform.txt
blob: 8aa11ec2a5e9bfb3e9349e241d9ccb91a063b581 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
__COPYRIGHT__

Adding a new Platform to the SCons distribution:

    --  Add the following files (aenf):

            src/engine/SCons/Platform/xxx.py

	    	Use one of the other Platform files as a template.

                The tool_list() function should return the list of tools
                that will be available through the default construction
                Environment.

		The generate() function should set construction variables:

		    ENV
		    OBJPREFIX
		    OBJSUFFIX
		    PROGPREFIX
		    PROGSUFFIX
		    LIBPREFIX
		    LIBSUFFIX
		    SHLIBPREFIX
		    SHLIBSUFFIX
		    LIBPREFIXES
		    LIBSUFFIXES

    --  Modify the following files (aecp):

            doc/man/scons.1

		Add the new platform to the example of the platform
		keyword when instantiating an Environment.

		Add the list of default tools returned by tool_list()
		for this platform.

            rpm/scons.spec

	    	Add to the list at the bottom of the file:
		
		    /usr/lib/scons/SCons/Platform/xxx.py
	    	    /usr/lib/scons/SCons/Platform/xxx.pyc

		[THIS LIST SHOULD BE GENERATED FROM MANIFEST.in,
		AND WILL BE SOME DAY.]

            src/CHANGES.txt

	        Add mention of the new Platform specification.

            src/engine/MANIFEST.in

	    	Add to the list:

		    SCons/Platform/xxx.py

            src/engine/SCons/Platform/Platform/PlatformTests.py

                Copy and paste one of the other platform tests to verify
                the ability to initialize an environment through a call
                to the object returned by Platform('xxx')

            src/engine/SCons/Platform/__init__.py

                Add logic to platform_default() (if necessary) to return
                the appropriate platform string.

    	    test/Platform.py

                Add the new platform to the SConstruct and SConscript
                files.  Add the expected output to the "expect"
                variable.