随笔分类 -  程序开发 / 开发工具

摘要:使用Jam语法的时候, 由于文档的缺失,以及on语法的用法多样,我经常被on这个 关键字给搞糊涂。 看了一下源码, 感觉需要整理记录一下on相关的内容。 使用on给变量赋值 首先是用on给变量赋值。 这会在Target的专属Variable集合中添加或删除修改变量。 variable on targ 阅读全文
posted @ 2026-03-04 22:50 dewxin 阅读(3) 评论(0) 推荐(0)
摘要:DumpWorkspace 最终会生成对应的解决方案文件和项目文件。 生成项目文件 主要由 vs2012.lua 等文件实现 VisualStudio2012ProjectMetaTable:Write 负责输出 项目文件 vcxproj存储了包含哪些文件 以及构建项目的指令。 最终VS会通过NMa 阅读全文
posted @ 2026-03-02 22:42 dewxin 阅读(1) 评论(0) 推荐(0)
摘要:生成项目工程主要由 Generate_Workspace 这个函数实现。 Generate_Workspace 创建项目工程 进入函数, 首先会生成一个 包含项目对应IDE名称的目录 local outWorkspacePath = os.path.combine(absoluteOutputPat 阅读全文
posted @ 2026-03-02 22:37 dewxin 阅读(2) 评论(0) 推荐(0)
摘要:解析完命令行参数后,JamToWorkspace.lua会调用BuildProject函数。首先该函数会为 项目的输出路径absoluteOutputPath生成文件夹 os.mkdir(absoluteOutputPath)。 接着BuildProject会生成构建项目所需的相关文件,以及生成ID 阅读全文
posted @ 2026-02-27 00:36 dewxin 阅读(2) 评论(0) 推荐(0)
摘要:Unity是如何调用jam创建项目工程的 Unity中创建 项目工程的代码主要是jam.pl 这个perl脚本里面的 RunJamExe("--workspace","--config=$top/Projects/Jam/WorkSpaceGenerationConfigWin.jam", "--g 阅读全文
posted @ 2026-02-25 20:34 dewxin 阅读(3) 评论(0) 推荐(0)
摘要:当我们使用Jam创建对应IDE的项目工程, 其实就是将Jam中的项目信息转化为对应IDE的项目信息。 但转化出来的项目信息只是展示用的,我们在IDE中点击按钮构建项目时,IDE还是会使用命令行调用jam构建对应的程序。 这和我们直接调用jam去构建对应的程序是一样的。 阅读全文
posted @ 2026-02-24 15:51 dewxin 阅读(3) 评论(0) 推荐(0)
摘要:Jam 语法陷阱 Jam的Variable作用域是全局的 Jam的Variable 作用域一直都是全局的, 即使是local的 变量,它也是存储在全局Variable表中的。只是它在定义local变量的时候,会将全局表中的原来的变量名的变量给置换出来,作用域结束的时候,再将原来的变量给置换回去。 因 阅读全文
posted @ 2026-02-24 15:23 dewxin 阅读(3) 评论(0) 推荐(0)
摘要:转载自 https://blog.walterlv.com/post/understand-the-sln-file.html 一般情况下我们并不需要关心 Visual Studio 解决方案文件格式(.sln),因为 Visual Studio 对解决方案文件的自动修复能力是非常强的。但是如果遇到 阅读全文
posted @ 2026-02-23 23:39 dewxin 阅读(15) 评论(0) 推荐(0)
摘要:Jam Using Jamfiles and Jambase This document describes how to write Jamfiles using the Jam Jambase rules to build software products. Related documents 阅读全文
posted @ 2026-02-15 21:46 dewxin 阅读(4) 评论(0) 推荐(0)
摘要:https://web.mit.edu/darwin/src/modules/jam/Jam.html jam The Jam/MR Executable Program Jam/MR 2.2 USAGE jam [ -a ] [ -n ] [ -v ] [ -d debug ] [ -f rule 阅读全文
posted @ 2026-02-11 21:49 dewxin 阅读(4) 评论(0) 推荐(0)
摘要:本次分析的JamPlus为Jamplus0.3(基于Jam2.5) 阅读本篇文章需要对Lex&Yacc有一定了解,如果没有基础,推荐看完《Lex&Yacc入门》和《使用Yacc》再来阅读本篇文章。 Jam的解析阶段 Jam一共有4个阶段的操作,启动,解析,绑定,更新。 Jam has four ph 阅读全文
posted @ 2026-01-26 22:45 dewxin 阅读(1) 评论(0) 推荐(0)
摘要:上一章重点介绍了lex。本章我们将把注意力转向yacc,不过我们仍会使用lex来生成词法分析器。lex识别正则表达式,而yacc识别完整的语法。lex将输入流分割成片段(词符),然后yacc将这些片段按逻辑组合起来。 本章我们将创建一个桌面计算器:从简单的算术运算开始,逐步添加内置函数、用户变量,最 阅读全文
posted @ 2026-01-22 15:11 dewxin 阅读(12) 评论(0) 推荐(0)
摘要:本系列为deepseek机翻的《Lex&Yacc》 更严谨的文档,可以参考bison文档,第3章开始是技术细节 https://www.gnu.org/software/bison/manual/html_node/index.html#SEC_Contents Lex和yacc可以帮你编写程序来解 阅读全文
posted @ 2026-01-17 23:26 dewxin 阅读(36) 评论(0) 推荐(0)