GithubHelp home page GithubHelp logo

Comments (11)

arithy avatar arithy commented on July 17, 2024 7

I want basically users to prepare their own build environment, because:

  • PackCC is a highly portable single-source program, which can be built just using a C compiler command once,
    cc -o packcc packcc.c
    
  • PackCC mostly uses standard C library functions, considering portability, and prepares alternative implementations for nonportable functions like strnlen().

Again, I have no plan to use CMake or Autotools for now because I don't feel their necessity as for PackCC.

from packcc.

arithy avatar arithy commented on July 17, 2024

Thank you for your proposal.
Currently, I don't plan to use them since the source code of packcc is already portable enough.
I might begin to consider using the tools when a user of a platform other than Linux, BSD, macOS, and Windows appears.

from packcc.

elfring avatar elfring commented on July 17, 2024

from packcc.

andrewchambers avatar andrewchambers commented on July 17, 2024

Autotools is often worse than useless, not only is it a required dependency, but can dramatically slow down the build because the configure scripts are comically slow.

My suggestion would be to perhaps delete the makefiles entirely.

from packcc.

arithy avatar arithy commented on July 17, 2024

@elfring,
I'm going to close this issue because it seems that most people don't feel this issue is an issue.
If you have any objection against closing this issue, let me know by the end of this month (Aug. 2022).

from packcc.

elfring avatar elfring commented on July 17, 2024

๐Ÿ’ญ I hope that interests can grow also for applications of build system generators.

from packcc.

arithy avatar arithy commented on July 17, 2024

It might be just your impression, and isn't persuasive.

from packcc.

masatake avatar masatake commented on July 17, 2024

@arithy How about adding a FAQ entry to README.md?

e.g.

diff --git a/README.md b/README.md
index 7510d17..e4a4e9e 100644
--- a/README.md
+++ b/README.md
@@ -705,3 +705,15 @@ int main() {
 You can find the more practical example in the directory [`examples/ast-tinyc`](examples/ast-tinyc).
 It builds an AST (abstract syntax tree) from an input source file
 written in [Tiny-C](http://www.iro.umontreal.ca/~felipe/IFT2030-Automne2002/Complements/tinyc.c) and dump the AST.
+
+## FAQ ##
+
+<dl>
+	<dt>Will you support another build system than other Make?</dt>
+	<dd>No. I have no plan to use CMake or Autotools for now because I don't feel their necessity as for PackCC.</dd>
+	<dt>Which language is assumed for building packcc command?</dt>
+	<dd>C language. C++ is not assumed for building packcc command.</dd>
+	<dt>Which language is assumed for compiling the source code generated by packcc?</dt>
+	<dd>C language. C++ language is not assumed for compiling the source code generated by packcc.
+		However, you can link the object code compiled from the source code to your C++ code.</dd>
+</dl>

from packcc.

arithy avatar arithy commented on July 17, 2024

@masatake, it's a good idea. Thank you for the suggestion. I'll add the FAQs.

from packcc.

elfring avatar elfring commented on July 17, 2024

I have no plan to use CMake or Autotools for now because I don't feel their necessity as for PackCC.

๐Ÿ”ฎ Under which circumstances will software users feel the need for increasing applications of known functionality?

from packcc.

arithy avatar arithy commented on July 17, 2024

I stated #3 (comment) as the reason why I don't feel their necessity.
The discussion will become an infinite loop. I have decided to close this issue.

from packcc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.