# \[Bug #1904\] cmp required?

**URL:** <https://www.ruby-forum.com/t/bug-1904-cmp-required/173314>\
**Category:** Development\
**Created:** [August 6, 2009, 6:35pm UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314 "2009-08-06T18:35:29Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [August 6, 2009, 6:35pm UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/1 "2009-08-06T18:35:29Z")

</div>

Bug #1904: cmp required?  
[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)

e$B5/I\<\<Te(B: Kazuhiro NISHIYAMA  
e$B%9%F!\<%?%9e(B: Open, e$BM%@hEYe(B: Low  
ruby -v: ruby 1.9.2dev (2009-08-06 trunk 24412) [i386-cygwin]

e$B$[$:G\>.8B$Ne(Bcygwine$B4D6-$Ge(Btrunke$B$N%S%k%I$r;n$=$&$H$7$F$_$?$H$3$m!"e(Bcmpe$B$+e(Bgperfe$B$b$J$/$F;_$^$C$F$7$^$C$?$N$G$9$,!"e(Bcmpe$B$,I,?$K$J$C$?$N$G$7$g$&$+e(B?

ccache gcc -O3 -g -Wall -Wno-unused-parameter -Wno-parentheses  
-Wpointer-arith -  
Wwrite-strings -I. -I.ext/include/i386-cygwin  
-I/home/kazu/wc/ruby/trunk/include  
-I/home/kazu/wc/ruby/trunk -DRUBY\_EXPORT -o pack.o -c  
/home/kazu/wc/ruby/trun  
k/pack.c  
/bin/sh: line 1: cmp: command not found

- gperf -C -p -j1 -i 1 -g -o -t -N rb\_reserved\_word ‘-k1,3,$’  
/home/kazu/wc/ruby  
/trunk/defs/keywords  
/bin/sh: line 6: gperf: command not found  
make: \*\*\* [lex.c] Error 127

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [August 6, 2009, 6:51pm UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/2 "2009-08-06T18:51:53Z")

</div>

e$B%A%1%C%He(B #1904 e$B$,99?7$5$l$^$7$?!#e(B (by Kazuhiro NISHIYAMA)

e$BJdB-$G$9!#e(B

## baserubye$BMQ$Ke(Bruby\_1\_8e$B$r%S%k%I$7$?$H$-$Ke(Bautoconf,gcc,bison,makee$B$J$I$OF~$l$F$$$F!"e(Btrunke$B$r%S%k%I$7$h$&$H$9$k$HDI2C$Ge(Bdiffutilse$B$K4^$^$l$ke(Bcmpe$B$,I,MW$@$C$?$H$$$&OC$G$9!#e(B

[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [October 10, 2009, 6:53pm UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/3 "2009-10-10T18:53:27Z")

</div>

e$B%A%1%C%He(B #1904 e$B$,99?7$5$l$^$7$?!#e(B (by Yui NARUSE)

## e$B0l;~E\*$J%P%0$@$C$?$s$G$9$C$1!)$3$l!#e(B e$B:#$b:F8=$7$^$9$+$M!#e(B

[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [October 13, 2009, 9:45am UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/4 "2009-10-13T09:45:46Z")

</div>

e$B%A%1%C%He(B #1904 e$B$,99?7$5$l$^$7$?!#e(B (by Kazuhiro NISHIYAMA)

trunk/Makefile.in e$B$,0J2\<$N$h$&$K$J$C$F$$$F!“e(B cmp  
e$B$K\<:GT$9$k$H\<:GT$N860x$,2?$G$”$C$F$be(B gperf  
e$B$r\<B9T$9$k$h$&$K$J$C$F$$$k$N$G!":#$b:F8=$9$k$H;W$$$^$9!#e(B

# Things which should be considered:

# \* with gperf v.s. without gperf

# \* ./configure v.s. …/ruby/configure

# \* GNU make v.s. HP-UX make # HP-UX make invokes the action if lex.c

and keywords has same mtime.

# \* svn checkout generate a file with mtime as current time

# \* XFS has a mtime with fractional part

lex.c: defs/keywords  
@  
if cmp -s $(srcdir)/defs/lex.c.src $?; then   
set -x;   
$(CP) $(srcdir)/lex.c.blt $@;   
else   
set -x;   
gperf -C -p -j1 -i 1 -g -o -t -N rb\_reserved\_word -k1,3,$$ $?

> $@.tmp &&   
> $(MV) $@.tmp $@ &&   
> $(CP) $? $(srcdir)/defs/lex.c.src &&   
> $(CP) $@ $(srcdir)/lex.c.blt;   
> fi

ruby\_1\_8 e$B$Ne(B Makefile.in e$B$G$O0J2\<$N$h$&$Ke(B cmp  
e$B$O;H$C$F$$$J$$$h$&$G$9!#e(B

lex.c: keywords  
( gperf -C -p -j1 -i 1 -g -o -t -N rb\_reserved\_word -k1,3,$$ $?

> $@.tmp && mv $@.tmp $@ ) ||   
> if test -f $@; then   
> touch $@ && echo $@ touched.;   
> else   
> cp $(srcdir)/lex.c $@ && echo $@ copied.;   
> fi

## e$B!Ve(Benc/unicode/name2ctype.h: enc/unicode/name2ctype.kwde$B!W$G$be(B cmp e$B$r;H$C$F$$$k$h$&$J$N$G!“e(B cmp e$B$,I,MW$K$J$C$?$H$$$&$N$J$i!”$J$1$l$PF~$l$F$+$i%S%k%I$9$k$H$$$&$@$1$J$N$G!"e(B Rejected e$B$G=\*N;$7$F$/$@$5$$!#e(B

[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [October 13, 2009, 1:20pm UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/5 "2009-10-13T13:20:36Z")

</div>

e$B%A%1%C%He(B #1904 e$B$,99?7$5$l$^$7$?!#e(B (by Yui NARUSE)

e$BI,MW$@$H$$$&$3$H$K$9$k$H$$$&$3$H\<+BN$K0[O@$O$"$j$^$;$s!#e(B

## e$B$?$@!"8=\>ue(B cmp e$B$r;H$C$F$$$k$N$C$F!"e(Blex.c e$B$de(B enc/unicode/name2ctype.h e$B$N@8@.$G$J$N$G!"e(B e$B%=!\<%9$KDL\>oE:IU$5$l$F$$$k$3$l$i$N@8@.%W%m%;%9$,$J$\<Av$k$N$+IT;W5D$J$s$G$9$h$M!#e(B

[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [October 13, 2009, 1:48pm UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/6 "2009-10-13T13:48:08Z")

</div>

In article [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid),  
Yui NARUSE [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) writes:

> e$B$?$@!"8=\>ue(B cmp e$B$r;H$C$F$$$k$N$C$F!"e(Blex.c e$B$de(B enc/unicode/name2ctype.h e$B$N@8@.$G$J$N$G!"e(B  
> e$B%=!\<%9$KDL\>oE:IU$5$l$F$$$k$3$l$i$N@8@.%W%m%;%9$,$J$\<Av$k$N$+IT;W5D$J$s$G$9$h$M!#e(B

lex.c e$B$h$je(B defs/keywords  
e$B$N$[$&$,99?7;~9o$,?7$7$$$s$8$c$J$$$G$7$g$&$+!#e(B

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [October 13, 2009, 10:01am UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/7 "2009-10-13T10:01:00Z")

</div>

e$B%A%1%C%He(B #1904 e$B$,99?7$5$l$^$7$?!#e(B (by Akira T.)

e$B%9%F!\<%?%9e(B Opene$B$+$ie(BRejectede$B$KJQ99e(B

Unix (e$B$C$]$$4D6-e(B) e$B$Ge(B cmp  
e$B$,$J$$$H$$$&$N$O9MN8$7$J$$$3$H$K$7$^$9!#e(B

e$B$J$\*!"5-21$K$h$l$P!"e(Bcmp  
e$B$r$D$+$C$FHf3S$9$k$N$O%P!\<%8%g%s$N0c$&e(B gperf  
e$B$,%$%s%9%H!\<%k$5$l$F$$$k4D6-$GITMW$K:F@8@.$5$l$ke(B (e$B$=$7$Fe(B svn  
diff e$B$K=P$F$/$ke(B) e$B$N$rKI$0$?$a$G$9!#e(B

* * *

[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)

---

<div class="post-metadata">

**Author:** ![Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/77aa72/32.png) [@Kazuhiro\_NISHIYAMA](https://www.ruby-forum.com/u/Kazuhiro_NISHIYAMA)\
**Post date:** [October 16, 2009, 10:17am UTC](https://www.ruby-forum.com/t/bug-1904-cmp-required/173314/8 "2009-10-16T10:17:46Z")

</div>

e$B%A%1%C%He(B #1904 e$B$,99?7$5$l$^$7$?!#e(B (by Kazuhiro NISHIYAMA)

e$B%l%]%8%H%j$NJ}$K$Oe(B trunk/enc/unicode/name2ctype.h  
e$B$O$"$j$^$9$,!"e(B trunk/lex.c e$B$O$J$$$h$&$G$9!#e(B

## snapshot.tar.gz e$B$K$ON\>J}F~$C$F$$$^$7$?!#e(B

[http://redmine.ruby-lang.org/issues/show/1904](http://redmine.ruby-lang.org/issues/show/1904)
