1*b1cdbd2cSJim Jagielski#**************************************************************
2*b1cdbd2cSJim Jagielski#
3*b1cdbd2cSJim Jagielski#  Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski#  or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski#  distributed with this work for additional information
6*b1cdbd2cSJim Jagielski#  regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski#  to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski#  "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski#  with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski#
11*b1cdbd2cSJim Jagielski#    http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski#
13*b1cdbd2cSJim Jagielski#  Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski#  software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski#  KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski#  specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski#  under the License.
19*b1cdbd2cSJim Jagielski#
20*b1cdbd2cSJim Jagielski#**************************************************************
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski
23*b1cdbd2cSJim Jagielski
24*b1cdbd2cSJim JagielskiPRJ=..$/..
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim JagielskiPRJNAME=sysui
27*b1cdbd2cSJim JagielskiTARGET=slackware
28*b1cdbd2cSJim Jagielski
29*b1cdbd2cSJim Jagielski# --- Settings -----------------------------------------------------
30*b1cdbd2cSJim Jagielski
31*b1cdbd2cSJim Jagielski.INCLUDE :  settings.mk
32*b1cdbd2cSJim Jagielski
33*b1cdbd2cSJim Jagielski# --- Product Version Information ----------------------------------
34*b1cdbd2cSJim Jagielski
35*b1cdbd2cSJim Jagielski.INCLUDE :  ../productversion.mk
36*b1cdbd2cSJim Jagielski
37*b1cdbd2cSJim Jagielski# --- Files --------------------------------------------------------
38*b1cdbd2cSJim Jagielski
39*b1cdbd2cSJim JagielskiMENUFILES=$(PKGDIR)$/{$(PRODUCTLIST)}4.1-$(TARGET)-menus-$(PKGVERSION)-noarch-$(PKGREV).tgz
40*b1cdbd2cSJim Jagielski
41*b1cdbd2cSJim Jagielski# --- Targets -------------------------------------------------------
42*b1cdbd2cSJim Jagielski
43*b1cdbd2cSJim Jagielski.INCLUDE :  target.mk
44*b1cdbd2cSJim Jagielski
45*b1cdbd2cSJim Jagielski.IF "$(OS)" == "LINUX"
46*b1cdbd2cSJim Jagielski
47*b1cdbd2cSJim JagielskiALLTAR : $(MENUFILES)
48*b1cdbd2cSJim Jagielski
49*b1cdbd2cSJim Jagielski$(MISC)/$(TARGET)/usr/share/applications/ :
50*b1cdbd2cSJim Jagielski	@$(MKDIRHIER) $(@)
51*b1cdbd2cSJim Jagielski
52*b1cdbd2cSJim Jagielski# --- slackware-specific stuff ------------------------------------
53*b1cdbd2cSJim Jagielski# symlinks shall not be included in the tarball, but created with the doinst-script
54*b1cdbd2cSJim Jagielski
55*b1cdbd2cSJim Jagielski# FIXME: removal of *-extension.* only to create identical packages to OOF680
56*b1cdbd2cSJim Jagielski%/usr/share/applications :
57*b1cdbd2cSJim Jagielski	@$(MKDIRHIER) $@
58*b1cdbd2cSJim Jagielski	/bin/sh -c "cd $(COMMONMISC)$/$(*:b:s/-/ /:1:s/4.1//); DESTDIR=$(shell @cd $*; pwd) GNOMEDIR="" ICON_PREFIX=$(ICONPREFIX.$(*:b:s/-/ /:1:s/4.1//)) KDEMAINDIR=/opt/kde .$/create_tree.sh"
59*b1cdbd2cSJim Jagielski	$(RM) $*$/opt$/kde$/share$/icons$/*$/*$/*$/*-extension.png
60*b1cdbd2cSJim Jagielski	$(RM) $*$/opt$/kde$/share$/mimelnk$/application$/*-extension.desktop
61*b1cdbd2cSJim Jagielski	$(RM) $*$/usr$/share$/applications$/*.desktop
62*b1cdbd2cSJim Jagielski	$(RM) $*$/usr$/bin$/soffice
63*b1cdbd2cSJim Jagielski
64*b1cdbd2cSJim Jagielski%$/install$/doinst.sh : update-script
65*b1cdbd2cSJim Jagielski	@echo "( cd etc ; rm -rf $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//)) )" > $@
66*b1cdbd2cSJim Jagielski	@echo "( cd etc ; ln -snf /opt/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//):s/-//) $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//)) )" >> $@
67*b1cdbd2cSJim Jagielski	@echo "( cd usr/bin ; rm -rf soffice )" >> $@
68*b1cdbd2cSJim Jagielski	@echo "( cd usr/bin ; ln -sf /etc/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//))/program/soffice soffice )" >> $@
69*b1cdbd2cSJim Jagielski	@echo -e $(foreach,i,$(shell @cat $(COMMONMISC)$/$(*:b:s/-/ /:1:s/4.1//)/launcherlist) "\n( cd usr/share/applications ; rm -rf $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//))-$i )\n( cd usr/share/applications ; ln -sf /etc/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//))/share/xdg/$i $(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//))-$i )") >> $@
70*b1cdbd2cSJim Jagielski	@cat $< >> $@
71*b1cdbd2cSJim Jagielski
72*b1cdbd2cSJim Jagielski%$/install$/slack-desc : slack-desc
73*b1cdbd2cSJim Jagielski	@$(MKDIRHIER) $(@:d)
74*b1cdbd2cSJim Jagielski	@sed -e "s/PKGNAME/$(*:b:s/-/ /:1:s/4.1//)-$(TARGET)-menus/g" -e "s/PKGVERSION/$(PKGVERSION.$(*:b:s/-/ /:1:s/4.1//))/g" \
75*b1cdbd2cSJim Jagielski		-e "s/LONGPRODUCTNAME/$(PRODUCTNAME.$(*:b:s/-/ /:1:s/4.1//)) $(PRODUCTVERSION.$(*:b:s/-/ /:1:s/4.1//))/g" \
76*b1cdbd2cSJim Jagielski		-e "s/PRODUCTNAME/$(PRODUCTNAME.$(*:b:s/-/ /:1:s/4.1//))/g" \
77*b1cdbd2cSJim Jagielski		-e "s/UNIXFILENAME/$(UNIXFILENAME.$(*:b:s/-/ /:1:s/4.1//))/g" $< > $@
78*b1cdbd2cSJim Jagielski
79*b1cdbd2cSJim Jagielski# needed to satisfy the slackware package tools - they need
80*b1cdbd2cSJim Jagielski# the entries like this
81*b1cdbd2cSJim Jagielski#       ./              <- very important
82*b1cdbd2cSJim Jagielski#       directory/file
83*b1cdbd2cSJim Jagielski# the follwoing does not work (no description found then):
84*b1cdbd2cSJim Jagielski#       ./
85*b1cdbd2cSJim Jagielski#       ./directory/file
86*b1cdbd2cSJim Jagielski# and this doesn't work either (broken file-list, package cannot be removed)
87*b1cdbd2cSJim Jagielski#       directory/file
88*b1cdbd2cSJim Jagielski
89*b1cdbd2cSJim Jagielski$(MISC)/$(TARGET)/empty.tar :
90*b1cdbd2cSJim Jagielski	@$(MKDIRHIER) $(@:d)/empty
91*b1cdbd2cSJim Jagielski	@tar -C $(MISC)/$(TARGET)/empty --owner=root --group=root --same-owner -cf $@ .
92*b1cdbd2cSJim Jagielski
93*b1cdbd2cSJim Jagielski
94*b1cdbd2cSJim Jagielski# --- packaging ---------------------------------------------------
95*b1cdbd2cSJim Jagielski
96*b1cdbd2cSJim Jagielski$(MENUFILES) : makefile.mk slack-desc update-script $(COMMONMISC)$/{$(PRODUCTLIST)}$/build.flag
97*b1cdbd2cSJim Jagielski$(MENUFILES) : $(MISC)/$(TARGET)/empty.tar
98*b1cdbd2cSJim Jagielski	@-$(MKDIRHIER) $(@:d)
99*b1cdbd2cSJim Jagielski	-$(RM) $(@:d)$/$(@:b:s/-/ /:1)-$(TARGET)-menus-*.tgz
100*b1cdbd2cSJim Jagielski	-$(RM) -r $(MISC)$/$(@:b)
101*b1cdbd2cSJim Jagielski	dmake $(MISC)$/$(@:b)$/usr/share/applications $(MISC)$/$(@:b)$/install$/slack-desc $(MISC)$/$(@:b)$/install$/doinst.sh
102*b1cdbd2cSJim Jagielski	@$(COPY) $(MISC)/$(TARGET)$/empty.tar $@.tmp
103*b1cdbd2cSJim Jagielski	@tar -C $(MISC)/$(@:b) --owner=root --group=root --same-owner --exclude application.flag -rf $@.tmp install usr opt
104*b1cdbd2cSJim Jagielski	@gzip < $@.tmp > $@
105*b1cdbd2cSJim Jagielski	@$(RM) $@.tmp
106*b1cdbd2cSJim Jagielski	$(RM) -r $(MISC)$/$(@:b)
107*b1cdbd2cSJim Jagielski
108*b1cdbd2cSJim Jagielski.ENDIF
109