Commit Graph

3360 Commits

Author SHA1 Message Date
Haolan
e84f859d6c fix: unexpected string 2025-09-15 11:04:30 +08:00
Haolan
4b2e1e777c chore: move _embdemo to _demo 2025-09-15 10:57:31 +08:00
xushiwei
18e036568d Merge pull request #1299 from MeteorsLiu/fix-export-check-ci
ci: fix clite init() causing linting failure
2025-09-15 09:17:15 +08:00
Haolan
e4f77f00a6 ci: fix clite init() causing linting failure 2025-09-14 23:06:09 +08:00
visualfc
8bfe133bee internal/cabi: support target esp32c3 2025-09-14 20:50:13 +08:00
xushiwei
897f944760 Merge pull request #1296 from visualfc/cabi_esp32
internal/cabi: support target esp32
2025-09-14 10:32:20 +08:00
xushiwei
a202b484a9 Merge pull request #1285 from cpunion/impl-build-mode
Implement llgo build mode support
2025-09-14 10:30:47 +08:00
xushiwei
17dfdd38c2 Merge pull request #1283 from cpunion/reorganize-demos
reorganize: consolidate demo directories
2025-09-14 10:26:45 +08:00
xushiwei
30a3e73d4f Merge pull request #1268 from MeteorsLiu/emb-runtime
fix(runtime): go runtime when building in baremetal environment
2025-09-14 10:26:02 +08:00
visualfc
6170c1dcb9 internal/cabi: support target esp32 2025-09-12 11:16:25 +08:00
Li Jie
cc65ee18b5 full test params passing of exported functions 2025-09-12 10:08:01 +08:00
Li Jie
50d1d2e19a remove duplicated return 2025-09-11 15:02:45 +08:00
Li Jie
c3b674d804 add export demo and test 2025-09-11 14:08:52 +08:00
Li Jie
3605eeeef7 export c header file for build library 2025-09-11 14:07:58 +08:00
Li Jie
729e5772a0 process //export with initLink 2025-09-11 08:53:17 +08:00
Li Jie
a2742a9de4 set buildmode to exe for non-build mode 2025-09-11 08:53:17 +08:00
Li Jie
68947bfc1f Fix library mode linking by optimizing genMainModuleFile
- For library modes (c-archive, c-shared), only generate minimal code with __llgo_argc/__llgo_argv globals
- For executable mode, generate full main function with runtime initialization
- This fixes undefined symbol errors when linking libraries that reference these globals
2025-09-11 08:53:17 +08:00
Li Jie
e05c8b9f46 Implement llgo build mode support (#1197)
- Add BuildMode type with three build modes: exe, c-archive, c-shared
- Restrict buildmode flag to llgo build command only (not run/install/test)
- Implement build mode specific linker arguments:
  - c-shared: use -shared -fPIC flags
  - c-archive: use ar tool to create static archive
  - exe: default executable mode
- Add normalizeOutputPath function for platform-specific file naming conventions
- Generate C header files for library modes
- Fix buildmode flag conflict by removing from PassArgs
- Add comprehensive test coverage for all build modes
- Resolve duplicate logic between defaultAppExt and normalizeOutputPath

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-11 08:53:17 +08:00
Haolan
dc59333657 test: remove chinses commets 2025-09-10 17:05:38 +08:00
Haolan
c50395b2b9 test: add esp32 libc and rt test 2025-09-10 17:03:05 +08:00
Haolan
a1d7417684 chore: remove unused file 2025-09-10 14:15:22 +08:00
Haolan
0bbdb6c204 fix: change clite's LLGoPackage to true to execute its init() 2025-09-10 14:14:22 +08:00
Haolan
0ed3a54244 Merge branch 'main' of https://github.com/goplus/llgo into emb-runtime 2025-09-10 14:06:06 +08:00
xushiwei
d5ad4d997d Merge pull request #1272 from visualfc/cabi_opt
internal/cabi: call optimization
2025-09-10 13:49:48 +08:00
Haolan
3cc8fd1c91 Merge branch 'main' of https://github.com/goplus/llgo into emb-runtime 2025-09-10 13:49:19 +08:00
xushiwei
d0962d8adc Merge pull request #1264 from MeteorsLiu/libc-version
Fix xtensa newlib `stdio` stuck and support libc version
2025-09-10 13:46:36 +08:00
xushiwei
d7b9968d9a Merge pull request #1253 from luoliwoshang/release/esp-clang
release:compile & release with esp clang/llvm
2025-09-10 13:40:12 +08:00
xushiwei
b72311cd6d Merge pull request #1275 from luoliwoshang/update/clang
internal/crosscompile:update clang with older glibc & more small size
2025-09-10 13:38:00 +08:00
Haolan
073e79d03b chore: rename ArchiveSrcDir 2025-09-10 11:47:02 +08:00
visualfc
dd50d4dff0 internal/cabi: option optimize 2025-09-09 21:10:53 +08:00
visualfc
b6d43ae88a internal/cabi: transformFuncBody check AttrWidthType(2) 2025-09-09 21:04:24 +08:00
visualfc
89e93f9e7a internal/cabi: transformCallInstr check AttrPointer 2025-09-09 21:04:24 +08:00
visualfc
0b6a558667 internal/cbi: replaceParamAlloc 2025-09-09 21:04:24 +08:00
visualfc
937f8339c7 internal/cabi: call optimization 2025-09-09 21:04:24 +08:00
luoliwoshang
a17f1f0bb0 set origin test
avoid  transform
2025-09-09 19:05:26 +08:00
Haolan
8ce6c3b9ab chore: fix commets and format
Update internal/crosscompile/compile/rtlib/rt_test.go

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

Update internal/crosscompile/compile/libc/libc_test.go

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

Update internal/crosscompile/compile/libc/libc_test.go

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

chore: format contents
2025-09-09 18:23:31 +08:00
Haolan
d4474be921 chore: fix some wrong commets 2025-09-09 18:23:31 +08:00
Haolan
6aa63121ff chore: upgrade newlib 2025-09-09 18:23:31 +08:00
Haolan
b239494a9f test: add test for getting config 2025-09-09 18:23:31 +08:00
Haolan
f573ebe40b fix: xtensa stdio 2025-09-09 18:23:31 +08:00
Haolan
95bd495d7b feat: support libc version 2025-09-09 18:23:31 +08:00
xushiwei
b1d95bb73c Merge pull request #1284 from visualfc/valist_demo
cl/_testrt/vamethod: optimize code
2025-09-09 17:29:38 +08:00
visualfc
5dbf1a7561 cl/_testrt/vamethod: optimize code 2025-09-09 17:25:22 +08:00
xushiwei
0dbc686960 Merge pull request #1281 from goplus/dependabot/github_actions/actions/setup-go-6
build(deps): bump actions/setup-go from 5 to 6
2025-09-09 17:19:39 +08:00
xushiwei
4e7526d68e Merge pull request #1282 from visualfc/embed_vamethod
cl: embed struct / interface support __llgo_va_list
2025-09-09 17:19:16 +08:00
visualfc
fd17a43ade cl: interface support __llgo_va_list 2025-09-09 16:51:08 +08:00
visualfc
89af430329 cl: embed struct support __llgo_va_list 2025-09-09 16:14:25 +08:00
Li Jie
64df39b3c5 reorganize: consolidate demo directories
- Consolidate _demo, _pydemo, _embdemo into single _demo directory structure
- Organize demos by language: _demo/{go,py,c,embed}/
- Categorize demos based on imports:
- Python library demos (py imports) → _demo/py/
- C/C++ library demos (c/cpp imports) → _demo/c/
- Go-specific demos → _demo/go/
- Embedded demos → _demo/embed/
- Move C-related demos (asm*, cabi*, cgo*, linkname, targetsbuild) from go/ to c/
- Update all path references in README.md and GitHub workflows
- Improve demo organization and navigation as requested in #1256

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-09 15:06:55 +08:00
luoliwoshang
e63ebb8151 goreleaser:avoid fail 2025-09-09 15:05:52 +08:00
luoliwoshang
7907e69719 Merge remote-tracking branch 'upstream/main' into release/esp-clang 2025-09-09 14:26:42 +08:00