Closed Bug 586929 Opened 14 years ago Closed 14 years ago

Build failure: No rule to make target `../../content/media/raw/libgkconraw_s.a'

Categories

(Firefox Build System :: General, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: ishikawa, Unassigned)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 ( .NET CLR 3.5.30729; .NET4.0C)
Build Identifier: Mozilla/5.0 (X11; Linux i686; rv:2.0b3pre) Gecko/20100810 Thunderbird/3.2a1pre

I am quoting my MOZCONFIG below, but
I think there is something wrong with the `raw' directory below mozilla/content/media.

I am disabling media-related libraries from my build (and in the past saw problems related to WEBM, OGG, etc. before which were subsequently fixed.)

I get the following error during build:

--- quote from build outout ---
../../dist/include/nsIDOMXULMultSelectCntrlEl.h:73: warning:   by 'virtual nsresult nsIDOMXULMultiSelectControlElement::GetSelectedItem(PRInt32, nsIDOMXULSelectControlItemElement**)'
make[6]: *** No rule to make target `../../content/media/raw/libgkconraw_s.a', needed by `libgklayout.so'.  Stop.
make[6]: Leaving directory `/home/ishikawa/TB-3HG/objdir-tb3/mozilla/layout/build'
make[5]: *** [libs] Error 2
make[5]: Leaving directory `/home/ishikawa/TB-3HG/objdir-tb3/mozilla/layout'
make[4]: *** [libs_tier_platform] Error 2
make[4]: Leaving directory `/home/ishikawa/TB-3HG/objdir-tb3/mozilla'
make[3]: *** [tier_platform] Error 2
make[3]: Leaving directory `/home/ishikawa/TB-3HG/objdir-tb3/mozilla'
make[2]: *** [default] Error 2
make[2]: Leaving directory `/home/ishikawa/TB-3HG/objdir-tb3/mozilla'
make[1]: *** [default] Error 2
make[1]: Leaving directory `/home/ishikawa/TB-3HG/objdir-tb3'

--- end quote


Reproducible: Always




I posted a series of articles of my investigation of the failure
to

http://groups.google.com/group/mozilla.dev.builds/browse_thread/thread/91ac2136cd795161

Suggested FIX:


All I could was to comment out the gkconraw_s section and then I could
compile TB3 again.

~/TB-3HG/new-src/mozilla/layout/build/Makefile.in


ifdef MOZ_OGG
SHARED_LIBRARY_LIBS 	+= \
	$(DEPTH)/media/libtheora/lib/$(LIB_PREFIX)theora.$(LIB_SUFFIX) \
	$(DEPTH)/content/media/ogg/$(LIB_PREFIX)gkconogg_s.$(LIB_SUFFIX) \
	$(NULL)
endif

#ifdef MOZ_RAW
#SHARED_LIBRARY_LIBS     += \
#       $(DEPTH)/content/media/raw/$(LIB_PREFIX)gkconraw_s.$(LIB_SUFFIX)\
#       $(NULL)
#endif

ifdef MOZ_WEBM
SHARED_LIBRARY_LIBS 	+= \
	$(DEPTH)/content/media/webm/$(LIB_PREFIX)gkconwebm_s.$(LIB_SUFFIX) \
	$(DEPTH)/media/libnestegg/src/$(LIB_PREFIX)nestegg.$(LIB_SUFFIX) \
	$(DEPTH)/media/libvpx/$(LIB_PREFIX)vpx.$(LIB_SUFFIX) \
	$(NULL)
endif

mozilla/layout/build/Makefile.in references libgconraw_s without any conditionals, and if MOZ_RAW is not defined in my environment maybe I can
conditionally disable the inclusion to avoid the compilation/link failure. But as of now, mozilla/configure defines 
MOZ_RAW unconditionally and so I can't exclude it.


Suggested Fix:

- don't define MOZ_RAW in mozilla/configure unconditionally.

  This observation is based on the use of "ifdef MOZ_WEB" and "ifdef
  MOZ_OGG" before and after the addtion of libgkconraw_s.a in 
  Makefile.in. 

- So it might be necesary to define --disable-raw (currently there is
 no such directive for MOZCONFIG or 
  conditionalizae the definition of MOZ_RAW like some MOZ_MEDIA and
 MOZ_VORBIS are done.

----
My MOZCONFIG; Note that --disable-raw is a no-op. There is no such directive as of now (Aug 13, 2010)

####
#### According to build hint web page,
#### I *need* MOZ_OBJDIR. Really?
#### If so, the build / configure script SHOULD WARN and DIE	
#### before proceeding if I don't specify MOZ_OBJDIR.
#### It proceeded without complaining at all.
####
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-tb3
#
# OK, build/configure warns when I try to invoke make,
# AFTER I set the above variable.
# but IT IS TOO LATE.
# ***
# *   Your source tree contains these files:
# *         /extra/ishikawa/download/TB-3HG/30b2-src/Makefile
# *         /extra/ishikawa/download/TB-3HG/30b2-src/config/autoconf.mk
# *   This indicates that you previously built in the source tree.
# *   A source tree build can confuse the separate objdir build.
# *
# *   To clean up the source tree:
# *     1. cd /extra/ishikawa/download/TB-3HG/30b2-src
# *     2. gmake distclean
# ***
# *** Fix above errors and then restart with               "make -f client.mk build"
#
# 

mk_add_options MOZ_CO_PROJECT=mail

ac_add_options --enable-application=mail
ac_add_options --enable-optimize

ac_add_options --disable-ldap

# added DEC 5
ac_add_options --disable-necko-wifi

ac_add_options --disable-tests
ac_add_options --enable-debug
# #ac_add_options --disable-debug

ac_add_options --enable-shared

# # ac_add_options --enable-ui-locale=ja
ac_add_options --enable-official-branding
ac_add_options --disable-crashreporter

### On the other hand, 
### build / config complained that L10BASE was not specified...
###
### The following was required when I manually expanded the source
### files, AND then I need to download l10n package/dir separately???
### (BUT I am not sure which version of l10n I downloaded...)
# # 
###ac_add_options --with-l10n-base=/home/ishikawa/TB-3HG/src/l10n

# # and it seems that we need to copy it manually.

ac_add_options --enable-default-toolkit=cairo-gtk2

###
###
# NO according to mozilla web page for TB2 # 
### ac_add_options --enable-system-cairo

# BEGIN media/vide related bug?
ac_add_options --disable-ogg
ac_add_options --disable-wave
ac_add_options --disable-webm
ac_add_options --disable-necko-wifi

ac_add_options --disable-raw
# END


mk_add_options BUILD_OFFICIAL=1
mk_add_options MOZILLA_OFFICIAL=1

# # mk_add_options MOZ_CO_LOCALES=ja

mk_add_options BUILD_MODULES=all
Product: Thunderbird → Core
QA Contact: build-config → build-config
I think we fixed this, please reopen if we did not.
Status: UNCONFIRMED → RESOLVED
Closed: 14 years ago
Resolution: --- → WORKSFORME
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.