aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden
diff options
context:
space:
mode:
Diffstat (limited to 'linden')
-rwxr-xr-xlinden/indra/develop.py2
-rw-r--r--linden/indra/llcommon/indra_constants.h3
-rw-r--r--linden/indra/llmessage/llregionflags.h9
-rw-r--r--linden/indra/newview/app_settings/logcontrol.xml4
-rw-r--r--linden/indra/newview/app_settings/settings.xml15
-rw-r--r--linden/indra/newview/hippogridmanager.cpp3
-rw-r--r--linden/indra/newview/hippolimits.cpp4
-rw-r--r--linden/indra/newview/llfloaterregioninfo.cpp206
-rw-r--r--linden/indra/newview/llfloaterregioninfo.h7
-rw-r--r--linden/indra/newview/llpanellogin.cpp17
-rw-r--r--linden/indra/newview/llpanelnetwork.cpp2
-rw-r--r--linden/indra/newview/lltexturecache.cpp2
-rw-r--r--linden/indra/newview/skins/default/xui/de/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/floater_world_map.xml2
-rw-r--r--linden/indra/newview/skins/default/xui/en-us/notifications.xml31
-rw-r--r--linden/indra/newview/skins/default/xui/es/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/fr/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/hu/notifications.xml13
-rw-r--r--linden/indra/newview/skins/default/xui/it/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/ja/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/ko/notifications.xml36
-rw-r--r--linden/indra/newview/skins/default/xui/pl/notifications.xml17
-rw-r--r--linden/indra/newview/skins/default/xui/pt/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/ru/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/uk/notifications.xml15
-rw-r--r--linden/indra/newview/skins/default/xui/zh/notifications.xml23
-rwxr-xr-xlinden/scripts/linux/0-patch-SL-source31
-rwxr-xr-xlinden/scripts/linux/1-get-libraries-from-SL71
-rwxr-xr-xlinden/scripts/linux/2-trim-libraries-from-SL247
-rwxr-xr-xlinden/scripts/linux/3-compile-SL-source100
-rw-r--r--linden/scripts/linux/README.txt24
-rw-r--r--linden/scripts/linux/config-SL-source63
32 files changed, 614 insertions, 438 deletions
diff --git a/linden/indra/develop.py b/linden/indra/develop.py
index e804374..6fe565e 100755
--- a/linden/indra/develop.py
+++ b/linden/indra/develop.py
@@ -383,7 +383,7 @@ class LinuxSetup(UnixSetup):
383 if hosts == 1 and socket.gethostname().startswith('station'): 383 if hosts == 1 and socket.gethostname().startswith('station'):
384 hosts, job_count = mk_distcc_hosts() 384 hosts, job_count = mk_distcc_hosts()
385 os.putenv('DISTCC_HOSTS', hosts) 385 os.putenv('DISTCC_HOSTS', hosts)
386 opts.extend(['-j', str(job_count)]) 386 opts.extend(['-j', str(2)])
387 387
388 if targets: 388 if targets:
389 targets = ' '.join(targets) 389 targets = ' '.join(targets)
diff --git a/linden/indra/llcommon/indra_constants.h b/linden/indra/llcommon/indra_constants.h
index 279d280..2fa2cdf 100644
--- a/linden/indra/llcommon/indra_constants.h
+++ b/linden/indra/llcommon/indra_constants.h
@@ -61,7 +61,8 @@ static const F32 REGION_WIDTH_METERS = 256.f;
61static const S32 REGION_WIDTH_UNITS = 256; 61static const S32 REGION_WIDTH_UNITS = 256;
62static const U32 REGION_WIDTH_U32 = 256; 62static const U32 REGION_WIDTH_U32 = 256;
63 63
64const F32 REGION_HEIGHT_METERS = 4096.f; 64// TODO - this is not actually used anywhere, but updating it anyway.
65const F32 REGION_HEIGHT_METERS = 16383.f;
65 66
66// Bits for simulator performance query flags 67// Bits for simulator performance query flags
67enum LAND_STAT_FLAGS 68enum LAND_STAT_FLAGS
diff --git a/linden/indra/llmessage/llregionflags.h b/linden/indra/llmessage/llregionflags.h
index 2324785..70c3499 100644
--- a/linden/indra/llmessage/llregionflags.h
+++ b/linden/indra/llmessage/llregionflags.h
@@ -137,15 +137,6 @@ inline U32 unset_prelude_flags(U32 flags)
137 & ~(REGION_FLAGS_PRELUDE_SET | REGION_FLAGS_SUN_FIXED)); 137 & ~(REGION_FLAGS_PRELUDE_SET | REGION_FLAGS_SUN_FIXED));
138} 138}
139 139
140// estate constants. Need to match first few etries in indra.estate table.
141const U32 ESTATE_ALL = 0; // will not match in db, reserved key for logic
142const U32 ESTATE_MAINLAND = 1;
143const U32 ESTATE_ORIENTATION = 2;
144const U32 ESTATE_INTERNAL = 3;
145const U32 ESTATE_SHOWCASE = 4;
146const U32 ESTATE_TEEN = 5;
147const U32 ESTATE_LAST_LINDEN = 5; // last linden owned/managed estate
148
149// for EstateOwnerRequest, setaccess message 140// for EstateOwnerRequest, setaccess message
150const U32 ESTATE_ACCESS_ALLOWED_AGENTS = 1 << 0; 141const U32 ESTATE_ACCESS_ALLOWED_AGENTS = 1 << 0;
151const U32 ESTATE_ACCESS_ALLOWED_GROUPS = 1 << 1; 142const U32 ESTATE_ACCESS_ALLOWED_GROUPS = 1 << 1;
diff --git a/linden/indra/newview/app_settings/logcontrol.xml b/linden/indra/newview/app_settings/logcontrol.xml
index cdc837d..353ae72 100644
--- a/linden/indra/newview/app_settings/logcontrol.xml
+++ b/linden/indra/newview/app_settings/logcontrol.xml
@@ -1,7 +1,7 @@
1<llsd> 1<llsd>
2 <map> 2 <map>
3 <!-- default-level can be ALL, DEBUG, INFO, WARN, ERROR, or NONE --> 3 <!-- default-level can be ALL, DEBUG, INFO, WARN, ERROR, or NONE -->
4 <key>default-level</key> <string>INFO</string> 4 <key>default-level</key> <string>WARN</string>
5 <key>print-location</key> <boolean>false</boolean> 5 <key>print-location</key> <boolean>false</boolean>
6 <key>settings</key> 6 <key>settings</key>
7 <array> 7 <array>
@@ -29,7 +29,7 @@
29 </array> 29 </array>
30 </map> 30 </map>
31 <map> 31 <map>
32 <key>level</key><string>DEBUG</string> 32 <key>level</key><string>WARN</string>
33 <key>functions</key> 33 <key>functions</key>
34 <array> 34 <array>
35 </array> 35 </array>
diff --git a/linden/indra/newview/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml
index 17d4c3c..ac8b236 100644
--- a/linden/indra/newview/app_settings/settings.xml
+++ b/linden/indra/newview/app_settings/settings.xml
@@ -610,7 +610,7 @@
610 <key>Type</key> 610 <key>Type</key>
611 <string>String</string> 611 <string>String</string>
612 <key>Value</key> 612 <key>Value</key>
613 <string>http://app.kokuaviewer.org/grids/grids.xml</string> 613 <string>http://www.meta7.com/grids.xml</string>
614 </map> 614 </map>
615 <key>GoAction</key> 615 <key>GoAction</key>
616 <map> 616 <map>
@@ -1419,7 +1419,7 @@
1419 <key>Type</key> 1419 <key>Type</key>
1420 <string>String</string> 1420 <string>String</string>
1421 <key>Value</key> 1421 <key>Value</key>
1422 <string>osgrid</string> 1422 <string>meta7</string>
1423 </map> 1423 </map>
1424 <key>KeepAppearance</key> 1424 <key>KeepAppearance</key>
1425 <map> 1425 <map>
@@ -10620,6 +10620,17 @@
10620 <key>Value</key> 10620 <key>Value</key>
10621 <integer>0</integer> 10621 <integer>0</integer>
10622 </map> 10622 </map>
10623 <key>ShowGridManager</key>
10624 <map>
10625 <key>Comment</key>
10626 <string>(meta7 setting) Show the grid manager on startup?</string>
10627 <key>Persist</key>
10628 <integer>1</integer>
10629 <key>Type</key>
10630 <string>Boolean</string>
10631 <key>Value</key>
10632 <real>0</real>
10633 </map>
10623 <key>ShowHoverTips</key> 10634 <key>ShowHoverTips</key>
10624 <map> 10635 <map>
10625 <key>Comment</key> 10636 <key>Comment</key>
diff --git a/linden/indra/newview/hippogridmanager.cpp b/linden/indra/newview/hippogridmanager.cpp
index d56214c..5e13ed8 100644
--- a/linden/indra/newview/hippogridmanager.cpp
+++ b/linden/indra/newview/hippogridmanager.cpp
@@ -752,6 +752,8 @@ void HippoGridManager::deleteGrid(const std::string& grid)
752 752
753void HippoGridManager::setDefaultGrid(const std::string& grid) 753void HippoGridManager::setDefaultGrid(const std::string& grid)
754{ 754{
755 return;
756 /* Prevent setting the default grid to anything but meta7 (except by editing the settings file).
755 GridIterator it = mGridInfo.find(grid); 757 GridIterator it = mGridInfo.find(grid);
756 if (it != mGridInfo.end()) 758 if (it != mGridInfo.end())
757 { 759 {
@@ -769,6 +771,7 @@ void HippoGridManager::setDefaultGrid(const std::string& grid)
769 { 771 {
770 mDefaultGrid = ""; 772 mDefaultGrid = "";
771 } 773 }
774 */
772} 775}
773 776
774 777
diff --git a/linden/indra/newview/hippolimits.cpp b/linden/indra/newview/hippolimits.cpp
index d4c8efb..691508a 100644
--- a/linden/indra/newview/hippolimits.cpp
+++ b/linden/indra/newview/hippolimits.cpp
@@ -16,7 +16,7 @@ HippoLimits *gHippoLimits = 0;
16HippoLimits::HippoLimits() 16HippoLimits::HippoLimits()
17: 17:
18 mMaxAgentGroups(100), 18 mMaxAgentGroups(100),
19 mMaxHeight(10000.0f), 19 mMaxHeight(16383.0f),
20 mMinHoleSize(0.05f), 20 mMinHoleSize(0.05f),
21 mMaxHollow(0.95f), 21 mMaxHollow(0.95f),
22 mMinPrimScale(0.001f), 22 mMinPrimScale(0.001f),
@@ -56,7 +56,7 @@ void HippoLimits::setOpenSimLimits()
56 mMaxPrimXPos = F32_MAX; 56 mMaxPrimXPos = F32_MAX;
57 mMaxPrimYPos = F32_MAX; 57 mMaxPrimYPos = F32_MAX;
58 mMaxPrimZPos = F32_MAX; 58 mMaxPrimZPos = F32_MAX;
59 mMaxHeight = 10000.0f; 59 mMaxHeight = 16383.0f;
60 mMaxLinkedPrims = -1; 60 mMaxLinkedPrims = -1;
61 mMaxPhysLinkedPrims = -1; 61 mMaxPhysLinkedPrims = -1;
62 mAllowParcelWindLight = TRUE; 62 mAllowParcelWindLight = TRUE;
diff --git a/linden/indra/newview/llfloaterregioninfo.cpp b/linden/indra/newview/llfloaterregioninfo.cpp
index d4ffe22..163c1ec 100644
--- a/linden/indra/newview/llfloaterregioninfo.cpp
+++ b/linden/indra/newview/llfloaterregioninfo.cpp
@@ -362,13 +362,7 @@ void LLFloaterRegionInfo::processRegionInfo(LLMessageSystem* msg)
362 panel->childSetValue("object_bonus_spin", LLSD(object_bonus_factor) ); 362 panel->childSetValue("object_bonus_spin", LLSD(object_bonus_factor) );
363 panel->childSetValue("access_combo", LLSD(sim_access) ); 363 panel->childSetValue("access_combo", LLSD(sim_access) );
364 364
365 365 panel->childSetEnabled("access_combo", gAgent.isGodlike() || (region && region->canManageEstate() ));
366 // detect teen grid for maturity
367
368 U32 parent_estate_id;
369 msg->getU32("RegionInfo", "ParentEstateID", parent_estate_id);
370 BOOL teen_grid = (parent_estate_id == 5); // *TODO add field to estate table and test that
371 panel->childSetEnabled("access_combo", gAgent.isGodlike() || (region && region->canManageEstate() && !teen_grid));
372 panel->setCtrlsEnabled(allow_modify); 366 panel->setCtrlsEnabled(allow_modify);
373 367
374 // RegionSettings PANEL 368 // RegionSettings PANEL
@@ -1650,16 +1644,9 @@ void LLPanelEstateInfo::onClickAddAllowedGroup(void* user_data)
1650 return; 1644 return;
1651 } 1645 }
1652 1646
1653 LLNotification::Params params("ChangeLindenAccess"); 1647 LLNotification::Params params("PfftLindenCrap");
1654 params.functor(boost::bind(&LLPanelEstateInfo::addAllowedGroup, self, _1, _2)); 1648 params.functor(boost::bind(&LLPanelEstateInfo::addAllowedGroup, self, _1, _2));
1655 if (isLindenEstate()) 1649 LLNotifications::instance().forceResponse(params, 0);
1656 {
1657 LLNotifications::instance().add(params);
1658 }
1659 else
1660 {
1661 LLNotifications::instance().forceResponse(params, 0);
1662 }
1663} 1650}
1664 1651
1665bool LLPanelEstateInfo::addAllowedGroup(const LLSD& notification, const LLSD& response) 1652bool LLPanelEstateInfo::addAllowedGroup(const LLSD& notification, const LLSD& response)
@@ -1837,16 +1824,6 @@ std::string all_estates_text()
1837 } 1824 }
1838} 1825}
1839 1826
1840// static
1841bool LLPanelEstateInfo::isLindenEstate()
1842{
1843 LLPanelEstateInfo* panel = LLFloaterRegionInfo::getPanelEstate();
1844 if (!panel) return false;
1845
1846 U32 estate_id = panel->getEstateID();
1847 return (estate_id <= ESTATE_LAST_LINDEN);
1848}
1849
1850typedef std::vector<LLUUID> AgentOrGroupIDsVector; 1827typedef std::vector<LLUUID> AgentOrGroupIDsVector;
1851struct LLEstateAccessChangeInfo 1828struct LLEstateAccessChangeInfo
1852{ 1829{
@@ -1898,14 +1875,7 @@ void LLPanelEstateInfo::addAllowedGroup2(LLUUID id, void* user_data)
1898 params.payload(payload) 1875 params.payload(payload)
1899 .substitutions(args) 1876 .substitutions(args)
1900 .functor(accessCoreConfirm); 1877 .functor(accessCoreConfirm);
1901 if (isLindenEstate()) 1878 LLNotifications::instance().add(params);
1902 {
1903 LLNotifications::instance().forceResponse(params, 0);
1904 }
1905 else
1906 {
1907 LLNotifications::instance().add(params);
1908 }
1909} 1879}
1910 1880
1911// static 1881// static
@@ -1916,19 +1886,12 @@ void LLPanelEstateInfo::accessAddCore(U32 operation_flag, const std::string& dia
1916 payload["dialog_name"] = dialog_name; 1886 payload["dialog_name"] = dialog_name;
1917 // agent id filled in after avatar picker 1887 // agent id filled in after avatar picker
1918 1888
1919 LLNotification::Params params("ChangeLindenAccess"); 1889 LLNotification::Params params("PfftLindenCrap");
1920 params.payload(payload) 1890 params.payload(payload)
1921 .functor(accessAddCore2); 1891 .functor(accessAddCore2);
1922 1892
1923 if (isLindenEstate()) 1893 // same as clicking "OK"
1924 { 1894 LLNotifications::instance().forceResponse(params, 0);
1925 LLNotifications::instance().add(params);
1926 }
1927 else
1928 {
1929 // same as clicking "OK"
1930 LLNotifications::instance().forceResponse(params, 0);
1931 }
1932} 1895}
1933 1896
1934// static 1897// static
@@ -2008,16 +1971,8 @@ void LLPanelEstateInfo::accessAddCore3(const std::vector<std::string>& names, co
2008 .payload(change_info->asLLSD()) 1971 .payload(change_info->asLLSD())
2009 .functor(accessCoreConfirm); 1972 .functor(accessCoreConfirm);
2010 1973
2011 if (isLindenEstate()) 1974 // ask if this estate or all estates with this owner
2012 { 1975 LLNotifications::instance().add(params);
2013 // just apply to this estate
2014 LLNotifications::instance().forceResponse(params, 0);
2015 }
2016 else
2017 {
2018 // ask if this estate or all estates with this owner
2019 LLNotifications::instance().add(params);
2020 }
2021} 1976}
2022 1977
2023// static 1978// static
@@ -2044,20 +1999,12 @@ void LLPanelEstateInfo::accessRemoveCore(U32 operation_flag, const std::string&
2044 payload["allowed_ids"].append(item->getUUID()); 1999 payload["allowed_ids"].append(item->getUUID());
2045 } 2000 }
2046 2001
2047 LLNotification::Params params("ChangeLindenAccess"); 2002 LLNotification::Params params("PfftLindenCrap");
2048 params.payload(payload) 2003 params.payload(payload)
2049 .functor(accessRemoveCore2); 2004 .functor(accessRemoveCore2);
2050 2005
2051 if (isLindenEstate()) 2006 // just proceed, as if clicking OK
2052 { 2007 LLNotifications::instance().forceResponse(params, 0);
2053 // warn on change linden estate
2054 LLNotifications::instance().add(params);
2055 }
2056 else
2057 {
2058 // just proceed, as if clicking OK
2059 LLNotifications::instance().forceResponse(params, 0);
2060 }
2061} 2008}
2062 2009
2063// static 2010// static
@@ -2070,21 +2017,12 @@ bool LLPanelEstateInfo::accessRemoveCore2(const LLSD& notification, const LLSD&
2070 return false; 2017 return false;
2071 } 2018 }
2072 2019
2073 // If Linden estate, can only apply to "this" estate, not all estates 2020 LLSD args;
2074 // owned by NULL. 2021 args["ALL_ESTATES"] = all_estates_text();
2075 if (isLindenEstate()) 2022 LLNotifications::instance().add(notification["payload"]["dialog_name"],
2076 { 2023 args,
2077 accessCoreConfirm(notification, response); 2024 notification["payload"],
2078 } 2025 accessCoreConfirm);
2079 else
2080 {
2081 LLSD args;
2082 args["ALL_ESTATES"] = all_estates_text();
2083 LLNotifications::instance().add(notification["payload"]["dialog_name"],
2084 args,
2085 notification["payload"],
2086 accessCoreConfirm);
2087 }
2088 return false; 2026 return false;
2089} 2027}
2090 2028
@@ -2366,52 +2304,23 @@ BOOL LLPanelEstateInfo::sendUpdate()
2366{ 2304{
2367 llinfos << "LLPanelEsateInfo::sendUpdate()" << llendl; 2305 llinfos << "LLPanelEsateInfo::sendUpdate()" << llendl;
2368 2306
2369 LLNotification::Params params("ChangeLindenEstate"); 2307 // send the update
2370 params.functor(boost::bind(&LLPanelEstateInfo::callbackChangeLindenEstate, this, _1, _2)); 2308 if (!commitEstateInfoCaps())
2371
2372 if (getEstateID() <= ESTATE_LAST_LINDEN)
2373 {
2374 // trying to change reserved estate, warn
2375 LLNotifications::instance().add(params);
2376 }
2377 else
2378 { 2309 {
2379 // for normal estates, just make the change 2310 // the caps method failed, try the old way
2380 LLNotifications::instance().forceResponse(params, 0); 2311 LLFloaterRegionInfo::nextInvoice();
2312 commitEstateInfoDataserver();
2381 } 2313 }
2314 // we don't want to do this because we'll get it automatically from the sim
2315 // after the spaceserver processes it
2316// else
2317// {
2318// // caps method does not automatically send this info
2319// LLFloaterRegionInfo::requestRegionInfo();
2320// }
2382 return TRUE; 2321 return TRUE;
2383} 2322}
2384 2323
2385bool LLPanelEstateInfo::callbackChangeLindenEstate(const LLSD& notification, const LLSD& response)
2386{
2387 S32 option = LLNotification::getSelectedOption(notification, response);
2388 switch(option)
2389 {
2390 case 0:
2391 // send the update
2392 if (!commitEstateInfoCaps())
2393 {
2394 // the caps method failed, try the old way
2395 LLFloaterRegionInfo::nextInvoice();
2396 commitEstateInfoDataserver();
2397 }
2398 // we don't want to do this because we'll get it automatically from the sim
2399 // after the spaceserver processes it
2400// else
2401// {
2402// // caps method does not automatically send this info
2403// LLFloaterRegionInfo::requestRegionInfo();
2404// }
2405 break;
2406 case 1:
2407 default:
2408 // do nothing
2409 break;
2410 }
2411 return false;
2412}
2413
2414
2415/* 2324/*
2416// Request = "getowner" 2325// Request = "getowner"
2417// SParam[0] = "" (empty string) 2326// SParam[0] = "" (empty string)
@@ -2664,47 +2573,6 @@ void LLPanelEstateInfo::setAbuseEmailAddress(const std::string& address)
2664 childSetValue("abuse_email_address", LLSD(address)); 2573 childSetValue("abuse_email_address", LLSD(address));
2665} 2574}
2666 2575
2667void LLPanelEstateInfo::setAccessAllowedEnabled(bool enable_agent,
2668 bool enable_group,
2669 bool enable_ban)
2670{
2671 childSetEnabled("allow_resident_label", enable_agent);
2672 childSetEnabled("allowed_avatar_name_list", enable_agent);
2673 childSetVisible("allowed_avatar_name_list", enable_agent);
2674 childSetEnabled("add_allowed_avatar_btn", enable_agent);
2675 childSetEnabled("remove_allowed_avatar_btn", enable_agent);
2676
2677 // Groups
2678 childSetEnabled("allow_group_label", enable_group);
2679 childSetEnabled("allowed_group_name_list", enable_group);
2680 childSetVisible("allowed_group_name_list", enable_group);
2681 childSetEnabled("add_allowed_group_btn", enable_group);
2682 childSetEnabled("remove_allowed_group_btn", enable_group);
2683
2684 // Ban
2685 childSetEnabled("ban_resident_label", enable_ban);
2686 childSetEnabled("banned_avatar_name_list", enable_ban);
2687 childSetVisible("banned_avatar_name_list", enable_ban);
2688 childSetEnabled("add_banned_avatar_btn", enable_ban);
2689 childSetEnabled("remove_banned_avatar_btn", enable_ban);
2690
2691 // Update removal buttons if needed
2692 if (enable_agent)
2693 {
2694 checkRemovalButton("allowed_avatar_name_list");
2695 }
2696
2697 if (enable_group)
2698 {
2699 checkRemovalButton("allowed_group_name_list");
2700 }
2701
2702 if (enable_ban)
2703 {
2704 checkRemovalButton("banned_avatar_name_list");
2705 }
2706}
2707
2708// static 2576// static
2709void LLPanelEstateInfo::callbackCacheName( 2577void LLPanelEstateInfo::callbackCacheName(
2710 const LLUUID& id, 2578 const LLUUID& id,
@@ -3241,20 +3109,6 @@ bool LLDispatchEstateUpdateInfo::operator()(
3241 panel->setSunHour(sun_hour); 3109 panel->setSunHour(sun_hour);
3242 } 3110 }
3243 3111
3244 bool visible_from_mainland = (bool)(flags & REGION_FLAGS_EXTERNALLY_VISIBLE);
3245 bool god = gAgent.isGodlike();
3246 bool linden_estate = (estate_id <= ESTATE_LAST_LINDEN);
3247
3248 // If visible from mainland, disable the access allowed
3249 // UI, as anyone can teleport there.
3250 // However, gods need to be able to edit the access list for
3251 // linden estates, regardless of visibility, to allow object
3252 // and L$ transfers.
3253 bool enable_agent = (!visible_from_mainland || (god && linden_estate));
3254 bool enable_group = enable_agent;
3255 bool enable_ban = !linden_estate;
3256 panel->setAccessAllowedEnabled(enable_agent, enable_group, enable_ban);
3257
3258 return true; 3112 return true;
3259} 3113}
3260 3114
diff --git a/linden/indra/newview/llfloaterregioninfo.h b/linden/indra/newview/llfloaterregioninfo.h
index ae0c993..f5e3d03 100644
--- a/linden/indra/newview/llfloaterregioninfo.h
+++ b/linden/indra/newview/llfloaterregioninfo.h
@@ -344,7 +344,6 @@ public:
344 344
345 U32 getEstateID() const { return mEstateID; } 345 U32 getEstateID() const { return mEstateID; }
346 void setEstateID(U32 estate_id) { mEstateID = estate_id; } 346 void setEstateID(U32 estate_id) { mEstateID = estate_id; }
347 static bool isLindenEstate();
348 347
349 const std::string getOwnerName() const; 348 const std::string getOwnerName() const;
350 void setOwnerName(const std::string& name); 349 void setOwnerName(const std::string& name);
@@ -352,10 +351,6 @@ public:
352 const std::string getAbuseEmailAddress() const; 351 const std::string getAbuseEmailAddress() const;
353 void setAbuseEmailAddress(const std::string& address); 352 void setAbuseEmailAddress(const std::string& address);
354 353
355 // If visible from mainland, allowed agent and allowed groups
356 // are ignored, so must disable UI.
357 void setAccessAllowedEnabled(bool enable_agent, bool enable_group, bool enable_ban);
358
359 // this must have the same function signature as 354 // this must have the same function signature as
360 // llmessage/llcachename.h:LLCacheNameCallback 355 // llmessage/llcachename.h:LLCacheNameCallback
361 static void callbackCacheName( 356 static void callbackCacheName(
@@ -367,8 +362,6 @@ public:
367 362
368protected: 363protected:
369 virtual BOOL sendUpdate(); 364 virtual BOOL sendUpdate();
370 // confirmation dialog callback
371 bool callbackChangeLindenEstate(const LLSD& notification, const LLSD& response);
372 365
373 void commitEstateInfoDataserver(); 366 void commitEstateInfoDataserver();
374 bool commitEstateInfoCaps(); 367 bool commitEstateInfoCaps();
diff --git a/linden/indra/newview/llpanellogin.cpp b/linden/indra/newview/llpanellogin.cpp
index 4fe0624..7388e7f 100644
--- a/linden/indra/newview/llpanellogin.cpp
+++ b/linden/indra/newview/llpanellogin.cpp
@@ -733,9 +733,20 @@ void LLPanelLogin::refreshLocation( bool force_visible )
733 } 733 }
734 734
735 BOOL show_start = TRUE; 735 BOOL show_start = TRUE;
736 736 BOOL show_grid_manager = TRUE;
737
737 if ( ! force_visible ) 738 if ( ! force_visible )
739 {
738 show_start = gSavedSettings.getBOOL("ShowStartLocation"); 740 show_start = gSavedSettings.getBOOL("ShowStartLocation");
741 }
742 if (gSavedSettings.getBOOL("ForceShowGrid"))
743 {
744 force_visible = true;
745 }
746 if ( force_visible )
747 {
748 show_grid_manager = gSavedSettings.getBOOL("ShowGridManager");
749 }
739 750
740// [RLVa:KB] - Alternate: Snowglobe-1.2.4 | Checked: 2009-07-08 (RLVa-1.0.0e) 751// [RLVa:KB] - Alternate: Snowglobe-1.2.4 | Checked: 2009-07-08 (RLVa-1.0.0e)
741 // TODO-RLVa: figure out some way to make this work with RLV_EXTENSION_STARTLOCATION 752 // TODO-RLVa: figure out some way to make this work with RLV_EXTENSION_STARTLOCATION
@@ -754,7 +765,9 @@ void LLPanelLogin::refreshLocation( bool force_visible )
754 BOOL show_server = gSavedSettings.getBOOL("ForceShowGrid"); 765 BOOL show_server = gSavedSettings.getBOOL("ForceShowGrid");
755 sInstance->childSetVisible("server_combo", show_server); 766 sInstance->childSetVisible("server_combo", show_server);
756#else*/ 767#else*/
757 sInstance->childSetVisible("server_combo", TRUE); 768 sInstance->childSetVisible("server_combo", show_grid_manager);
769 sInstance->childSetVisible("grid_btn", show_grid_manager);
770 sInstance->childSetVisible("grid_text", show_grid_manager);
758//#endif 771//#endif
759 772
760#endif 773#endif
diff --git a/linden/indra/newview/llpanelnetwork.cpp b/linden/indra/newview/llpanelnetwork.cpp
index 2edd1a1..ec0b6ee 100644
--- a/linden/indra/newview/llpanelnetwork.cpp
+++ b/linden/indra/newview/llpanelnetwork.cpp
@@ -127,7 +127,7 @@ void LLPanelNetwork::onClickResetCache(void* user_data)
127 LLPanelNetwork* self = (LLPanelNetwork*)user_data; 127 LLPanelNetwork* self = (LLPanelNetwork*)user_data;
128 if (!gSavedSettings.getString("CacheLocation").empty()) 128 if (!gSavedSettings.getString("CacheLocation").empty())
129 { 129 {
130 gSavedSettings.setString("NewCacheLocation", ""); 130 gSavedSettings.setString("NewCacheLocation", gDirUtilp->getCacheDir(true));
131 LLNotifications::instance().add("CacheWillBeMoved"); 131 LLNotifications::instance().add("CacheWillBeMoved");
132 } 132 }
133 std::string cache_location = gDirUtilp->getCacheDir(true); 133 std::string cache_location = gDirUtilp->getCacheDir(true);
diff --git a/linden/indra/newview/lltexturecache.cpp b/linden/indra/newview/lltexturecache.cpp
index 2b032a5..2e7d585 100644
--- a/linden/indra/newview/lltexturecache.cpp
+++ b/linden/indra/newview/lltexturecache.cpp
@@ -797,6 +797,8 @@ std::string LLTextureCache::getLocalFileName(const LLUUID& id)
797 // Does not include extension 797 // Does not include extension
798 std::string idstr = id.asString(); 798 std::string idstr = id.asString();
799 // TODO: should we be storing cached textures in skin directory? 799 // TODO: should we be storing cached textures in skin directory?
800 //We use LL_PATH_SKINS because the default textures (water normal map etc) are delivered in the SKINS path.
801 //Turns out we can't change this to LL_PATH_CACHE or these important textures will be removed when the user clears their cache.
800 std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_SKINS, "default", "textures", idstr); 802 std::string filename = gDirUtilp->getExpandedFilename(LL_PATH_SKINS, "default", "textures", idstr);
801 return filename; 803 return filename;
802} 804}
diff --git a/linden/indra/newview/skins/default/xui/de/notifications.xml b/linden/indra/newview/skins/default/xui/de/notifications.xml
index b2975df..3e08d33 100644
--- a/linden/indra/newview/skins/default/xui/de/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/de/notifications.xml
@@ -1442,21 +1442,6 @@ Die Option zum Austritt aus einer Gruppe finden Sie unter „Bearbeiten“ &gt;
1442 <button name="Cancel" text="Abbrechen"/> 1442 <button name="Cancel" text="Abbrechen"/>
1443 </form> 1443 </form>
1444 </notification> 1444 </notification>
1445 <notification label="Linden-Grundstück ändern" name="ChangeLindenEstate">
1446 Sie sind im Begriff, ein Grundstück in Linden-Besitz (Mainland, Teen-Raster, Orientierung usw.) zu verändern.
1447
1448Dies ist ÄUSSERST GEFÄHRLICH, da es grundlegende Auswirkungen auf das Benutzererlebnis hat. Auf dem Mainland werden tausende Regionen geändert, was den Spaceserver stark belastet.
1449
1450Fortfahren?
1451 <usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="OK"/>
1452 </notification>
1453 <notification label="Zugang zu Linden-Grundstück ändern" name="ChangeLindenAccess">
1454 Sie sind im Begriff, die Zugangsliste für ein Grundstück in Linden-Besitz (Mainland, Teen-Raster, Orientierung usw.) zu verändern.
1455
1456Dies ist GEFÄHRLICH und sollte nur erfolgen, um Objekte/L$ per Hack in und aus dem Raster zu entfernen.
1457Tausende Regionen werden verändert und der Spaceserver wird dadurch stark belastet.
1458 <usetemplate name="okcancelbuttons" notext="Abbrechen" yestext="OK"/>
1459 </notification>
1460 <notification label="Grundstück wählen" name="EstateAllowedAgentAdd"> 1445 <notification label="Grundstück wählen" name="EstateAllowedAgentAdd">
1461 Nur für dieses Grundstück oder für alle [ALL_ESTATES] zur Erlaubnisliste hinzufügen? 1446 Nur für dieses Grundstück oder für alle [ALL_ESTATES] zur Erlaubnisliste hinzufügen?
1462 <usetemplate canceltext="Abbrechen" name="yesnocancelbuttons" notext="Alle Grundstücke" yestext="Dieses Grundstück"/> 1447 <usetemplate canceltext="Abbrechen" name="yesnocancelbuttons" notext="Alle Grundstücke" yestext="Dieses Grundstück"/>
diff --git a/linden/indra/newview/skins/default/xui/en-us/floater_world_map.xml b/linden/indra/newview/skins/default/xui/en-us/floater_world_map.xml
index daf217e..314ad20 100644
--- a/linden/indra/newview/skins/default/xui/en-us/floater_world_map.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/floater_world_map.xml
@@ -154,7 +154,7 @@
154 mouse_opaque="true" name="spin y" 154 mouse_opaque="true" name="spin y"
155 tool_tip="Y coordinate of location to show on map" width="48" /> 155 tool_tip="Y coordinate of location to show on map" width="48" />
156 <spinner bottom_delta="0" decimal_digits="0" follows="bottom|right" height="16" 156 <spinner bottom_delta="0" decimal_digits="0" follows="bottom|right" height="16"
157 increment="1" initial_val="0" left_delta="50" max_val="4096" min_val="0" 157 increment="1" initial_val="0" left_delta="50" max_val="16383" min_val="0"
158 mouse_opaque="true" name="spin z" 158 mouse_opaque="true" name="spin z"
159 tool_tip="Z coordinate of location to show on map" width="48" /> 159 tool_tip="Z coordinate of location to show on map" width="48" />
160 <button bottom="-625" follows="right|bottom" font="SansSerif" halign="center" 160 <button bottom="-625" follows="right|bottom" font="SansSerif" halign="center"
diff --git a/linden/indra/newview/skins/default/xui/en-us/notifications.xml b/linden/indra/newview/skins/default/xui/en-us/notifications.xml
index 47d3dbb..e3b6364 100644
--- a/linden/indra/newview/skins/default/xui/en-us/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/en-us/notifications.xml
@@ -3194,30 +3194,11 @@ Type a short announcement which will be sent to everyone currently in your estat
3194 3194
3195<notification 3195<notification
3196 icon="alert.tga" 3196 icon="alert.tga"
3197 label="Change Linden Estate" 3197 label="Pfft some old linden crap"
3198 name="ChangeLindenEstate" 3198 name="PfftLindenCrap"
3199 type="alert"> 3199 type="alert">
3200You are about to change a Linden owned estate (mainland, teen grid, orientation, etc.). 3200This used to be some Linden inspired crap, but should never be seen now.
3201 3201Still unravelling the code before I make this go away.
3202This is EXTREMELY DANGEROUS because it can fundamentally affect the user experience. On the mainland, it will change thousands of regions and make the spaceserver hiccup.
3203
3204Proceed?
3205 <usetemplate
3206 name="okcancelbuttons"
3207 notext="Cancel"
3208 yestext="OK"/>
3209</notification>
3210
3211<notification
3212 icon="alert.tga"
3213 label="Change Linden Estate Access"
3214 name="ChangeLindenAccess"
3215 type="alert">
3216You are about to change the access list for a Linden owned estate (mainland, teen grid, orientation, etc.).
3217
3218This is DANGEROUS and should only be done to invoke the hack allowing objects/[CURRENCY] to be transfered in/out of a grid.
3219
3220It will change thousands of regions and make the spaceserver hiccup.
3221 <usetemplate 3202 <usetemplate
3222 name="okcancelbuttons" 3203 name="okcancelbuttons"
3223 notext="Cancel" 3204 notext="Cancel"
@@ -5739,9 +5720,9 @@ If you want to view streaming media on parcels that support it you should go to
5739No Media Plugin was found to handle the "[MIME_TYPE]" mime type. Media of this type will be unavailable. 5720No Media Plugin was found to handle the "[MIME_TYPE]" mime type. Media of this type will be unavailable.
5740</notification> 5721</notification>
5741<notification 5722<notification
5742 icon="alertmodal.tga" 5723 icon="alert.tga"
5743 name="MediaPluginFailed" 5724 name="MediaPluginFailed"
5744 type="alertmodal"> 5725 type="alert">
5745The following Media Plugin has failed: 5726The following Media Plugin has failed:
5746[PLUGIN] 5727[PLUGIN]
5747 5728
diff --git a/linden/indra/newview/skins/default/xui/es/notifications.xml b/linden/indra/newview/skins/default/xui/es/notifications.xml
index f39dfc9..f3a862d 100644
--- a/linden/indra/newview/skins/default/xui/es/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/es/notifications.xml
@@ -1454,21 +1454,6 @@ Se ocultará el chat y los mensajes instantáneos. Los mensajes instantáneos re
1454 <button name="Cancel" text="Cancelar"/> 1454 <button name="Cancel" text="Cancelar"/>
1455 </form> 1455 </form>
1456 </notification> 1456 </notification>
1457 <notification label="Cambiar un estado Linden" name="ChangeLindenEstate">
1458 Va a hacer cambios en un estado propiedad de Linden (mainland, grid teen, orientación, etc.).
1459
1460Esto es EXTREMADAMENTE PELIGROSO, porque puede afectar radicalmente al funcionamiento de los usuarios. En mainland, se cambiarán miles de regiones, y se provocará un colapso en el espacio del servidor.
1461
1462¿Proceder?
1463 <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/>
1464 </notification>
1465 <notification label="Cambiar el acceso a un estado Linden" name="ChangeLindenAccess">
1466 Va a cambiar la lista de acceso de un estado propiedad de Linden (mainland, grid teen, orientación, etc.).
1467
1468Esto es PELIGROSO, y sólo debe hacerse para deshacerse de ataques que permitan sacar o meter en el grid objetos o L$.
1469Se cambiarán miles de regiones, y se provocará un colapso en el espacio del servidor.
1470 <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/>
1471 </notification>
1472 <notification label="Seleccionar el estado" name="EstateAllowedAgentAdd"> 1457 <notification label="Seleccionar el estado" name="EstateAllowedAgentAdd">
1473 ¿Añadir a la lista de permitidos sólo para este estado o para [ALL_ESTATES]? 1458 ¿Añadir a la lista de permitidos sólo para este estado o para [ALL_ESTATES]?
1474 <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/> 1459 <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todos los estados" yestext="Este estado"/>
diff --git a/linden/indra/newview/skins/default/xui/fr/notifications.xml b/linden/indra/newview/skins/default/xui/fr/notifications.xml
index 6911f8b..dc7e61f 100644
--- a/linden/indra/newview/skins/default/xui/fr/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/fr/notifications.xml
@@ -1425,21 +1425,6 @@ Pour quitter un groupe, sélectionnez l&apos;option Groupe dans le menu Éditer.
1425 <button name="Cancel" text="Annuler"/> 1425 <button name="Cancel" text="Annuler"/>
1426 </form> 1426 </form>
1427 </notification> 1427 </notification>
1428 <notification label="Modifier un domaine Linden" name="ChangeLindenEstate">
1429 Vous vous apprêtez à modifier un domaine appartenant aux Lindens (continent, zone réservée aux ados, orientation etc.).
1430
1431Cela est extrêmement délicat car l&apos;expérience des résidents est en jeu. Sur le continent, cela modifiera des milliers de régions et sera difficile à digérer pour le serveur.
1432
1433Continuer ?
1434 <usetemplate name="okcancelbuttons" notext="Annuler" yestext="OK"/>
1435 </notification>
1436 <notification label="Modifier l&apos;accès à un domaine Linden" name="ChangeLindenAccess">
1437 Vous vous apprêtez à modifier la liste d&apos;accès à un domaine appartenant aux Linden (continent, zone réservée aux ados, orientation etc.).
1438
1439Cette action est délicate et ne doit être effectuée que pour appeler le hack autorisant des objets/L$ à être transférés à l&apos;intérieur/extérieur de la grille.
1440Cette action modifiera des milliers de régions et sera difficile à digérer pour le serveur.
1441 <usetemplate name="okcancelbuttons" notext="Annuler" yestext="OK"/>
1442 </notification>
1443 <notification label="Choisir le domaine" name="EstateAllowedAgentAdd"> 1428 <notification label="Choisir le domaine" name="EstateAllowedAgentAdd">
1444 Ajouter à la liste des résidents autorisés uniquement pour ce domaine ou pour [ALL_ESTATES] ? 1429 Ajouter à la liste des résidents autorisés uniquement pour ce domaine ou pour [ALL_ESTATES] ?
1445 <usetemplate canceltext="Annuler" name="yesnocancelbuttons" notext="Tous les domaines" yestext="Ce domaine"/> 1430 <usetemplate canceltext="Annuler" name="yesnocancelbuttons" notext="Tous les domaines" yestext="Ce domaine"/>
diff --git a/linden/indra/newview/skins/default/xui/hu/notifications.xml b/linden/indra/newview/skins/default/xui/hu/notifications.xml
index bf41284..6bc188d 100644
--- a/linden/indra/newview/skins/default/xui/hu/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/hu/notifications.xml
@@ -1317,19 +1317,6 @@ A csoportból való kilépéshez válaszd a &apos;Csoportok...&apos; részt a &a
1317 <notification label="Üzenetküldés mindenki számára a telkeden" name="MessageEstate"> 1317 <notification label="Üzenetküldés mindenki számára a telkeden" name="MessageEstate">
1318 Rövid bejelentés írása, amely elküldésre mindenki részére, aki az ingatlanodon tartózkodik. 1318 Rövid bejelentés írása, amely elküldésre mindenki részére, aki az ingatlanodon tartózkodik.
1319 </notification> 1319 </notification>
1320 <notification label="Linden telek változtatása" name="ChangeLindenEstate">
1321 Linden tulajdonú telek változtatása folyamatban (mainland, teen grid, orientation, stb.).
1322
1323Ez NAGYON VESZÉLYES, mivel kihatással van a felhasználók megszokásaira. A mainland-en ez régiók ezreit befolyásolja, amely a &apos;spaceserver&apos; működésében akadályokat okoz.
1324
1325Folytatod?
1326 </notification>
1327 <notification label="Linden telek belépésének változtatása" name="ChangeLindenAccess">
1328 Linden tulajdonú telek változtatása folyamatban (mainland, teen grid, orientation, stb.).
1329
1330This is DANGEROUS and should only be done to invoke the hack allowing objects/L$ to be transfered in/out of a grid.
1331A mainland-en ez régiók ezreit befolyásolja, amely a &apos;spaceserver&apos; működésében akadályokat okoz.
1332 </notification>
1333 <notification label="Ingatlan kiválasztása" name="EstateAllowedAgentAdd"> 1320 <notification label="Ingatlan kiválasztása" name="EstateAllowedAgentAdd">
1334 Engedélyezettek listájához való hozzáadása csak ennek az ingatlan vagy [ALL_ESTATES] esetén? 1321 Engedélyezettek listájához való hozzáadása csak ennek az ingatlan vagy [ALL_ESTATES] esetén?
1335 </notification> 1322 </notification>
diff --git a/linden/indra/newview/skins/default/xui/it/notifications.xml b/linden/indra/newview/skins/default/xui/it/notifications.xml
index 61aafae..039a6d1 100644
--- a/linden/indra/newview/skins/default/xui/it/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/it/notifications.xml
@@ -1452,21 +1452,6 @@ Per abbandonare un gruppo seleziona l&apos;opzione &apos;Gruppi..&apos; dal menu
1452 <button name="Cancel" text="Annulla"/> 1452 <button name="Cancel" text="Annulla"/>
1453 </form> 1453 </form>
1454 </notification> 1454 </notification>
1455 <notification label="Cambia la tipologia della proprietà Linden" name="ChangeLindenEstate">
1456 Stai per cambiare la tipologia della proprietà Linden (mainland, griglia minorenni, orientamento, ecc.).
1457
1458Questo è ESTREMAMENTE PERICOLOSO perchè può cambiare radicalmente l&apos;esperienza degli utenti. Sulla mainland cambierà migliaia di regioni e produrrà seri problemi ai vari server.
1459
1460Confermi?
1461 <usetemplate name="okcancelbuttons" notext="Annulla" yestext="OK"/>
1462 </notification>
1463 <notification label="Cambia la tipologia Linden di accesso alla proprietà" name="ChangeLindenAccess">
1464 Stai per cambiare la lista di accesso per una proprietà Linden (mainland, griglia minorenni, orientamento, ecc.).
1465
1466Questo è PERICOLOSO e dovrebbe essere fatto soltanto per poter lanciare il programma che consente agli oggetti/L$ di essere trasferiti fra griglie diverse.
1467Cambierà migliaia di regioni e produrrà seri problemi ai vari server.
1468 <usetemplate name="okcancelbuttons" notext="Annulla" yestext="OK"/>
1469 </notification>
1470 <notification label="Seleziona la proprietà" name="EstateAllowedAgentAdd"> 1455 <notification label="Seleziona la proprietà" name="EstateAllowedAgentAdd">
1471 Aggiungi alla lista di accesso solo per questa proprietà oppure per [ALL_ESTATES]? 1456 Aggiungi alla lista di accesso solo per questa proprietà oppure per [ALL_ESTATES]?
1472 <usetemplate canceltext="Annulla" name="yesnocancelbuttons" notext="Tutte le proprietà" yestext="Questa proprietà"/> 1457 <usetemplate canceltext="Annulla" name="yesnocancelbuttons" notext="Tutte le proprietà" yestext="Questa proprietà"/>
diff --git a/linden/indra/newview/skins/default/xui/ja/notifications.xml b/linden/indra/newview/skins/default/xui/ja/notifications.xml
index 6da6ccc..fa63cf0 100644
--- a/linden/indra/newview/skins/default/xui/ja/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/ja/notifications.xml
@@ -1526,21 +1526,6 @@ F1キーを押してください。
1526 <button name="Cancel" text="取り消し"/> 1526 <button name="Cancel" text="取り消し"/>
1527 </form> 1527 </form>
1528 </notification> 1528 </notification>
1529 <notification label="Lindenの不動産を変更" name="ChangeLindenEstate">
1530 あなたはLinden所有の不動産(メインランド、ティーングリッド、オリエンテーションなど)を変更しようとしています。
1531
1532これはユーザーの経験を根本から揺るがしかねない「非常に危険な行為」です。これにより、メインランドで多数の地域が変更され、スペースサーバーに悪影響が生じます。
1533
1534操作を続行しますか?
1535 <usetemplate name="okcancelbuttons" notext="取り消し" yestext="OK"/>
1536 </notification>
1537 <notification label="Lindenの不動産へのアクセスを変更" name="ChangeLindenAccess">
1538 あなたはLinden所有の不動産(メインランド、ティーングリッド、オリエンテーションなど)へのアクセスリストを変更しようとしています。
1539
1540この行為は「危険」であり、グリッドからオブジェクトやお金の転送をもたらすハッキングを引き起こす可能性があるため、完全にそれを意図した場合のみ行うべきものです。
1541これにより多数の地域が変更され、スペースサーバーに悪影響が生じます。
1542 <usetemplate name="okcancelbuttons" notext="取り消し" yestext="OK"/>
1543 </notification>
1544 <notification label="不動産を選択" name="EstateAllowedAgentAdd"> 1529 <notification label="不動産を選択" name="EstateAllowedAgentAdd">
1545 この不動産の許可リストだけに追加しますか? それとも[ALL_ESTATES]のすべての許可リストに追加しますか? 1530 この不動産の許可リストだけに追加しますか? それとも[ALL_ESTATES]のすべての許可リストに追加しますか?
1546 <usetemplate canceltext="取り消し" name="yesnocancelbuttons" notext="すべての不動産" yestext="この不動産"/> 1531 <usetemplate canceltext="取り消し" name="yesnocancelbuttons" notext="すべての不動産" yestext="この不動産"/>
diff --git a/linden/indra/newview/skins/default/xui/ko/notifications.xml b/linden/indra/newview/skins/default/xui/ko/notifications.xml
index cb720ed..20c57a1 100644
--- a/linden/indra/newview/skins/default/xui/ko/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/ko/notifications.xml
@@ -2941,43 +2941,7 @@ Applications 폴더에 다운로드하시겠습니까?
2941 </form> 2941 </form>
2942 </notification> 2942 </notification>
2943 2943
2944 <notification
2945
2946 label="린든 사유지 변경"
2947 name="ChangeLindenEstate"
2948 >
2949귀하께서는 린든 소유의 사유지(메인랜드, 틴 그리드, 오리엔테이션 등)를
2950변경하려고 합니다.
2951
2952이렇게 하면 기본적으로 사용자가 게임을 즐기는 데 영향을
2953줄 수 있으므로 매우 위험합니다. 또한 메인랜드에서 수천가지의 지역이 변경되고
2954공간 서버가 일시적으로 중단될 수도 있습니다.
2955
2956계속하시겠습니까?
2957 <usetemplate
2958 name="okcancelbuttons"
2959 notext="취소"
2960 yestext="사유지 변경"/>
2961 </notification>
2962 2944
2963 <notification
2964
2965 label="린든 사유지 액세스 변경"
2966 name="ChangeLindenAccess"
2967 >
2968귀하께서는 린든 소유의 사유지(메인랜드, 틴 그리드, 오리엔테이션 등)에 대한
2969접근 목록을 변경하려고 합니다.
2970
2971이는 위험한 작업이며 오브젝트/금액을 그리드에서 송수신할 수 있도록
2972핵을 불러내는 경우에만 수행할 수
2973있습니다.
2974이렇게 하면 수천가지의 지역이 변경되고
2975공간 서버가 일시적으로 중단될 수도 있습니다.
2976 <usetemplate
2977 name="okcancelbuttons"
2978 notext="취소"
2979 yestext="사유지 변경"/>
2980 </notification>
2981 2945
2982 <notification 2946 <notification
2983 2947
diff --git a/linden/indra/newview/skins/default/xui/pl/notifications.xml b/linden/indra/newview/skins/default/xui/pl/notifications.xml
index 38a4b56..4c8ee5c 100644
--- a/linden/indra/newview/skins/default/xui/pl/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/pl/notifications.xml
@@ -1434,23 +1434,6 @@ Musisz opuścić przynajmniej jedną grupę żeby przyjąć członkostwo w tej g
1434 <button name="Cancel" text="Anuluj"/> 1434 <button name="Cancel" text="Anuluj"/>
1435 </form> 1435 </form>
1436 </notification> 1436 </notification>
1437 <notification label="Zmiana Majątku Lindenów" name="ChangeLindenEstate">
1438 Dokonujesz zmiany w Regionie Głównym należącym do Lindenów (Regiony Główne, Teen Grid, Orientacja).
1439
1440Żądana operacja jest wyjątkowo niebezpieczna dla wszystkich Rezydentów przebywających w regionie. Dodatkowo, zmiany dokonane w Regionie Głównym mogą spowodować problemy przestrzeni serwerowej innych regionów.
1441
1442Kontynuować?
1443 <usetemplate name="okcancelbuttons" notext="Anuluj" yestext="OK"/>
1444 </notification>
1445 <notification label="Zmiana Dostępu do Majątku Lindenów" name="ChangeLindenAccess">
1446 Dokonujesz zmiany w liście dostępu Regionu Głównego należącego do Lindenów (Regiony Główne, Teen Grid, Orientacja).
1447
1448Żądana operacja jest wyjątkowo niebezpieczna dla wszystkich Rezydentów przebywających w regionie i powinna być używana wyłącznie w celu zablokowania opcji pozwalającej na przeniesienie obiektów/L$ do/z sieci.
1449Dodatkowo, zmiany dokonane w Regionie Głównym mogą spowodować problemy przestrzeni serwerowej innych regionów.
1450
1451Kontynuować?
1452 <usetemplate name="okcancelbuttons" notext="Anuluj" yestext="OK"/>
1453 </notification>
1454 <notification label="Wybierz Majątek" name="EstateAllowedAgentAdd"> 1437 <notification label="Wybierz Majątek" name="EstateAllowedAgentAdd">
1455 Dodać do listy dostępu do tego majątku czy do [ALL_ESTATES]? 1438 Dodać do listy dostępu do tego majątku czy do [ALL_ESTATES]?
1456 <usetemplate canceltext="Anuluj" name="yesnocancelbuttons" notext="Wszystkie majątki" yestext="Ten majątek"/> 1439 <usetemplate canceltext="Anuluj" name="yesnocancelbuttons" notext="Wszystkie majątki" yestext="Ten majątek"/>
diff --git a/linden/indra/newview/skins/default/xui/pt/notifications.xml b/linden/indra/newview/skins/default/xui/pt/notifications.xml
index 71903c1..a026c59 100644
--- a/linden/indra/newview/skins/default/xui/pt/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/pt/notifications.xml
@@ -1434,21 +1434,6 @@ Bate-papo e mensagens instantâneas serão escondidas. Mensagens instantâneas i
1434 <button name="Cancel" text="Cancelar"/> 1434 <button name="Cancel" text="Cancelar"/>
1435 </form> 1435 </form>
1436 </notification> 1436 </notification>
1437 <notification label="Mudar propriedade Linden" name="ChangeLindenEstate">
1438 Você está prestes a mudar uma propriedade pertencente a Linden (continente, teen grid, orientação, etc.)
1439
1440Isto é EXTREMAMENTE PERIGOSO porque pode fundamentalmente afetar a experiência do usuário. No continente, vai mudar milhares de regiões e fazer o spaceserver soluçar.
1441
1442Proceder?
1443 <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="Mudar Propriedade"/>
1444 </notification>
1445 <notification label="Mudar o acesso à propriedade Linden" name="ChangeLindenAccess">
1446 Você está prestes a mudar a lista de acessos de uma propriedade pertencente a Linden (continente, teen grid, orientação, etc.).
1447
1448Isto é PERIGOSO e deveria ser feito apenas para utilizar uma brecha que permita que objetos/L$ sejam transferidos para dentro/fora da grade.
1449Isto mudará milhares de regiões e fará o spaceserver soluçar.
1450 <usetemplate name="okcancelbuttons" notext="Cancelar" yestext="OK"/>
1451 </notification>
1452 <notification label="Selecione a propriedade" name="EstateAllowedAgentAdd"> 1437 <notification label="Selecione a propriedade" name="EstateAllowedAgentAdd">
1453 Adicionar à lista de permitidos somente para esta propriedade ou para [ALL_ESTATES]? 1438 Adicionar à lista de permitidos somente para esta propriedade ou para [ALL_ESTATES]?
1454 <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todas as Propriedades" yestext="Esta Propriedade"/> 1439 <usetemplate canceltext="Cancelar" name="yesnocancelbuttons" notext="Todas as Propriedades" yestext="Esta Propriedade"/>
diff --git a/linden/indra/newview/skins/default/xui/ru/notifications.xml b/linden/indra/newview/skins/default/xui/ru/notifications.xml
index 0d36371..e0f7740 100644
--- a/linden/indra/newview/skins/default/xui/ru/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/ru/notifications.xml
@@ -1452,21 +1452,6 @@ www.secondlife.com/support
1452 <button name="Cancel" text="Отмена"/> 1452 <button name="Cancel" text="Отмена"/>
1453 </form> 1453 </form>
1454 </notification> 1454 </notification>
1455 <notification label="Изменить участок Линденов" name="ChangeLindenEstate">
1456 Вы хотите сменить поместья, принадлежащие Линденам (материк, детский Grid, остров ориентации и т.д.).
1457
1458Это ЧРЕЗВЫЧАЙНО ОПАСНО, потому что это может существенно повлиять на положение вещей. На материке это может изменить тысячи регионов, и испортить работу серверов.
1459
1460Продолжить?
1461 <usetemplate name="okcancelbuttons" notext="Отмена" yestext="OK"/>
1462 </notification>
1463 <notification label="Изменить доступ к участку Линденов" name="ChangeLindenAccess">
1464 Вы хотите сменить поместья, принадлежащие Линденам (материк, детский Grid, остров ориентации и т.д.).
1465
1466Это ЧРЕЗВЫЧАЙНО ОПАСНО и может использоватся только для того, чтобы вызвать методы, позволяющие перемещать объекты/L$ в/из Grid.
1467Это может изменить тысячи регионов, и испортить работу серверов.
1468 <usetemplate name="okcancelbuttons" notext="Отмена" yestext="OK"/>
1469 </notification>
1470 <notification label="Выбрать поместье" name="EstateAllowedAgentAdd"> 1455 <notification label="Выбрать поместье" name="EstateAllowedAgentAdd">
1471 Добавить в список разрешенных этого поместья или [ALL_ESTATES]? 1456 Добавить в список разрешенных этого поместья или [ALL_ESTATES]?
1472 <usetemplate canceltext="Отмена" name="yesnocancelbuttons" notext="Все поместья" yestext="Это поместье"/> 1457 <usetemplate canceltext="Отмена" name="yesnocancelbuttons" notext="Все поместья" yestext="Это поместье"/>
diff --git a/linden/indra/newview/skins/default/xui/uk/notifications.xml b/linden/indra/newview/skins/default/xui/uk/notifications.xml
index c7457b3..d207d02 100644
--- a/linden/indra/newview/skins/default/xui/uk/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/uk/notifications.xml
@@ -1436,21 +1436,6 @@ www.secondlife.com/support
1436 <button name="Cancel" text="Відміна"/> 1436 <button name="Cancel" text="Відміна"/>
1437 </form> 1437 </form>
1438 </notification> 1438 </notification>
1439 <notification label="Змінити ділянку Лінденів" name="ChangeLindenEstate">
1440 Ви хочете змінити маєтки, що належать Лінденам (материк, дитячий Grid, остров орієнтації і т.д.).
1441
1442Це НАДЗВИЧАЙНО НЕБЕЗПЕЧНО, тому що це може суттєво вплинути на стан речей. На материку це може змінити тисячі регіонів, і зіпсувати роботу серверів.
1443
1444Продовжити?
1445 <usetemplate name="okcancelbuttons" notext="Відміна" yestext="OK"/>
1446 </notification>
1447 <notification label="Змінити доступ до ділянки Лінденів" name="ChangeLindenAccess">
1448 Ви хочете змінити маєтки, що належать Лінденам (материк, дитячий Grid, остров орієнтації і т.д.).
1449
1450Це НАДЗВИЧАЙНО НЕБЕЗПЕЧНО і може використовуватися тільки для того, щоб викликати методи, що дозволять переміщати об&apos;єкти/L$ в/з Grid.
1451Це може змінити тисячі регіонів, і зіпсувати роботу серверів.
1452 <usetemplate name="okcancelbuttons" notext="Відміна" yestext="OK"/>
1453 </notification>
1454 <notification label="Обрати маєток" name="EstateAllowedAgentAdd"> 1439 <notification label="Обрати маєток" name="EstateAllowedAgentAdd">
1455 Додати в список дозволених цього маєтку або [ALL_ESTATES]? 1440 Додати в список дозволених цього маєтку або [ALL_ESTATES]?
1456 <usetemplate canceltext="Відміна" name="yesnocancelbuttons" notext="Всі маєтки" yestext="Цей маєток"/> 1441 <usetemplate canceltext="Відміна" name="yesnocancelbuttons" notext="Всі маєтки" yestext="Цей маєток"/>
diff --git a/linden/indra/newview/skins/default/xui/zh/notifications.xml b/linden/indra/newview/skins/default/xui/zh/notifications.xml
index acbb18b..415e5e7 100644
--- a/linden/indra/newview/skins/default/xui/zh/notifications.xml
+++ b/linden/indra/newview/skins/default/xui/zh/notifications.xml
@@ -1538,29 +1538,6 @@ www.secondlife.com/support
1538 <button name="OK" text="确定"/> 1538 <button name="OK" text="确定"/>
1539 </form> 1539 </form>
1540 </notification> 1540 </notification>
1541 <notification label="更改林登地产" name="ChangeLindenEstate">
1542 你将要更改林登所有的地产(大陆、
1543少年网格、方位岛,等等)。
1544
1545 这个动作极度危险,因为它可能会在基础的层次上
1546影响到用户体验。在大陆上, 它将改变
1547上千的区域,并会使空间服务器噎着。
1548
1549是否继续?
1550 <usetemplate name="okcancelbuttons" notext="取消" yestext="更改不动产"/>
1551 </notification>
1552 <notification label="更改林登地产准入列表" name="ChangeLindenAccess">
1553 你将要更改林登所有的地产的准入列表(大陆、
1554少年网格、方位岛,等等)。
1555
1556该操作非常危险, 应该仅在利用把物体/金钱
1557转移进或出某个网格的对付活儿 (hack) 时候
1558才应该被执行。 它将改变上千的区域,并会
1559使空间服务器噎着。
1560
1561是否继续?
1562 <usetemplate name="okcancelbuttons" notext="取消" yestext="更改不动产"/>
1563 </notification>
1564 <notification label="选择地产" name="EstateAllowedAgentAdd"> 1541 <notification label="选择地产" name="EstateAllowedAgentAdd">
1565 仅列入此地产还是[ALL_ESTATES]的允许名单? 1542 仅列入此地产还是[ALL_ESTATES]的允许名单?
1566 <usetemplate canceltext="取消" name="yesnocancelbuttons" notext="所有地产" yestext="该地产"/> 1543 <usetemplate canceltext="取消" name="yesnocancelbuttons" notext="所有地产" yestext="该地产"/>
diff --git a/linden/scripts/linux/0-patch-SL-source b/linden/scripts/linux/0-patch-SL-source
new file mode 100755
index 0000000..4885d5d
--- /dev/null
+++ b/linden/scripts/linux/0-patch-SL-source
@@ -0,0 +1,31 @@
1#!/bin/bash
2
3# Check for patches to apply. The names of the patches must be in the form
4# slviewer-*.patch* (Example: slviewer-v117-EmbbededNotecard.patch.bz2).
5# They must be applicable from inside the source directory with the -p1
6# option, i.e. they have been built from outside the source directory
7# with a diff command such as:
8# diff -urN linden/ linden-patched/ >slviewer-whatever.patch
9# And they may be gzipped or bzipped.
10
11source config-SL-source
12
13PATCHES=`/bin/ls $PATH_TO_PATCHES/$1/slviewer-*.patch* 2>/dev/null`
14PATCHES="$PATCHES `/bin/ls $PATH_TO_PATCHES/$1/slviewer-*.diff* 2>/dev/null`"
15if [ "$PATCHES" != "" ] ; then
16 echo "Applying patches..."
17 cd $PATH_TO_SOURCES
18 for i in $PATCHES; do
19 echo "Patch: $i"
20 if echo $i | grep ".gz" &>/dev/null ; then
21 gunzip -c $i | patch -p1 -s
22 elif echo $i | grep ".bz2" &>/dev/null ; then
23 bzcat $i | patch -p1 -s
24 elif echo $i | grep ".zip" &>/dev/null ; then
25 unzip -o $i >/dev/null
26 else
27 patch -p1 -s <$i
28 fi
29 done
30fi
31
diff --git a/linden/scripts/linux/1-get-libraries-from-SL b/linden/scripts/linux/1-get-libraries-from-SL
new file mode 100755
index 0000000..9ba61f4
--- /dev/null
+++ b/linden/scripts/linux/1-get-libraries-from-SL
@@ -0,0 +1,71 @@
1#!/bin/bash
2
3# cmake-SL v1.31 (c)2008-2009 Henri Beauchamp. Released under GPL license v2:
4# http://www.gnu.org/licenses/gpl.txt
5
6###############################################################################
7######## THIS IS QUICK'N DIRTY ALPHA SOFTWARE. USE AT YOUR OWN RISKS ! ########
8###############################################################################
9
10###############################################################################
11# BEWARE: this script is meant to compile a -personal- SL client. It is -NOT- #
12# suitable to build client versions meant for public release, because #
13# non-open source code is packaged by this script. #
14###############################################################################
15
16# This bash script is aimed at easying up the build process of a SL client
17# with cmake.
18# You may enable or disable the use of your system's library by editing
19# the USE_SYSTEM_* variable ("yes" --> use the system library, "no" --> use
20# LL's provided ones).
21# The script also takes care of updating properly the viewer_manifest.py script
22# accordingly, so that you (should) end up with a properly packaged client.
23
24# To use this script, simply make it executable (chmod +x cmake-SL) and
25# put it into /usr/local/bin (or any other directory in your PATH).
26# Then, download the slviewer-src-*.tar.gz, slviewer-linux-libs-*.tar.gz,
27# slviewer-artwork-*.zip and fmodapi*.tar.gz archives, and finally, invoke
28# make-SL as follow:
29# cmake-SL path_to_archives (example: make-SL ~/downloads)
30# or simply:
31# cmake-SL
32# when invoking from the directory where the archives are.
33# The sources will be installed into the PATH_TO_SOURCES directory,
34# and the client will be built into the TEMP_DIR directory.
35# The packaged build will be moved to your home directory.
36#
37# If you want to retry a compilation after fixing something manually and
38# don't want cmake-SL to start all over again, overwriting everything,
39# you may invoke it with the --retry option, like this:
40# cmake-SL --retry
41#
42# Finally, if you just want to prepare the sources without starting the
43# compilation, use:
44# cmake-SL [path_to_archives] --prep
45#
46# This script has been tested by the author, on (very customized)
47# Mandriva 2007.1 and 2009.0 distros.
48# Tested with SL v1.21 and v1.22 sources.
49
50source config-SL-source
51
52
53cd $PATH_TO_SOURCES/indra
54
55# Do a clean build
56./develop.py clean
57
58# Force the vectorization use if we chose so.
59if [ "$FORCE_VECTORIZE" == "yes" ] ; then
60 TUNE_FLAGS="$TUNE_FLAGS -DLL_VECTORIZE=1"
61fi
62if [ "$ALLOW_WARNINGS" == "yes" ] ; then
63 FATAL_WARNINGS="-DGCC_DISABLE_FATAL_WARNINGS:BOOL=TRUE"
64else
65 FATAL_WARNINGS=""
66fi
67# Configure the sources and download the LL provided libraries:
68./develop.py --type=Release configure "$FATAL_WARNINGS" \
69 -DCMAKE_C_FLAGS:STRING="-O2 $TUNE_FLAGS" -DCMAKE_CXX_FLAGS:STRING="-O2 $TUNE_FLAGS" \
70 -DCMAKE_C_FLAGS_RELEASE:STRING="-O2 $TUNE_FLAGS" -DCMAKE_CXX_FLAGS_RELEASE:STRING="-O2 $TUNE_FLAGS" \
71 -DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING="-g -O2 $TUNE_FLAGS" -DCMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING="-g -O2 $TUNE_FLAGS"
diff --git a/linden/scripts/linux/2-trim-libraries-from-SL b/linden/scripts/linux/2-trim-libraries-from-SL
new file mode 100755
index 0000000..f86f0d8
--- /dev/null
+++ b/linden/scripts/linux/2-trim-libraries-from-SL
@@ -0,0 +1,247 @@
1#!/bin/bash
2
3# You may enable or disable the use of your system's library by editing
4# the USE_SYSTEM_* variable ("yes" --> use the system library, "no" --> use
5# LL's provided ones).
6# The script also takes care of updating properly the viewer_manifest.py script
7# accordingly, so that you (should) end up with a properly packaged client.
8
9source config-SL-source
10
11
12########### functions definitions ###########
13
14function check() {
15 if [ "$1" != "no" ] ; then
16 if [ -f $2 ] ; then
17 echo "Using the system $3..."
18 return 0
19 else
20 echo "WARNING: system $3 requested but not available..."
21 fi
22 fi
23 return 1
24}
25
26function update_manifest() {
27 grep -v $1 $PATH_TO_SOURCES/indra/newview/viewer_manifest.py >$TEMP_DIR/viewer_manifest.py
28 mv -f $TEMP_DIR/viewer_manifest.py $PATH_TO_SOURCES/indra/newview/viewer_manifest.py
29 chmod +x $PATH_TO_SOURCES/indra/newview/viewer_manifest.py
30}
31
32########### end of functions ###########
33
34if [ "$TEMP_DIR" == "" ] ; then
35 export TEMP_DIR="/usr/tmp/$USER"
36fi
37
38# Use the parameter (if any) as the path to the archives:
39
40PATH_TO_ARCHIVES=`pwd`
41if [ "$1" != "" ] && [ "$1" != "--prep" ] ; then
42 if [ -d $1 ] ; then
43 PATH_TO_ARCHIVES=$1
44 shift
45 fi
46fi
47
48cd $PATH_TO_SOURCES/indra
49
50
51# Force the vectorization use if we chose so.
52if [ "$FORCE_VECTORIZE" == "yes" ] ; then
53 TUNE_FLAGS="$TUNE_FLAGS -DLL_VECTORIZE=1"
54fi
55if [ "$ALLOW_WARNINGS" == "yes" ] ; then
56 FATAL_WARNINGS="-DGCC_DISABLE_FATAL_WARNINGS:BOOL=TRUE"
57else
58 FATAL_WARNINGS=""
59fi
60
61# Let's use the system GTK+ if available:
62if check $USE_SYSTEM_GTK /usr/include/atk-1.0/atk/atk.h "GTK+" ; then
63 cd $PATH_TO_SOURCES/libraries/x86_64-linux/lib_release_client
64 rm -f libgtk* libgdk* libglib* libgmodule* libgobject* libgthread* libpango* libatk*
65 cd ../include
66 rm -rf atk-1.0/ gtk-2.0/ glib-2.0/ pango-1.0/
67 cp -a /usr/include/atk-1.0 .
68 cp -a /usr/include/gtk-2.0 .
69 cp -a /usr/lib/gtk-2.0/include/* gtk-2.0/
70 cp -a /usr/include/glib-2.0 .
71 cp -a /usr/lib/glib-2.0/include/* glib-2.0/
72 cp -a /usr/include/pango-1.0 .
73 if [ -d /usr/include/cairo ] ; then
74 rm -rf cairo/
75 cp -a /usr/include/cairo .
76 cd ../lib_release_client
77 rm -f libcairo*
78 fi
79 update_manifest libatk
80 update_manifest cairo
81 update_manifest libgtk
82 update_manifest libgdk
83 update_manifest libglib
84 update_manifest libgmodule
85 update_manifest libgobject
86 update_manifest libgthread
87 update_manifest libpango
88fi
89
90# Let's use the system zlib if available:
91if check $USE_SYSTEM_ZLIB /usr/include/zlib.h "zlib" ; then
92 cd $PATH_TO_SOURCES/libraries
93 rm -rf include/zlib/
94 rm -f x86_64-linux/lib_release_client/libz.so.1
95 mkdir -p include/zlib
96 cp -a /usr/include/zlib*.h include/zlib/
97fi
98
99# Let's use the system jpeglib if available:
100if check $USE_SYSTEM_JPEGLIB /usr/include/jpeglib.h "jpeglib" ; then
101 cd $PATH_TO_SOURCES/libraries
102 rm -rf include/jpeglib/ x86_64-linux/lib_release_client/libjpeg.a
103 mkdir -p include/jpeglib
104 cp -a /usr/include/j*.h include/jpeglib/
105 touch include/jpeglib/jinclude.h
106fi
107
108# Let's use the system ogg if available:
109if check $USE_SYSTEM_OGG /usr/include/ogg/ogg.h "ogg" ; then
110 cd $PATH_TO_SOURCES/libraries
111 rm -rf include/ogg/ x86_64-linux/lib_release_client/libogg*
112fi
113
114# Let's use the system vorbis if available:
115if check $USE_SYSTEM_VORBIS /usr/include/vorbis/vorbisenc.h "vorbis" ; then
116 cd $PATH_TO_SOURCES/libraries
117 rm -rf include/vorbis/ x86_64-linux/lib_release_client/libvorbis*
118fi
119
120# Let's use the system SDL if available:
121if check $USE_SYSTEM_SDL /usr/include/SDL/SDL.h "SDL" ; then
122 cd $PATH_TO_SOURCES/libraries/x86_64-linux
123 rm -rf include/SDL/ lib_release_client/libSDL*
124 update_manifest libSDL
125fi
126
127# Let's use the system openssl if available:
128if check $USE_SYSTEM_SSL /usr/include/openssl/opensslconf.h "openssl" ; then
129 cd $PATH_TO_SOURCES/libraries/x86_64-linux/lib_release_client
130 rm -f libssl.* libcrypto.*
131 update_manifest libssl
132 update_manifest libcrypto
133fi
134
135# Let's use the system apr if available:
136if check $USE_SYSTEM_APR /usr/include/apr*/apr_base64.h "apr" ; then
137 cd $PATH_TO_SOURCES/libraries/x86_64-linux
138 rm -rf include/apr-1/*
139 rm -f lib_release_client/libapr*
140 cp -a /usr/include/apr*/* include/apr-1/
141 update_manifest libapr
142fi
143
144# Let's use the system db4 if available:
145if check $USE_SYSTEM_DB4 /usr/include/db4/db.h "db4" ; then
146 rm -f $PATH_TO_SOURCES/libraries/x86_64-linux/lib_release_client/libdb*.so
147 update_manifest libdb
148 if [ $USE_SYSTEM_DB4 != "yes" ] ; then
149 if ! grep $USE_SYSTEM_DB4 $PATH_TO_SOURCES/indra/cmake/BerkeleyDB.cmake ; then
150 # If we gave a version number instead of "yes", patch the
151 # BerkeleyDB.cmake file to use that DB4 version instead of 4.2.
152 sed -e "s/4.2/$USE_SYSTEM_DB4/" $PATH_TO_SOURCES/indra/cmake/BerkeleyDB.cmake >$TEMP_DIR/BerkeleyDB.cmake
153 mv -f $TEMP_DIR/BerkeleyDB.cmake $PATH_TO_SOURCES/indra/cmake/BerkeleyDB.cmake
154 fi
155 fi
156fi
157
158# Let's use the system expat if available:
159if check $USE_SYSTEM_EXPAT /usr/include/expat.h "expat" ; then
160 cd $PATH_TO_SOURCES/libraries
161 rm -rf include/expat/
162 rm -f x86_64-linux/lib_release_client/libexpat*
163 mkdir -p include/expat
164 cp -a /usr/include/expat*.h include/expat/
165 update_manifest libexpat
166fi
167
168# Let's use the system xmlrpc-epi if available:
169if check $USE_SYSTEM_XMLRPC /usr/include/xmlrpc.h "xmlrpc-epi" ; then
170 cd $PATH_TO_SOURCES/libraries
171 rm -rf include/xmlrpc-epi/ x86_64-linux/lib_release_client/libxmlrpc.a
172 mkdir -p include/xmlrpc-epi
173 cp -a /usr/include/xmlrpc*.h include/xmlrpc-epi/
174fi
175
176# Let's use the system c-ares if available:
177if check $USE_SYSTEM_CARES /usr/lib/libcares.a "c-ares" ; then
178 cd $PATH_TO_SOURCES/libraries
179 rm -f include/ares/*
180 rm -f x86_64-linux/lib_release_client/libcares.*
181 cp -a /usr/include/ares* include/ares/
182 cp -a /usr/lib/libcares.a x86_64-linux/lib_release_client/
183fi
184
185# Let's use the system curl if available:
186if check $USE_SYSTEM_CURL /usr/include/curl/curl.h "curl" ; then
187 cd $PATH_TO_SOURCES/libraries
188 rm -rf include/curl/
189 rm -f x86_64-linux/lib_release_client/libcurl.*
190fi
191
192# Let's use the system uuid if available:
193if check $USE_SYSTEM_UUID /lib/libuuid.so.1 "libuuid" ; then
194 rm -f $PATH_TO_SOURCES/libraries/x86_64-linux/lib_release_client/libuuid.*
195 update_manifest libuuid
196fi
197
198# Let's use the system google-perftools if available:
199if check $USE_SYSTEM_PERFTOOLS /usr/include/google/malloc_hook.h "google-perftools" ; then
200 cd $PATH_TO_SOURCES/libraries/x86_64-linux
201 rm -f lib_release_client/libtcmalloc.* lib_release_client/libstacktrace.*
202 rm -rf include/google/
203 cp -a /usr/lib/libstacktrace.* /usr/lib/libtcmalloc.so* lib_release_client/
204 cp -a /usr/include/google include/
205 update_manifest tcmalloc
206 update_manifest stacktrace
207fi
208
209# Let's use the system libELFIO if available:
210if check $USE_SYSTEM_ELFIO /usr/include/ELFIO.h "libELFIO" ; then
211 cd $PATH_TO_SOURCES/libraries/x86_64-linux
212 rm -f include/ELFIO/*
213 rm -f lib_release_client/libELFIO.*
214 cp -af /usr/include/ELF* include/ELFIO/
215 cp -af /usr/lib/libELFIO.so lib_release_client/
216 update_manifest ELFIO
217fi
218
219# Let's use the system libstdc++ if available:
220if check $USE_SYSTEM_LIBSTDC /usr/lib/libstdc++.so.6 "libstdc++" ; then
221 rm -f $PATH_TO_SOURCES/libraries/x86_64-linux/lib_release_client/libstdc++.*
222 update_manifest libstdc
223fi
224
225# Let's use the system boost if available:
226if check $USE_SYSTEM_BOOST /usr/include/boost/version.hpp "boost" ; then
227 cd $PATH_TO_SOURCES/libraries
228 rm -rf include/boost/
229 rm -f x86_64-linux/lib_release/libboost_*
230 rm -f x86_64-linux/lib_release_client/libboost_*
231fi
232
233
234# Force libkdu inclusion
235# (disabled for now (v1.21.0 viewer) as the cmake scripts fail to get libkdu from Internet).
236if false; then
237# Remove everything dealing with libstdc++ and the crash logger:
238update_manifest libstdc
239update_manifest logger
240# Now, any line with a '#' followed with several spaces _should_ be dealing
241# with the libkdu stuff... So, we simply remove the '#"...
242sed -e "s/# them/# them/" $PATH_TO_SOURCES/indra/newview/viewer_manifest.py >$TEMP_DIR/viewer_manifest.py
243sed -e "s/^# / /" $TEMP_DIR/viewer_manifest.py >$PATH_TO_SOURCES/indra/newview/viewer_manifest.py
244rm -f $TEMP_DIR/viewer_manifest.py
245chmod +x $PATH_TO_SOURCES/indra/newview/viewer_manifest.py
246fi
247
diff --git a/linden/scripts/linux/3-compile-SL-source b/linden/scripts/linux/3-compile-SL-source
new file mode 100755
index 0000000..9a898ad
--- /dev/null
+++ b/linden/scripts/linux/3-compile-SL-source
@@ -0,0 +1,100 @@
1#!/bin/bash
2
3# cmake-SL v1.31 (c)2008-2009 Henri Beauchamp. Released under GPL license v2:
4# http://www.gnu.org/licenses/gpl.txt
5
6###############################################################################
7######## THIS IS QUICK'N DIRTY ALPHA SOFTWARE. USE AT YOUR OWN RISKS ! ########
8###############################################################################
9
10###############################################################################
11# BEWARE: this script is meant to compile a -personal- SL client. It is -NOT- #
12# suitable to build client versions meant for public release, because #
13# non-open source code is packaged by this script. #
14###############################################################################
15
16# This bash script is aimed at easying up the build process of a SL client
17# with cmake.
18# You may enable or disable the use of your system's library by editing
19# the USE_SYSTEM_* variable ("yes" --> use the system library, "no" --> use
20# LL's provided ones).
21# The script also takes care of updating properly the viewer_manifest.py script
22# accordingly, so that you (should) end up with a properly packaged client.
23
24# To use this script, simply make it executable (chmod +x cmake-SL) and
25# put it into /usr/local/bin (or any other directory in your PATH).
26# Then, download the slviewer-src-*.tar.gz, slviewer-linux-libs-*.tar.gz,
27# slviewer-artwork-*.zip and fmodapi*.tar.gz archives, and finally, invoke
28# make-SL as follow:
29# cmake-SL path_to_archives (example: make-SL ~/downloads)
30# or simply:
31# cmake-SL
32# when invoking from the directory where the archives are.
33# The sources will be installed into the PATH_TO_SOURCES directory,
34# and the client will be built into the TEMP_DIR directory.
35# The packaged build will be moved to your home directory.
36#
37# If you want to retry a compilation after fixing something manually and
38# don't want cmake-SL to start all over again, overwriting everything,
39# you may invoke it with the --retry option, like this:
40# cmake-SL --retry
41#
42# Finally, if you just want to prepare the sources without starting the
43# compilation, use:
44# cmake-SL [path_to_archives] --prep
45#
46# This script has been tested by the author, on (very customized)
47# Mandriva 2007.1 and 2009.0 distros.
48# Tested with SL v1.21 and v1.22 sources.
49
50source config-SL-source
51
52########### functions definitions ###########
53
54function compile() {
55 cd $PATH_TO_SOURCES/indra
56 echo "Compiling the client into $TEMP_DIR..."
57 nice -n 19 ionice -c 3 time ./develop.py --type=Release build
58# if (($? == 0)) ; then
59# mv -f $PATH_TO_SOURCES/indra/viewer-linux-i686*/newview/SecondLife*.tar.bz2 $HOME/
60# fi
61}
62
63########### end of functions ###########
64
65if [ "$TEMP_DIR" == "" ] ; then
66 export TEMP_DIR="/usr/tmp/$USER"
67fi
68
69# Check to see if we simply want to retry a compilation:
70if [ "$1" == "--retry" ] ; then
71 compile
72 exit $?
73fi
74
75# Use the parameter (if any) as the path to the archives:
76
77PATH_TO_ARCHIVES=`pwd`
78if [ "$1" != "" ] && [ "$1" != "--prep" ] ; then
79 if [ -d $1 ] ; then
80 PATH_TO_ARCHIVES=$1
81 shift
82 fi
83fi
84
85cd $PATH_TO_SOURCES/indra
86
87# Do a clean build
88#./develop.py clean
89
90# Force the vectorization use if we chose so.
91if [ "$FORCE_VECTORIZE" == "yes" ] ; then
92 TUNE_FLAGS="$TUNE_FLAGS -DLL_VECTORIZE=1"
93fi
94if [ "$ALLOW_WARNINGS" == "yes" ] ; then
95 FATAL_WARNINGS="-DGCC_DISABLE_FATAL_WARNINGS:BOOL=TRUE"
96else
97 FATAL_WARNINGS=""
98fi
99
100compile
diff --git a/linden/scripts/linux/README.txt b/linden/scripts/linux/README.txt
new file mode 100644
index 0000000..f1e150f
--- /dev/null
+++ b/linden/scripts/linux/README.txt
@@ -0,0 +1,24 @@
1How to build a linux version.
2
3Edit config-SL-source to suit, the one that comes with the meta 7 viewer
4is the one used to build the linux release.
5
6Run the scripts in order -
7
80-patch-SL-source
91-get-libraries-from-SL
102-trim-libraries-from-SL
113-compile-SL-source
12
13The patch script should do nothing unless you have setup patches, so you
14can skip it. The get-libraries script needs a working network
15connection, it fetches pre built libraries. It also sets up the build.
16Trim-libraries removes those pre built libraries again if you configured
17things to not use them. The compile script does the actual work.
18Usually when making changes, only the compile script needs to be run
19again.
20
21
22These scripts are based on cmake-SL v1.31 (c)2008-2009 Henri Beauchamp.
23Released under GPL license v2: http://www.gnu.org/licenses/gpl.txt
24Modifications made by David Seikel.
diff --git a/linden/scripts/linux/config-SL-source b/linden/scripts/linux/config-SL-source
new file mode 100644
index 0000000..174d7d4
--- /dev/null
+++ b/linden/scripts/linux/config-SL-source
@@ -0,0 +1,63 @@
1# cmake-SL v1.31 (c)2008-2009 Henri Beauchamp. Released under GPL license v2:
2# http://www.gnu.org/licenses/gpl.txt
3
4
5# You may enable or disable the use of your system's library by editing
6# the USE_SYSTEM_* variable ("yes" --> use the system library, "no" --> use
7# LL's provided ones).
8# The script also takes care of updating properly the viewer_manifest.py script
9# accordingly, so that you (should) end up with a properly packaged client.
10
11PWD=`pwd`
12
13# Where the sources of the client will be held (defaults to "./linden"):
14PATH_TO_SOURCES="$PWD/../.."
15# Where the patches of the client are stored
16PATH_TO_PATCHES="$PWD/../../patches"
17# Where to store temporary files:
18TEMP_DIR="/tmp/SL-$USER"
19mkdir -p $TEMP_DIR
20
21USE_SYSTEM_GTK="no"
22USE_SYSTEM_SDL="no"
23USE_SYSTEM_SSL="no"
24# Beware: libdb4 makes use of libapr, libapr makes use of libexpat and
25# libxmlrc-epi makes use of libexpat... so you should keep USE_SYSTEM_APR,
26# USE_SYSTEM_DB4, USE_SYSTEM_EXPAT and USE_SYSTEM_XMLRPC in sync.
27USE_SYSTEM_APR="no"
28USE_SYSTEM_EXPAT="no"
29USE_SYSTEM_XMLRPC="no"
30# Note: you may specify a version number (example: 4.6) instead of "yes"
31# in USE_SYSTEM_DB4 (by default the cmake scripts will attempt to link
32# against DB4.2 only and would fail when set to "yes" if this is not the
33# version installed on your system.
34USE_SYSTEM_DB4="no"
35# You should keep the USE_SYSTEM_CARES setting in sync with the USE_SYSTEM_CURL
36# setting further below...
37USE_SYSTEM_CARES="no"
38# If your system libcurl does not use c-ares (non-blocking DNS calls), better
39# using LL's provided library...
40USE_SYSTEM_CURL="no"
41USE_SYSTEM_OGG="no"
42USE_SYSTEM_ZLIB="no"
43USE_SYSTEM_UUID="no"
44USE_SYSTEM_VORBIS="no"
45USE_SYSTEM_JPEGLIB="no"
46USE_SYSTEM_PERFTOOLS="no"
47USE_SYSTEM_ELFIO="no"
48# When compiling against anything newer than glibc v2.4, do use "yes" here:
49USE_SYSTEM_LIBSTDC="yes"
50# Seems that current viewers don't actually like the boost that LL uses. Probaly best to set this to "yes"
51USE_SYSTEM_BOOST="no"
52
53# You may add tune flags here, to optimize the code for your processor.
54# Example, for an Athlon XP:
55# TUNE_FLAGS="-march=athlon-xp"
56TUNE_FLAGS="-fomit-frame-pointer -frename-registers -ftree-vectorize -fweb -fexpensive-optimizations -msse -mfpmath=sse"
57# Set this to "yes" to force vectorization use in the viewer code (only for
58# processors with SSE or Altivec units, and only if you did enable them via
59# the TUNE_FLAGS.
60FORCE_VECTORIZE="yes"
61
62# When using gcc v4.3 or later, you might have to set this to yes...
63ALLOW_WARNINGS="yes"