Use the implicit rule for single source file programs.
Specify CFLAGS and LDLIBS appropriately.
Also link against libX11 explicitly in order to fix this linking error:
  cc -ansi -Wall -pedantic -ggdb     xicursorset.c  -lXi -lXcursor  -o xicursorset
  /usr/bin/ld: /tmp/cc6cA5Ex.o: undefined reference to symbol 'XFlush'
  //usr/lib/x86_64-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line
  collect2: error: ld returned 1 exit status
  <builtin>: recipe for target 'xicursorset' failed
  make: *** [xicursorset] Error 1
 CFLAGS := -ansi -Wall -pedantic
 CFLAGS += -ggdb
+CFLAGS += $(shell pkg-config --cflags x11 xi xcursor)
 
-LDFLAGS := $(shell pkg-config --cflags --libs xi xcursor)
+LDLIBS := $(shell pkg-config --libs x11 xi xcursor)
 
-xicursorset: xicursorset.c
-       $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
+all: xicursorset
 
 clean:
        rm -f xicursorset *.o