Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> make: Fatal error in reader: Badly formed macro assignment

make: Fatal error in reader: Badly formed macro assignment

From: Seeker <paul.p.francis_at_gmail.com>
Date: 22 Mar 2006 14:41:44 -0800
Message-ID: <1143067304.357330.244210@i40g2000cwc.googlegroups.com>


Hello,

In using Solaris Pro Compiler to compile Pro*C code. I am getting this error:
make: Fatal error in reader: parser_proc_online.mk, line 26: Badly formed macro assignment

Based on other posts, this error is not related to C but related more to my lack of understanding. When I look for line 26 in my make file, it does not correlate to a MACRO assignment. Should I count blank or comment-out lines in this measure? Any help/redirection on this point would be appreciated.

This is the basic make command I am using: /usr/ccs/bin/make -f parser_proc_online.mk build EXE=Parse_Algo_Online_Attributes.exe
OBJS=Parse_Algo_Online_Attributes.o

This is the make file
parser_proc_online.mk
#!/bin/ksh
#######################################################################
#
# Program : parser_proc_online.sh
#
# Project : ADM
#
#######################################################################
# Change Log
# Date Version Developer
Comments
#######################################################################
#
#######################################################################
# Description : This shell script runs
# 1. PRO*C Parser program
#
#######################################################################

# This makefile builds the Parser program
export ORACLE_HOME=/opt/oracle_9.2.0/precomp/lib include /opt/oracle_9.2.0/precomp/lib/env_precomp.mk
#. /opt/oracle/product/ora920/precomp/lib/env_precomp.mk

# PARSERS is a list of the c proc Parser programs.

PARSERS= Parse_Algo_Online_Attributes

# These targets build all of a class of Parser in one call to make.
parsers: $(PARSERS)

# The target 'build' puts together an executable $(EXE) from the .o
files
# in $(OBJS) and the libraries in $(PROLDLIBS). It is used to build
the
# c parser program.
# The rules to make .o files from .c and .pc files are later in this
file.
# $(PROLDLIBS) uses the client shared library; $(STATICPROLDLIBS) does
not.
#

build: $(OBJS)

        $(DEMO_PROC_BUILD_SHARED)
build_static: $(OBJS)

        $(DEMO_PROC_BUILD_STATIC) $(PARSERS) $(OBJECT_PARSERS):
        $(MAKE) -f $(MAKEFILE) OBJS=$@.o EXE=$@ build

# Some of the PARSERS require that .sql scripts be run before
precompilation.
# If you set RUNSQL=run in your call to make, then make will use
sqlplus or
# svrmgrl, as appropriate, to run the .sql scripts.
# If you leave RUNSQL unset, then make will print out a reminder to run
the
# scripts.
# If you have already run the scripts, then RUNSQL=done will omit the
reminder.
sqlplus_run:

        ($(CD) ../sql; $(BINHOME)sqlplus $(USER) @$(SCRIPT) < /dev/null)
svrmgrl_run:

        ($(CD) ../sql; $(BINHOME)svrmgrl < $(SCRIPT).sql) sqlplus_ svrmgrl_:

        $(SILENT)$(ECHO) "# You must run the .sql script, " $(SCRIPT),
        $(SILENT)$(ECHO) "# before precomping this sample."
sqlplus_done svrmgrl_done:

# Here are some rules for converting .pc -> .c -> .o and for .typ ->
.h.
#
# If proc needs to find .h files, it should find the same .h files that
the
# c compiler finds. We use a macro named INCLUDE to hadle that. The
general
# format of the INCLUDE macro is
# INCLUDE= $(I_SYM)dir1 $(I_SYM)dir2 ...
#
# Normally, I_SYM=-I, for the c compiler. However, we have a special
target,
# pc1, which calls $(PROC) with various arguments, including
$(INCLUDE). It
# is used like this:
# $(MAKE) -f $(MAKEFILE) <more args to make> I_SYM=include= pc1
# This is used for some of $(PARSERS) and for $(OBJECT_PARSERS).
.SUFFIXES: .pc .c .o .typ .h

pc1:

        $(PCC2C) .pc.c:

        $(MAKE) -f $(MAKEFILE) PROCFLAGS="$(PROCFLAGS)" PCCSRC=$* I_SYM=include= pc1

.pc.o:

        $(MAKE) -f $(MAKEFILE) PROCFLAGS="$(PROCFLAGS)" PCCSRC=$* I_SYM=include= pc1

        $(C2O)

.c.o:

        $(C2O)

.typ.h:

        $(OTT) intype=$*.typ hfile=$*.h outtype=$*o.typ $(OTTFLAGS) code=c userid=$(USERID)

# These macro definitions fill in some details or override some
defaults
MAKEFILE=/opt/oracle/product/ora920/precomp/demo/proc/demo_proc.mk OTTFLAGS=$(PCCFLAGS)
PROCPLSFLAGS=sqlcheck=semantics userid=$(USERID) PROCPPFLAGS=code=cpp $(CPLUS_SYS_INCLUDE) PROCFLAGS=sqlcheck=semantics userid=$(USERID) USERID=P_dm200/P_dm200edwd_at_edwd.world

INCLUDE=$(I_SYM). $(I_SYM)$(PRECOMPHOME)public
$(I_SYM)$(RDBMSHOME)public $(I_SYM)$(RDBMSHOME)demo
$(I_SYM)$(PLSQLHOME)public $(I_SYM)$(NETWORKHOME)public
Received on Wed Mar 22 2006 - 16:41:44 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US