@@ -872,7 +872,8 @@ def make_winpython(build_number, release_level, architecture,
872
872
basedir = None , verbose = False , remove_existing = True ,
873
873
create_installer = True , simulation = False , rootdir = None ,
874
874
install_options = None , flavor = '' , requirements = None ,
875
- find_links = None ):
875
+ find_links = None , source_dirs = None , toolsdirs = None ,
876
+ docsdirs = None ):
876
877
"""Make WinPython distribution, for a given base directory and
877
878
architecture:
878
879
@@ -903,46 +904,75 @@ def make_winpython(build_number, release_level, architecture,
903
904
shutil .rmtree (wheeldir , onerror = utils .onerror )
904
905
os .mkdir (wheeldir )
905
906
# Copy Every package directory to the wheel directory
906
- source_dirs = [osp .join (basedir , 'packages' + suffix ),
907
- osp .join (basedir , 'packages.src' ),
908
- osp .join (basedir , flavor , 'packages' + suffix ),
909
- osp .join (basedir , flavor , 'packages.src' )]
907
+
908
+ # Optional pre-defined source_dirs
909
+ if source_dirs is None :
910
+ source_dirs = ''
911
+ if not source_dirs == list (source_dirs ):
912
+ source_dirs = source_dirs .split ()
913
+
914
+ # Default natural behavior
915
+ if source_dirs == []:
916
+ source_dirs = [osp .join (basedir , 'packages' + suffix ),
917
+ osp .join (basedir , 'packages.src' ),
918
+ osp .join (basedir , flavor , 'packages' + suffix ),
919
+ osp .join (basedir , flavor , 'packages.src' )]
920
+ print ('source_dirs=' , source_dirs )
910
921
for m in list (set (source_dirs )):
911
922
if osp .isdir (m ):
912
923
src_files = os .listdir (m )
913
924
for file_name in src_files :
914
925
full_file_name = os .path .join (m , file_name )
915
926
shutil .copy (full_file_name , wheeldir )
916
927
917
- # Define List of Tools directory to collect
918
- toolsdir1 = osp .join (basedir , 'tools' )
919
- assert osp .isdir (toolsdir1 )
920
- toolsdirs = [toolsdir1 ]
921
- toolsdir2 = osp .join (basedir , 'tools' + suffix )
922
- if osp .isdir (toolsdir2 ):
923
- toolsdirs .append (toolsdir2 )
924
- # add flavor tools
925
- if flavor != '' :
926
- toolsdir3 = osp .join (basedir , flavor , 'tools' )
927
- toolsdir4 = osp .join (basedir , flavor , 'tools' + suffix )
928
- for flavor_tools in [toolsdir3 , toolsdir4 ]:
929
- if osp .isdir (flavor_tools ):
930
- toolsdirs .append (flavor_tools )
931
-
932
- # Define List of docs directory to collect
933
- docsdir1 = osp .join (basedir , 'docs' )
934
- assert osp .isdir (docsdir1 )
935
- docsdirs = [docsdir1 ]
936
- docsdir2 = osp .join (basedir , 'docs' + suffix )
937
- if osp .isdir (docsdir2 ):
938
- docsdirs .append (docsdir2 )
939
- # add flavor docs
940
- if flavor != '' :
941
- docsdir3 = osp .join (basedir , flavor , 'docs' )
942
- docsdir4 = osp .join (basedir , flavor , 'docs' + suffix )
943
- for flavor_docs in [docsdir3 , docsdir4 ]:
944
- if osp .isdir (flavor_docs ):
945
- docsdirs .append (flavor_docs )
928
+ # Optional pre-defined toolsdirs
929
+ if toolsdirs is None :
930
+ toolsdirs = ''
931
+ if not toolsdirs == list (toolsdirs ):
932
+ toolsdirs = toolsdirs .split ()
933
+
934
+ # Default natural behavior
935
+ if toolsdirs == []:
936
+
937
+ # Define List of Tools directory to collect
938
+ toolsdir1 = osp .join (basedir , 'tools' )
939
+ assert osp .isdir (toolsdir1 )
940
+ toolsdirs = [toolsdir1 ]
941
+ toolsdir2 = osp .join (basedir , 'tools' + suffix )
942
+ if osp .isdir (toolsdir2 ):
943
+ toolsdirs .append (toolsdir2 )
944
+ # add flavor tools
945
+ if flavor != '' :
946
+ toolsdir3 = osp .join (basedir , flavor , 'tools' )
947
+ toolsdir4 = osp .join (basedir , flavor , 'tools' + suffix )
948
+ for flavor_tools in [toolsdir3 , toolsdir4 ]:
949
+ if osp .isdir (flavor_tools ):
950
+ toolsdirs .append (flavor_tools )
951
+ print ('toolsdirs=' , toolsdirs )
952
+
953
+ # Optional pre-defined toolsdirs
954
+ if docsdirs is None :
955
+ docsdirs = ''
956
+ if not docsdirs == list (docsdirs ):
957
+ docsdirs = docsdirs .split ()
958
+
959
+ # Default natural behavior
960
+ if docsdirs == []:
961
+ # Define List of docs directory to collect
962
+ docsdir1 = osp .join (basedir , 'docs' )
963
+ assert osp .isdir (docsdir1 )
964
+ docsdirs = [docsdir1 ]
965
+ docsdir2 = osp .join (basedir , 'docs' + suffix )
966
+ if osp .isdir (docsdir2 ):
967
+ docsdirs .append (docsdir2 )
968
+ # add flavor docs
969
+ if flavor != '' :
970
+ docsdir3 = osp .join (basedir , flavor , 'docs' )
971
+ docsdir4 = osp .join (basedir , flavor , 'docs' + suffix )
972
+ for flavor_docs in [docsdir3 , docsdir4 ]:
973
+ if osp .isdir (flavor_docs ):
974
+ docsdirs .append (flavor_docs )
975
+ print ('docsdirs=' , docsdirs )
946
976
947
977
# install_options = ['--no-index', '--pre', '--find-links=%s' % wheeldir]
948
978
@@ -968,7 +998,7 @@ def make_all(build_number, release_level, pyver,
968
998
rootdir = None , simulation = False , create_installer = True ,
969
999
verbose = False , remove_existing = True , archis = (32 , 64 ),
970
1000
install_options = ['--no-index' ], flavor = '' , requirements = None ,
971
- find_links = None ):
1001
+ find_links = None , source_dirs = None , toolsdirs = None , docsdirs = None ):
972
1002
"""Make WinPython for both 32 and 64bit architectures:
973
1003
974
1004
make_all(build_number, release_level, pyver, rootdir, simulation=False,
@@ -992,7 +1022,8 @@ def make_all(build_number, release_level, pyver,
992
1022
verbose , remove_existing , create_installer , simulation ,
993
1023
rootdir = rootdir , install_options = install_options ,
994
1024
flavor = flavor , requirements = requirements ,
995
- find_links = find_links )
1025
+ find_links = find_links , source_dirs = source_dirs ,
1026
+ toolsdirs = toolsdirs , docsdirs = docsdirs )
996
1027
997
1028
998
1029
if __name__ == '__main__' :
@@ -1005,8 +1036,12 @@ def make_all(build_number, release_level, pyver,
1005
1036
# install_options=r'--no-index --pre --trusted-host=None',
1006
1037
# find_links=r'D:\Winpython\basedir34\packages.srcreq')
1007
1038
1008
- make_all (7 , release_level = 'build1' , pyver = '3.4' , rootdir = r'D:\WinpythonQt5 ' , verbose = True ,
1009
- archis = (64 , ), flavor = 'Qt5 ' ,
1010
- requirements = r'D:\WinpythonQt5 \basedir34\zerorequirements .txt' ,
1039
+ make_all (7 , release_level = 'build1' , pyver = '3.4' , rootdir = r'D:\Winpython ' , verbose = True ,
1040
+ archis = (32 , ), flavor = 'Slim ' ,
1041
+ requirements = r'D:\Winpython \basedir34\slim_requirements .txt' ,
1011
1042
install_options = r'--no-index --pre --trusted-host=None' ,
1012
- find_links = r'D:\Winpython\basedir34\packages.srcreq' )
1043
+ find_links = r'D:\Winpython\basedir34\packages.srcreq' ,
1044
+ source_dirs = r'D:\WinPython\basedir34\packages.src D:\WinPython\basedir34\packages.win32.Slim' ,
1045
+ toolsdirs = r'D:\WinPython\basedir34\Tools.Slim' ,
1046
+ docsdirs = r'D:\WinPython\basedir34\docs.Slim'
1047
+ )
0 commit comments