Compile of Calender from 1_4_BRANCH fails on Solaris 2.8

RESOLVED INVALID

Status

--
major
RESOLVED INVALID
16 years ago
12 years ago

People

(Reporter: anlan, Assigned: mostafah)

Tracking

Details

(Reporter)

Description

16 years ago
User-Agent:       Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.4) Gecko/20030623
Build Identifier: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.4) Gecko/20030623

CVS checkout of MOZILLA_1_4_BRANCH on 2003-06-23.

gcc version 2.95.2 19991024 (release)
GNU Make 3.80

Config:
ac_add_options --prefix=/sw/mozilla-1.4rc2
ac_add_options --with-x
ac_add_options --enable-default-toolkit=gtk
ac_add_options --enable-toolkit-gtk
ac_add_options --disable-toolkit-xlib
ac_add_options --disable-toolkit-qt
ac_add_options --enable-crypto
ac_add_options --enable-jsd
ac_add_options --enable-xinerama
ac_add_options --enable-ctl
ac_add_options --enable-js-ultrasparc
ac_add_options --disable-debug
ac_add_options --enable-optimize=-O2
ac_add_options --disable-tests
ac_add_options --enable-strip
ac_add_options --enable-default-mozilla-five-home=/sw/mozilla-1.4rc2
ac_add_options --disable-glibtest
ac_add_options --enable-xterm-updates
ac_add_options --enable-calendar
ac_add_options --enable-x11-shm


Reproducible: Always

Steps to Reproduce:
1.
2.
3.

Actual Results:  
gcc -o icallangbind.o -c -DOSTYPE=\"SunOS5\" -DOSARCH=\"SunOS\" -I. -I.
-I../../../../dist/include/ical -I../../../../dist/include
-I/.scratch/tmp/mozilla/dist/include/nspr         -fPIC  -pedantic
-Wno-long-long -pthreads  -DNDEBUG -DTRIMMED -O2   -include
../../../../mozilla-config.h -DMOZILLA_CLIENT
-Wp,-MD,.deps/icallangbind.pp icallangbind.c
lex  -t icallexer.l > icallexer.c
"icallexer.l":line 82: Error: Too late for %array
gmake[5]: *** [icallexer.c] Error 1
gmake[5]: *** Deleting file `icallexer.c'
gmake[5]: Leaving directory
`/.scratch/tmp/mozilla/other-licenses/libical/src/libical'
gmake[4]: *** [libs] Error 2
gmake[4]: Leaving directory
`/.scratch/tmp/mozilla/other-licenses/libical/src'
gmake[3]: *** [libs] Error 2
gmake[3]: Leaving directory `/.scratch/tmp/mozilla/other-licenses/libical'
gmake[2]: *** [tier_98] Error 2
gmake[2]: Leaving directory `/.scratch/tmp/mozilla'
gmake[1]: *** [default] Error 2
gmake[1]: Leaving directory `/.scratch/tmp/mozilla'
gmake: *** [build] Error 2


If "--enable-calendar" is removed, everything builds fine.

Comment 1

16 years ago
Mostafa is helping out on IRC as I write this.
Assignee: mikep → mostafah
Status: UNCONFIRMED → NEW
Ever confirmed: true
(Reporter)

Comment 2

15 years ago
anlan@informatix:~> which lex
/usr/ccs/bin/lex
anlan@informatix:~> lex -V
lex: Software Generation Utilities (SGU) Solaris-ELF (4.0)
anlan@informatix:~> which flex
/sw/gnu/bin/flex
anlan@informatix:~> flex -V
flex version 2.5.4

"lex -t icallexer.l" fails with '"icallexer.l":line 82: Error: Too late for
%array' as reported above, while flex can handle the file as it should.

I'm not sure about the best way to consistently force the makefiles to go for
'flex' instead of 'lex'.
(Reporter)

Comment 3

15 years ago
As far as I can see, the libcal configure/Makefile (even in 0.23) tries to find
flex and use that instead of lex, but that has been pruned from the files in the
Mozilla tree.
(Reporter)

Comment 4

15 years ago
Making sure 'lex' pointed to 'flex' seemed enough to make the 1.4 source relase
compile on our system, calendar and all.

Looking around in the source for libical 0.24rc4, it seems the
libical/src/libical/icallexer.l has been removed. 

From the changelog:

2002-06-28  Andrea Campi  <a.campi@inet.it>

 [...]
        * src/libical/icallexer.c
        * src/libical/icallexer.l
        * src/libical/icalyacc.c
        * src/libical/icalyacc.h
        * src/libical/icalyacc.y: Sent lex/yacc code to Attic.
 [...]  

2002-06-28  Eric Busboom  <eric@softwarestudio.org>

        * src/libical/Makefile.am
        * src/libical/icalduration.c
        * src/libical/icalparser.c
        * src/libical/icalvalue.c
        * src/libical/icalyacc.c
        * src/libical/icalyacc.h: removed lex and yacc by writing
        code to parse UTC-OFFSET


However, flex is still necessary for libical/src/libicalss/icalsslexer.l. Trying
to use the old (default) lex on that file produces the same error as originally
reported in this bug, while flex handles it nicely.

Updated

15 years ago
OS: SunOS → Solaris
(Reporter)

Comment 5

15 years ago
I'm not sure, but currently I believe that the cause of this is that make
could't see any difference between the timestamps for the files and so went on
to regenerate files unnecessarily. 

While testing builds with 1.4.1 it seemed enough to checkout and then touch the
relevent files (eg icallexer.c) before building.
Status: NEW → RESOLVED
Last Resolved: 15 years ago
Resolution: --- → INVALID
The bugspam monkeys have been set free and are feeding on Calendar :: General. Be afraid for your sanity!
QA Contact: gurganbl → general
You need to log in before you can comment on or make changes to this bug.