Need help with a makefile

From: Jonathan Adams <jfadams1963_at_proton.me>
Date: Wed, 07 Feb 2024 03:21:00 UTC
Hi all,
  I'm having a heck of a time getting my makefile conditional statements to not cause `make` to have fits. Could sure use some help on this. This is a makefile that works great _without_ the conditions, and my program compiles and runs on FBSD and Linux.
  I've just added a function who's header file is in a different location on Linux, so I'm needing detect the OS and set the correct preprocessor directives. I get the same errors without the line continuation backslashes. (More errors actually; one for lines 7, 9, 10, and 11 each) I'm using tabs for indent, and have checked for extraneous/misplaced spaces too.

Here is the start of the makefile including the troublesome bits:

   1   │ CC      = cc
   2   │ CFLAGS  = -g -w -Wall -Wextra
   3   │ LDFLAGS = -Wl,--allow-multiple-definition -lssl -lcrypto 

   4   │ RM      = rm -f
   5   │ UNAME  := $(shell uname)
   6   │ 

   7   │ ifeq ($(UNAME),FreeBSD) \
   8   │     CFLAGS += -D BSD \
   9   │ else ifeq ($(UNAME),Linux) \
  10   │     CFLAGS += -D LINUX \
  11   │ endif
        <snip>

And here are the errors from `make`:
~/portable/src$ make
make: "/home/jfa/portable/src/makefile" line 7: Invalid line type
make: Fatal errors encountered -- cannot continue
make: stopped in /home/jfa/portable/src

  I'm working on 14.0-RELEASE-p4. I've found plenty of advice on Stackoverflow, but nothing that solves the issue. Duckduckgo-ing produces more of the same, so I thought I'd reach out here.

Thanks!

- Jonathan
____________________________________________
"Before Turing, things were done to numbers.
After Turing, numbers began doing things"
- George Dyson