Don't wanna be here? Send us removal request.
Text
./configure script can generate Makefile. It aims to adapt the Makefile to all kinds of different user environments, and provide the ability to custom build configuration. Itself is a plain shell script without any other dependency.
Makefile is a simple build system, handling the dependency, and caching, of each TARGET. The target is a abstracted, generic item.
2 notes
·
View notes
Text
So concludingly, for a developer, a configure.ac and makefile.am is need edited manually. For a user building the project, automake -> autoconf -> configure -> make
0 notes
Text
The execution of Configure script actually needs other auxiliary files. The autoconf branch only define how to check the environment. There's another branch define the real build configurations. A file called Makefile.am is composed manually, defining the the binary target, the source files, link flags and others. Automake tool will utilize the Makefile.am generate a Makefile.in file and others, which will be used by the Configure script to generate the real makefile
0 notes
Text
Configure script is generated by Autoconf and a source autoconf.ac. The autoconf.ac configuring how to check the environment. autoconf.ac is usually started by run autoscan to generate a base template by scanning all the source files.
A helper tool call aclocal is needed when do the process. Autoconf is basiclly a marco expending program. But autoconf tool doesn't know all the marcos, some custom macro can be interpreted to a aclocal.m4 file by acloacl, as the macro library for autoconf.
0 notes
Text
./configure script can generate Makefile. It aims to adapt the Makefile to all kinds of different user environments, and provide the ability to custom build configuration. Itself is a plain shell script without any other dependency.
0 notes
Text
Makefile is a simple build system, handling the dependency, and caching, of each TARGET. The target is a abstracted, generic item.
2 notes
·
View notes
Text
step # step into
next # next line
and continue # go on running
Ruby: debug with pry
gem “pry-nav”
require “pry”
binding.pry # break at where this line positioned
1 note
·
View note
Text
Ruby: debug with pry
gem "pry-nav"
require "pry"
binding.pry # break at where this line positioned
1 note
·
View note
Text
Ruby: patch a method with `yield`
class C def m1(a) yield(a) end alias_method :old, :m1 def m1(*args, &block) p "[before]" old(*args, &block) p "[after]" end end C.new.m1("hello") do |input| p "input is " + input end
0 notes
Text
Ruby: get temp path
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Menlo; color: #ffffff; background-color: #1f1f24} p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Menlo; color: #6c7986; background-color: #1f1f24} span.s1 {color: #fc5fa3} span.s2 {color: #ffffff}
require ‘tmpdir’
Dir.tmpdir # get system temp directory
Dir.mktmpdir # create a temp dir
Dir.mktmpdir{ |path| }
0 notes