[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20021230: LDM build under FreeBSD



>From: Unidata Support <address@hidden>
>Organization: UCAR/Unidata
>Keywords: 200212222126.gBMLQrt16652 McIDAS ldm-mcidas FreeBSD

Hi Jim,

In a previous message you said:

>We did compile the new LDM and it's sitting on "snow".  I wanted to get 
>it going several weeks ago, but ran out of time.

We now have a FreeBSD 4.5 test machine here at the UPC.  We
are aware of some code modifications needed for a successful build of
the LDM under FreeBSD (and we will be rolling these into a future
release):

file: src/misc/fsStats.c
  
  change:
  
  #if __bsdi__ || __bsdi
  
  to:
  
  #if __bsdi__ || __bsdi || __FreeBSD__
  
file: src/ulog/ulog.c
  
  change:
  
  #ifdef _DEV_CONSLOG
  #define ULOGNAME    "/dev/conslog"
  #else
  #define ULOGNAME    "/dev/log"
  #endif /* !_DEV_CONSLOG */
  #endif
  
  to:
  
  #ifdef _DEV_CONSLOG
  #define ULOGNAME        "/dev/conslog"
  #else
  # if defined(__FreeBSD__)
  #   define      ULOGNAME        "/var/run/log"
  # else
  #   define      ULOGNAME        "/dev/log"
  # endif
  #endif /* !_DEV_CONSLOG */
  #endif

We would like to compare this list of mods with the ones that you make
on your machines.

Also, we have also experienced a problem with make.  It seems that
/usr/bin/make fails to read the default make rules in
/usr/share/mk/sys.mk, that, according to the online man page for make,
are supposed to be processed before any other file:

%man make

 ...

FILES
     .depend                     list of dependencies
     Makefile                    list of dependencies
     makefile                    list of dependencies
     obj                         object directory
     sys.mk                      system makefile (processed before any other
                                 file, including makefile and Makefile)
     /usr/share/mk               system makefile directory
     /usr/share/doc/psd/12.make  PMake tutorial
     /usr/obj                    default MAKEOBJDIRPREFIX directory.

 ...

The failure to read the system makefile is causing the module ulog.c
to not be compiled or added into the library ldm.a.

Interestingly, I found that 'gmake' does work and can be used to build
the LDM successfully.  My question to you is if you use 'make' or
'gmake'?  If 'make', do you have any problems with it not reading the
default rules from the system makefile?

Any other insights you have developed by building under FreeBSD would be
most appreciated!

Tom