|
Line
Link Here
|
| 0 |
-- a/utils.mk |
0 |
++ b/utils.mk |
|
Lines 58-68
Link Here
|
| 58 |
PRINTF ?= printf |
58 |
PRINTF ?= printf |
| 59 |
MKDIR ?= mkdir -p |
59 |
MKDIR ?= mkdir -p |
| 60 |
RM ?= rm -f |
60 |
RM ?= rm -f |
|
|
61 |
LN_S ?= ln -s |
| 61 |
TOUCH ?= touch |
62 |
TOUCH ?= touch |
| 62 |
WHOAMI ?= whoami |
63 |
WHOAMI ?= whoami |
| 63 |
HOSTNAME_CMD ?= hostname |
64 |
HOSTNAME_CMD ?= hostname |
| 64 |
DATE ?= date |
65 |
DATE ?= date |
| 65 |
GZIP_CMD ?= gzip |
66 |
GZIP_CMD ?= gzip |
|
|
67 |
RANLIB ?= ranlib |
| 68 |
AR ?= ar rcs |
| 66 |
|
69 |
|
| 67 |
NV_AUTO_DEPEND ?= 1 |
70 |
NV_AUTO_DEPEND ?= 1 |
| 68 |
NV_VERBOSE ?= 0 |
71 |
NV_VERBOSE ?= 0 |
|
Lines 125-133
Link Here
|
| 125 |
|
127 |
|
| 126 |
PREFIX ?= /usr/local |
128 |
PREFIX ?= /usr/local |
| 127 |
|
129 |
|
|
|
130 |
libdir ?= lib |
| 128 |
BINDIR = $(DESTDIR)$(PREFIX)/bin |
131 |
BINDIR = $(DESTDIR)$(PREFIX)/bin |
| 129 |
MANDIR = $(DESTDIR)$(PREFIX)/share/man/man1 |
132 |
MANDIR = $(DESTDIR)$(PREFIX)/share/man/man1 |
| 130 |
|
133 |
INCDIR = $(DESTDIR)$(PREFIX)/include |
|
|
134 |
LIBDIR = $(DESTDIR)$(PREFIX)/$(libdir) |
| 131 |
|
135 |
|
| 132 |
############################################################################## |
136 |
############################################################################## |
| 133 |
# default build rule, so that nothing here in utils.mk accidentally |
137 |
# default build rule, so that nothing here in utils.mk accidentally |
| 134 |
-- a/Makefile |
138 |
++ b/Makefile |
|
Lines 69-75
Link Here
|
| 69 |
############################################################################## |
69 |
############################################################################## |
| 70 |
|
70 |
|
| 71 |
XNVCTRL_DIR ?= src/libXNVCtrl |
71 |
XNVCTRL_DIR ?= src/libXNVCtrl |
| 72 |
XNVCTRL_ARCHIVE ?= $(XNVCTRL_DIR)/libXNVCtrl.a |
72 |
XNVCTRL_ARCHIVE ?= -L$(XNVCTRL_DIR) -lXNVCtrl |
| 73 |
XCONFIG_PARSER_DIR ?= src/XF86Config-parser |
73 |
XCONFIG_PARSER_DIR ?= src/XF86Config-parser |
| 74 |
COMMON_UTILS_DIR ?= src/common-utils |
74 |
COMMON_UTILS_DIR ?= src/common-utils |
| 75 |
|
75 |
|
|
Lines 148-158
Link Here
|
| 148 |
# build rules |
148 |
# build rules |
| 149 |
############################################################################## |
149 |
############################################################################## |
| 150 |
|
150 |
|
| 151 |
.PNONY: all install NVIDIA_SETTINGS_install MANPAGE_install clean clobber |
151 |
.PNONY: all install NVIDIA_SETTINGS_install MANPAGE_install clean clobber libXNVCtrl |
| 152 |
|
152 |
|
| 153 |
all: $(NVIDIA_SETTINGS) $(MANPAGE) |
153 |
all: $(NVIDIA_SETTINGS) $(MANPAGE) |
| 154 |
|
154 |
|
|
|
155 |
libXNVCtrl: |
| 156 |
$(MAKE) -C src/libXNVCtrl |
| 157 |
|
| 155 |
install: NVIDIA_SETTINGS_install MANPAGE_install |
158 |
install: NVIDIA_SETTINGS_install MANPAGE_install |
|
|
159 |
$(MAKE) -C src/libXNVCtrl $@ |
| 156 |
|
160 |
|
| 157 |
NVIDIA_SETTINGS_install: $(NVIDIA_SETTINGS) |
161 |
NVIDIA_SETTINGS_install: $(NVIDIA_SETTINGS) |
| 158 |
$(MKDIR) $(BINDIR) |
162 |
$(MKDIR) $(BINDIR) |
|
Lines 162-168
Link Here
|
| 162 |
$(MKDIR) $(MANDIR) |
166 |
$(MKDIR) $(MANDIR) |
| 163 |
$(INSTALL) $(INSTALL_BIN_ARGS) $< $(MANDIR)/$(notdir $<) |
167 |
$(INSTALL) $(INSTALL_BIN_ARGS) $< $(MANDIR)/$(notdir $<) |
| 164 |
|
168 |
|
| 165 |
$(NVIDIA_SETTINGS): $(OBJS) $(XNVCTRL_ARCHIVE) |
169 |
$(NVIDIA_SETTINGS): libXNVCtrl $(OBJS) |
| 166 |
$(call quiet_cmd,LINK) $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) -o $@ $(OBJS) \ |
170 |
$(call quiet_cmd,LINK) $(CFLAGS) $(LDFLAGS) $(BIN_LDFLAGS) -o $@ $(OBJS) \ |
| 167 |
$(XNVCTRL_ARCHIVE) $(LIBS) |
171 |
$(XNVCTRL_ARCHIVE) $(LIBS) |
| 168 |
$(call quiet_cmd,STRIP_CMD) $@ |
172 |
$(call quiet_cmd,STRIP_CMD) $@ |
|
Lines 174-179
Link Here
|
| 174 |
$(eval $(call DEFINE_STAMP_C_RULE, $(OBJS),$(NVIDIA_SETTINGS_PROGRAM_NAME))) |
178 |
$(eval $(call DEFINE_STAMP_C_RULE, $(OBJS),$(NVIDIA_SETTINGS_PROGRAM_NAME))) |
| 175 |
|
179 |
|
| 176 |
clean clobber: |
180 |
clean clobber: |
|
|
181 |
$(MAKE) -C src/libXNVCtrl $@ |
| 177 |
rm -rf $(NVIDIA_SETTINGS) $(MANPAGE) *~ $(STAMP_C) \ |
182 |
rm -rf $(NVIDIA_SETTINGS) $(MANPAGE) *~ $(STAMP_C) \ |
| 178 |
$(OUTPUTDIR)/*.o $(OUTPUTDIR)/*.d \ |
183 |
$(OUTPUTDIR)/*.o $(OUTPUTDIR)/*.d \ |
| 179 |
$(GEN_MANPAGE_OPTS) $(OPTIONS_1_INC) |
184 |
$(GEN_MANPAGE_OPTS) $(OPTIONS_1_INC) |
| 180 |
-- a/src/libXNVCtrl/Makefile |
185 |
++ b/src/libXNVCtrl/Makefile |
|
Lines 19-33
Link Here
|
| 19 |
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
19 |
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE |
| 20 |
# SOFTWARE. |
20 |
# SOFTWARE. |
| 21 |
|
21 |
|
| 22 |
RANLIB ?= ranlib |
22 |
include ../../version.mk |
| 23 |
CFLAGS += -fPIC |
23 |
include ../../utils.mk |
| 24 |
|
24 |
|
| 25 |
libXNVCtrl.a : libXNVCtrl.a(NVCtrl.o) |
25 |
XNVC_STATIC = libXNVCtrl.a |
|
|
26 |
XNVC_SHARED = libXNVCtrl.so.$(NVIDIA_VERSION) |
| 27 |
XNVC_SONAME = libXNVCtrl.so.1 |
| 28 |
|
| 29 |
XNVC_LIBS = $(XNVC_SHARED) |
| 30 |
ifeq ($(STATIC_XNVC),1) |
| 31 |
XNVC_LIBS += $(XNVC_STATIC) |
| 32 |
endif |
| 33 |
|
| 34 |
all: $(XNVC_LIBS) |
| 35 |
|
| 36 |
$(XNVC_STATIC): NVCtrl.o |
| 37 |
$(AR) rcs $@ $< |
| 26 |
$(RANLIB) $@ |
38 |
$(RANLIB) $@ |
| 27 |
|
39 |
|
| 28 |
NVCtrl.o : NVCtrl.h nv_control.h NVCtrlLib.h |
40 |
$(XNVC_SHARED): NVCtrl.o_PIC |
| 29 |
.INTERMEDIATE: NVCtrl.o |
41 |
$(call quiet_cmd,LINK) $(LDFLAGS) -shared -Wl,-soname,$(XNVC_SONAME) -o $@ $< `pkg-config --libs xext` |
|
|
42 |
|
| 43 |
NVCtrl.o: NVCtrl.c NVCtrl.h nv_control.h NVCtrlLib.h |
| 44 |
$(call quiet_cmd,CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@ |
| 45 |
|
| 46 |
NVCtrl.o_PIC: NVCtrl.c NVCtrl.h nv_control.h NVCtrlLib.h |
| 47 |
$(call quiet_cmd,CC) $(CPPFLAGS) $(CFLAGS) -fPIC -c $< -o $@ |
| 30 |
|
48 |
|
| 31 |
clean :: |
49 |
clean :: |
| 32 |
rm -f libXNVCtrl.a *.o |
50 |
rm -f $(XNVC_SHARED) $(XNVC_STATIC) $(XNVC_SONAME) *.o *.o_PIC |
| 33 |
.PHONY: clean |
51 |
|
|
|
52 |
install: |
| 53 |
$(INSTALL) -D -m 644 NVCtrl.h $(INCDIR)/NVCtrl/NVCtrl.h |
| 54 |
$(INSTALL) -m 644 NVCtrlLib.h $(INCDIR)/NVCtrl/NVCtrlLib.h |
| 55 |
$(INSTALL) -m 644 nv_control.h $(INCDIR)/NVCtrl/nv_control.h |
| 56 |
$(INSTALL) -D -m 755 $(XNVC_SHARED) $(LIBDIR)/$(XNVC_SHARED) |
| 57 |
$(LN_S) $(XNVC_SHARED) $(LIBDIR)/$(XNVC_SONAME) |
| 58 |
$(LN_S) $(XNVC_SHARED) $(LIBDIR)/libXNVCtrl.so |
| 59 |
ifeq ($(STATIC_XNVC),1) |
| 60 |
$(INSTALL) -m 644 $(XNVC_STATIC) $(DESTDIR)$(PREFIX)/$(libdir)/$(XNVC_STATIC) |
| 61 |
endif |
| 62 |
|
| 63 |
.PHONY: clean install all |