{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,1,17]],"date-time":"2026-01-17T08:40:06Z","timestamp":1768639206388,"version":"3.49.0"},"reference-count":52,"publisher":"Institute of Electronics, Information and Communications Engineers (IEICE)","issue":"1","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IEICE Trans. Inf. &amp; Syst."],"published-print":{"date-parts":[[2021,1,1]]},"DOI":"10.1587\/transinf.2020edp7105","type":"journal-article","created":{"date-parts":[[2020,12,31]],"date-time":"2020-12-31T22:27:41Z","timestamp":1609453661000},"page":"126-137","source":"Crossref","is-referenced-by-count":2,"title":["Native Build System for Unity Builds with Sophisticated Bundle Strategies"],"prefix":"10.1587","volume":"E104.D","author":[{"given":"Takafumi","family":"KUBOTA","sequence":"first","affiliation":[{"name":"Department of Information and Computer Science, Keio University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Kenji","family":"KONO","sequence":"additional","affiliation":[{"name":"Department of Information and Computer Science, Keio University"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"532","reference":[{"key":"1","unstructured":"[1] \u201cApache Ant-Welcome.\u201d https:\/\/ant.apache.org\/."},{"key":"2","unstructured":"[2] \u201cBuck: A fast build tool.\u201d https:\/\/buckbuild.com\/."},{"key":"3","unstructured":"[3] \u201cCmake.\u201d https:\/\/cmake.org\/."},{"key":"4","unstructured":"[4] \u201cA low-level build system, used by Xcode and the Swift Package Manager.\u201d https:\/\/github.com\/apple\/swift-llbuild."},{"key":"5","doi-asserted-by":"crossref","unstructured":"[5] S.I. Feldman, \u201cMake \u2014 A Program for Maintaining Computer Programs,\u201d Software: Practice and Experience, 1979. https:\/\/www.gnu.org\/software\/make\/.","DOI":"10.1002\/spe.4380090402"},{"key":"6","unstructured":"[6] \u201cThe Meson Build system.\u201d https:\/\/mesonbuild.com\/."},{"key":"7","unstructured":"[7] \u201cNinja, a small build system with a focus on speed.\u201d https:\/\/ninja-build.org\/."},{"key":"8","doi-asserted-by":"crossref","unstructured":"[8] S. Erdweg, M. Lichter, and M. Weiel, \u201cA sound and optimal incremental build system with dynamic dependencies,\u201d Proc. 2015 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2015. 10.1145\/2814270.2814316","DOI":"10.1145\/2814270.2814316"},{"key":"9","unstructured":"[9] \u201cSCons: A software construction tool-SCons.\u201d https:\/\/scons.org\/."},{"key":"10","unstructured":"[10] \u201cShake build system.\u201d https:\/\/shakebuild.com\/."},{"key":"11","unstructured":"[11] M. Catanzaro, \u201cOn Compiling WebKit (now twice as fast!).\u201d https:\/\/blogs.gnome.org\/mcatanzaro\/2018\/02\/17\/on-compiling-webkit-now-twice-as-fast\/, 2 2017."},{"key":"12","unstructured":"[12] Jussi, \u201cAutomatically finding slow headers in C++ projects.\u201d http:\/\/nibblestew.blogspot.com\/2018\/02\/automatically-finding-slow-headers-in-c.html, 2 2018."},{"key":"13","unstructured":"[13] S. McIntosh, B. Adams, M. Nagappan, and A.E. Hassan, \u201cIdentifying and understanding header file hotspots in C\/C++ build processes,\u201d Automated Software Engineering, 2005."},{"key":"14","doi-asserted-by":"crossref","unstructured":"[14] T. Kubota, Y. Suzuki, and K. Kubota, \u201cTo Unify or Not to Unify: A Case Study on Unified Builds (in WebKit),\u201d Proc. 28th International Conference on Compiler Construction (CC), 2019.","DOI":"10.1145\/3302516.3307347"},{"key":"15","unstructured":"[15] \u201cWebkit.\u201d https:\/\/webkit.org\/."},{"key":"16","unstructured":"[16] \u201cThe chromium projects.\u201d http:\/\/www.chromium.org\/."},{"key":"17","unstructured":"[17] \u201cWebkit build central.\u201d https:\/\/build.webkit.org\/."},{"key":"18","unstructured":"[18] K. Miller, \u201c[webkit-dev] unified source builds: A new rule for static variables,\u201d 2017. https:\/\/lists.webkit.org\/pipermail\/webkit-dev\/2017-August\/029465.html."},{"key":"19","unstructured":"[19] \u201cJumbo \/ unity builds.\u201d https:\/\/chromium.googlesource.com\/chromium\/src\/+\/lkgr\/docs\/jumbo.md."},{"key":"20","unstructured":"[20] \u201cUnity builds in meson.\u201d http:\/\/mesonbuild.com\/Unity-builds.html."},{"key":"21","unstructured":"[21] \u201ccotire.\u201d https:\/\/github.com\/sakra\/cotire."},{"key":"22","unstructured":"[22] \u201cFASTBuild-Function Reference-Unity.\u201d http:\/\/www.fastbuild.org\/docs\/functions\/unity.html."},{"key":"23","unstructured":"[23] O. Arkhipova, \u201cSupport for Unity (Jumbo) Files in Visual Studio 2017 15.8 (Experimental).\u201d https:\/\/devblogs.microsoft.com\/cppblog\/support-for-unity-jumbo-files-in-visual-studio-2017-15-8-experimental\/."},{"key":"24","unstructured":"[24] \u201cwaf.\u201d https:\/\/gitlab.com\/ita1024\/waf\/tree\/master."},{"key":"25","unstructured":"[25] C. Lattner and V. Adve, \u201cLLVM: A Compilation Framework for Lifelong Program Analysis &amp; Transformation,\u201d Proc. 2004 International Symposium on Code Generation and Optimization (CGO), Palo Alto, California, 2004. 10.1109\/cgo.2004.1281665"},{"key":"26","unstructured":"[26] \u201cThe mesa 3d graphics library.\u201d https:\/\/www.mesa3d.org\/."},{"key":"27","unstructured":"[27] \u201cUnity (Jumbo) build (!3611) \u00b7 Merge Requests \u00b7 CMake \/ CMake.\u201d https:\/\/gitlab.kitware.com\/cmake\/cmake\/merge_requests\/3611."},{"key":"28","unstructured":"[28] \u201cBazel-a fast, scalable, multi-language and extensible build system.\u201d https:\/\/bazel.build."},{"key":"29","unstructured":"[29] \u201cDune-A composable build system.\u201d https:\/\/github.com\/ocaml\/dune."},{"key":"30","unstructured":"[30] R. de Levie, Advanced Excel for Scientific Data Analysis, Oxford University Press, 2004."},{"key":"31","unstructured":"[31] \u201cgittup\/tup: Tup is a file-based build system.\u201d https:\/\/github.com\/gittup\/tup."},{"key":"32","doi-asserted-by":"crossref","unstructured":"[32] A. Mokhov, N. Mitchell, and S. Peyton Jones, \u201cBuild systems a la carte,\u201d Proc. 23rd International Conference on Functional Programming (ICFP), 2018.","DOI":"10.1145\/3236774"},{"key":"33","unstructured":"[33] \u201cccache \u2014 compiler cache.\u201d https:\/\/ccache.samba.org\/."},{"key":"34","unstructured":"[34] C. Dietrich, V. Rothberg, L. F\u00fcracker, A. Ziegler, and D. Lohmann, \u201ccHash: Detection of Redundant Compilations via AST Hashing,\u201d Proc. 2017 USENIX Annual Technical Conference (ATC), 2017."},{"key":"35","unstructured":"[35] \u201cPrecompiled header files.\u201d https:\/\/docs.microsoft.com\/en-us\/cpp\/build\/creating-precompiled-header-files?view=vs-2019."},{"key":"36","unstructured":"[36] \u201cUsing the gnu compiler collection (gcc): Precompiled headers.\u201d https:\/\/gcc.gnu.org\/onlinedocs\/gcc\/Precompiled-Headers.html."},{"key":"37","unstructured":"[37] \u201cPrecompiled header and modules internals \u2014 clang 9 documentation.\u201d https:\/\/clang.llvm.org\/docs\/PCHInternals.html."},{"key":"38","unstructured":"[38] J. Lawall and G. Muller, \u201cCoccinelle: 10 years of automated evolution in the linux kernel,\u201d 2018 USENIX Annual Technical Conference (USENIX ATC 18), Boston, MA, pp.601-614, USENIX Association, July 2018."},{"key":"39","unstructured":"[39] \u201cWelcome to the Buildbot for the LLVM project!.\u201d http:\/\/lab.llvm.org:8011\/."},{"key":"40","unstructured":"[40] G. Garen, \u201c[webkit-dev] growing tired of long build times? check out this awesome new way to speed up your build... soon (hint: It&apos;s not buying a new computer),\u201d 2017. https:\/\/lists.webkit.org\/pipermail\/webkit-dev\/2017-August\/029508.html."},{"key":"41","unstructured":"[41] P.N. Tan, M. Steinbach, A. Karpatne, and V. Kumar, Introduction to Data Mining, 2nd ed., Pearson, 2019."},{"key":"42","doi-asserted-by":"publisher","unstructured":"[42] A.H. Ashouri, W. Killian, J. Cavazos, G. Palermo, and C. Silvano, \u201cA survey on compiler autotuning using machine learning,\u201d ACM Comput. Surv., 2018. 10.1145\/3197978","DOI":"10.1145\/3197978"},{"key":"43","unstructured":"[43] \u201cZapcc-A (Much) Faster C++ Compiler.\u201d https:\/\/www.zapcc.com\/."},{"key":"44","unstructured":"[44] G.D. Reis, M. Hall, and G. Nishanov, \u201cA Module System for C++ (Revision 4),\u201d 2016. http:\/\/www.open-std.org\/jtc1\/sc22\/wg21\/docs\/papers\/2016\/p0142r0.pdf."},{"key":"45","unstructured":"[45] \u201cLlvm link time optimization: Design and implementation.\u201d https:\/\/llvm.org\/docs\/LinkTimeOptimization.html."},{"key":"46","doi-asserted-by":"crossref","unstructured":"[46] T. Johnson, M. Amini, and X.D. Li, \u201cThinLTO: Scalable and incremental LTO,\u201d Proc. 2017 International Symposium on Code Generation and Optimization (CGO), 2017. 10.1109\/cgo.2017.7863733","DOI":"10.1109\/CGO.2017.7863733"},{"key":"47","doi-asserted-by":"crossref","unstructured":"[47] A. Ayers, S. de Jong, J. Peyton, and R. Schooler, \u201cScalable Cross-Module Optimization,\u201d Proc. ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation (PLDI), 1998. 10.1145\/277650.277745","DOI":"10.1145\/277650.277745"},{"key":"48","unstructured":"[48] S. Moon, X.D. Li, R. Hundt, D.R. Chakrabarti, L.A. Lozano, U. Srinivasan, and S.-M. Liu, \u201cSYZYGY-A Framework for Scalable Cross-Module IPO,\u201d Proc. 2004 International Symposium on Code Generation and Optimization (CGO), 2004. 10.1109\/cgo.2004.1281664"},{"key":"49","doi-asserted-by":"crossref","unstructured":"[49] P.W. Sathyanathan, W. He, and T.H. Tzen, \u201cIncremental whole program optimization and compilation,\u201d Proc. 2017 International Symposium on Code Generation and Optimization (CGO), 2017. 10.1109\/cgo.2017.7863742","DOI":"10.1109\/CGO.2017.7863742"},{"key":"50","unstructured":"[50] P. Briggs, D. Evans, B. Grant, R. Hundt, W. Maddox, D. Novillo, S. Park, D. Sehr, I. Taylor, and O. Wild, \u201cWHOPR-Fast and Scalable Whole Program Optimizations in GCC,\u201d 2007. https:\/\/www.gnu.org\/software\/gcc\/projects\/lto\/whopr.pdf."},{"key":"51","unstructured":"[51] D.X. Li, R. Ashok, and R. Hundt, \u201cLightweight Feedback-Directed Cross-Module Optimization,\u201d Proc. 2010 International Symposium on Code Generation and Optimization (CGO), 2010. 10.1145\/1772954.1772964"},{"key":"52","unstructured":"[52] X.D. Li, R. Ashok, and R. Hundt, \u201cLIPO-Profile Feedback Based Lightweight IPO.\u201d https:\/\/gcc.gnu.org\/wiki\/LightweightIpo."}],"container-title":["IEICE Transactions on Information and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.jstage.jst.go.jp\/article\/transinf\/E104.D\/1\/E104.D_2020EDP7105\/_pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,1,2]],"date-time":"2021-01-02T03:26:00Z","timestamp":1609557960000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.jstage.jst.go.jp\/article\/transinf\/E104.D\/1\/E104.D_2020EDP7105\/_article"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021,1,1]]},"references-count":52,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2021]]}},"URL":"https:\/\/doi.org\/10.1587\/transinf.2020edp7105","relation":{},"ISSN":["0916-8532","1745-1361"],"issn-type":[{"value":"0916-8532","type":"print"},{"value":"1745-1361","type":"electronic"}],"subject":[],"published":{"date-parts":[[2021,1,1]]}}}