@@ -7,17 +7,19 @@ const xcode = require('xcode');
77
88require ( './style-code' ) ;
99
10- const classifier = / ^ (?: (?: (?: p l a t f o r m | v e n d o r ) \/ (?: [ ^ / ] + ) \/ | (?: t e s t | b e n c h m a r k ) \/ ) ? (?: ( i n c l u d e | s r c ) \/ ) ? ) ? ( .+ \. h (?: p p | x x ) ? ) $ / ;
10+ const classifier = / ^ (?: (?: (?: p l a t f o r m | v e n d o r ) \/ (?: (? ! i n c l u d e | s r c ) . ) * \/ | (?: t e s t | b e n c h m a r k ) \/ ) ? (?: ( i n c l u d e | s r c ) \/ ) ? ) ? ( .+ \. h (?: p p | x x ) ? ) $ / ;
1111
12- function generateFileList ( filename , root , regex , patterns ) {
12+ function generateFileList ( filename , roots , regex , patterns ) {
1313 writeFileList (
1414 filename ,
15- child_process
15+ [ ] . concat . apply ( [ ] , roots . map ( function ( root ) {
16+ return child_process
1617 . execSync ( `git -C ${ root } ls-files ${ patterns . map ( ( p ) => '"' + p + '"' ) . join ( ' ' ) } ` )
1718 . toString ( )
1819 . trim ( )
1920 . split ( '\n' )
20- . map ( file => path . join ( root , file ) ) ) ;
21+ . map ( file => path . join ( root , file ) )
22+ } ) ) )
2123}
2224
2325function writeFileList ( filename , files ) {
@@ -110,42 +112,41 @@ function generateXcodeSourceList(project, target, name) {
110112 writeIfModified ( `${ projectPath } /${ name || target } -files.json` , JSON . stringify ( json , null , 4 ) + '\n' ) ;
111113}
112114
113- generateFileList ( 'src/core-files.json' , '.' , / ^ (?: s r c | i n c l u d e ) \/ (?: m b g l \/ ) ? ( .+ ) \/ [ ^ \/ ] + $ / ,
115+ generateFileList ( 'src/core-files.json' , [ '.' ] , / ^ (?: s r c | i n c l u d e ) \/ (?: m b g l \/ ) ? ( .+ ) \/ [ ^ \/ ] + $ / ,
114116 [ 'include/*.hpp' , 'include/*.h' , 'src/*.hpp' , 'src/*.cpp' , 'src/*.h' , 'src/*.c' ] ) ;
115117
116- generateFileList ( 'benchmark/benchmark-files.json' , '.' , / ^ b e n c h m a r k \/ (?: (?: s r c | i n c l u d e ) \/ ) ? (?: m b g l \/ ) ? (?: ( .+ ) \/ ) ? [ ^ \/ ] + $ / ,
117- [ 'benchmark/*.hpp' , 'benchmark/*.cpp' , 'benchmark/*.h ' , 'benchmark/*.c' ] ) ;
118+ generateFileList ( 'benchmark/benchmark-files.json' , [ '.' ] , / ^ b e n c h m a r k \/ (?: (?: s r c | i n c l u d e ) \/ ) ? (?: m b g l \/ ) ? (?: ( .+ ) \/ ) ? [ ^ \/ ] + $ / ,
119+ [ 'benchmark/*.hpp' , 'benchmark/*.cpp' , 'benchmark/*.host ' , 'benchmark/*.c' ] ) ;
118120
119- generateFileList ( 'test/test-files.json' , '.' , / ^ t e s t \/ (?: (?: s r c | i n c l u d e ) \/ ) ? (?: m b g l \/ ) ? (?: ( .+ ) \/ ) ? [ ^ \/ ] + $ / ,
121+ generateFileList ( 'test/test-files.json' , [ '.' ] , / ^ t e s t \/ (?: (?: s r c | i n c l u d e ) \/ ) ? (?: m b g l \/ ) ? (?: ( .+ ) \/ ) ? [ ^ \/ ] + $ / ,
120122 [ 'test/*.hpp' , 'test/*.cpp' , 'test/*.h' , 'test/*.c' ] ) ;
121123
122124generateXcodeSourceList ( 'platform/macos/macos.xcodeproj' , 'dynamic' , 'sdk' ) ;
123125
124126generateXcodeSourceList ( 'platform/ios/ios.xcodeproj' , 'dynamic' , 'sdk' ) ;
125127
126128const vendorRegex = / ^ (?: (?: s r c | i n c l u d e ) \/ ) ? (?: ( .+ ) \/ ) ? [ ^ \/ ] + $ /
127- generateFileList ( 'vendor/args-files.json' , 'vendor/args' , vendorRegex , [ "args.hxx" ] ) ;
128- generateFileList ( 'vendor/boost-files.json' , 'vendor/boost' , vendorRegex , [ "include/**/*.hpp" , "include/**/*.h" ] ) ;
129- generateFileList ( 'vendor/cheap-ruler-cpp-files.json' , 'vendor/cheap-ruler-cpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
130- generateFileList ( 'vendor/earcut.hpp-files.json' , 'vendor/earcut.hpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
131- generateFileList ( 'vendor/eternal-files.json' , 'vendor/eternal' , vendorRegex , [ "include/**/*.hpp" ] ) ;
132- generateFileList ( 'vendor/expected-files.json' , 'vendor/expected' , vendorRegex , [ "include/expected.hpp" ] ) ;
133- generateFileList ( 'vendor/filesystem-files.json' , 'vendor/filesystem' , vendorRegex , [ "include/**/*.hpp" ] ) ;
134- generateFileList ( 'vendor/geojson-vt-cpp-files.json' , 'vendor/geojson-vt-cpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
135- generateFileList ( 'vendor/geojson.hpp-files.json' , 'vendor/geojson.hpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
136- generateFileList ( 'vendor/geometry.hpp-files.json' , 'vendor/geometry.hpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
137- generateFileList ( 'vendor/icu-files.json' , 'vendor/icu' , vendorRegex , [ "include/**/*.h" , "src/*.h" , "src/*.cpp" ] ) ;
138- generateFileList ( 'vendor/jni.hpp-files.json' , 'vendor/jni.hpp' , vendorRegex , [ "include/**/*.hpp" , ":!:include/jni/string_conversion.hpp" ] ) ;
139- generateFileList ( 'vendor/kdbush.hpp-files.json' , 'vendor/kdbush.hpp' , vendorRegex , [ "include/*.hpp" ] ) ;
140- generateFileList ( 'vendor/optional-files.json' , 'vendor/optional' , vendorRegex , [ "optional.hpp" ] ) ;
141- generateFileList ( 'vendor/pixelmatch-cpp-files.json' , 'vendor/pixelmatch-cpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
142- generateFileList ( 'vendor/polylabel-files.json' , 'vendor/polylabel' , vendorRegex , [ "include/**/*.hpp" ] ) ;
143- generateFileList ( 'vendor/protozero-files.json' , 'vendor/protozero' , vendorRegex , [ "include/**/*.hpp" ] ) ;
144- generateFileList ( 'vendor/rapidjson-files.json' , 'vendor/rapidjson' , vendorRegex , [ "include/**/*.h" ] ) ;
145- generateFileList ( 'vendor/shelf-pack-cpp-files.json' , 'vendor/shelf-pack-cpp' , vendorRegex , [ "include/**/*.hpp" ] ) ;
146- generateFileList ( 'vendor/sqlite-files.json' , 'vendor/sqlite' , vendorRegex , [ "include/*.h" , "src/*.c" ] ) ;
147- generateFileList ( 'vendor/supercluster.hpp-files.json' , 'vendor/supercluster.hpp' , vendorRegex , [ "include/*.hpp" ] ) ;
148- generateFileList ( 'vendor/unique_resource-files.json' , 'vendor/unique_resource' , vendorRegex , [ "unique_resource.hpp" ] ) ;
149- generateFileList ( 'vendor/variant-files.json' , 'vendor/variant' , vendorRegex , [ "include/**/*.hpp" ] ) ;
150- generateFileList ( 'vendor/vector-tile-files.json' , 'vendor/vector-tile' , vendorRegex , [ "include/**/*.hpp" ] ) ;
151- generateFileList ( 'vendor/wagyu-files.json' , 'vendor/wagyu' , vendorRegex , [ "include/**/*.hpp" ] ) ;
129+ generateFileList ( 'vendor/args-files.json' , [ 'vendor/args' ] , vendorRegex , [ "args.hxx" ] ) ;
130+ generateFileList ( 'vendor/boost-files.json' , [ 'vendor/boost' ] , vendorRegex , [ "include/**/*.hpp" , "include/**/*.h" ] ) ;
131+ generateFileList ( 'vendor/cheap-ruler-cpp-files.json' , [ 'vendor/cheap-ruler-cpp' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
132+ generateFileList ( 'vendor/earcut.hpp-files.json' , [ 'vendor/earcut.hpp' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
133+ generateFileList ( 'vendor/eternal-files.json' , [ 'vendor/eternal' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
134+ generateFileList ( 'vendor/expected-files.json' , [ 'vendor/expected' ] , vendorRegex , [ "include/expected.hpp" ] ) ;
135+ generateFileList ( 'vendor/filesystem-files.json' , [ 'vendor/filesystem' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
136+ generateFileList ( 'vendor/geojson-vt-cpp-files.json' , [ 'vendor/geojson-vt-cpp' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
137+ generateFileList ( 'vendor/geojson.hpp-files.json' , [ 'vendor/geojson.hpp' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
138+ generateFileList ( 'vendor/icu-files.json' , [ 'vendor/icu' ] , vendorRegex , [ "include/**/*.h" , "src/*.h" , "src/*.cpp" ] ) ;
139+ generateFileList ( 'vendor/jni.hpp-files.json' , [ 'vendor/jni.hpp' ] , vendorRegex , [ "include/**/*.hpp" , ":!:include/jni/string_conversion.hpp" ] ) ;
140+ generateFileList ( 'vendor/kdbush.hpp-files.json' , [ 'vendor/kdbush.hpp' ] , vendorRegex , [ "include/*.hpp" ] ) ;
141+ generateFileList ( 'vendor/mapbox-base-files.json' , [ 'vendor/mapbox-base/libs/geometry.hpp' , 'vendor/mapbox-base/libs/variant' ] , vendorRegex , [ "include/*.hpp" , "include/**/*.hpp" ] ) ;
142+ generateFileList ( 'vendor/optional-files.json' , [ 'vendor/optional' ] , vendorRegex , [ "optional.hpp" ] ) ;
143+ generateFileList ( 'vendor/pixelmatch-cpp-files.json' , [ 'vendor/pixelmatch-cpp' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
144+ generateFileList ( 'vendor/polylabel-files.json' , [ 'vendor/polylabel' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
145+ generateFileList ( 'vendor/protozero-files.json' , [ 'vendor/protozero' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
146+ generateFileList ( 'vendor/rapidjson-files.json' , [ 'vendor/rapidjson' ] , vendorRegex , [ "include/**/*.h" ] ) ;
147+ generateFileList ( 'vendor/shelf-pack-cpp-files.json' , [ 'vendor/shelf-pack-cpp' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
148+ generateFileList ( 'vendor/sqlite-files.json' , [ 'vendor/sqlite' ] , vendorRegex , [ "include/*.h" , "src/*.c" ] ) ;
149+ generateFileList ( 'vendor/supercluster.hpp-files.json' , [ 'vendor/supercluster.hpp' ] , vendorRegex , [ "include/*.hpp" ] ) ;
150+ generateFileList ( 'vendor/unique_resource-files.json' , [ 'vendor/unique_resource' ] , vendorRegex , [ "unique_resource.hpp" ] ) ;
151+ generateFileList ( 'vendor/vector-tile-files.json' , [ 'vendor/vector-tile' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
152+ generateFileList ( 'vendor/wagyu-files.json' , [ 'vendor/wagyu' ] , vendorRegex , [ "include/**/*.hpp" ] ) ;
0 commit comments